전체 글 244

머신러닝 - 선형회귀의 경사하강법 메모

학생 때 y = ax + b 라는 식을 자주 보곤 했다. 직선 그래프의 절편과 기울기로 x 값 y 값을 찾는 방식인데 선형회귀에도 비슷한 방식으로 사용된다 . 그러나 학생때는 x값 y값을 찾는것에 집중했다면 딥러닝에서는 데이터를 예측하기 위해서 가장 적합한 기울기와 절편을 찾는데 집중한다. 기울기를 선형회귀에서는 가중치(W) 라고 부르고 b 를 bias 라고 부른다. 그럼 한번 코드를 보면서 이해해보자. sklearn , 사이킷런이라고 부르는 파이썬으로 딥러닝을 공부할때 사용하기 유용한 데이터셋 라이브러리다. 여기서 내가 공부할때 참고한 당뇨병 환자 데이터를 가져와보겠다. from sklearn.datasets import load_diabetes diabetes = load_diabetes() prin..

AI 2021.08.29

1이 될때까지 최소 연산 횟수

n과 k 라는 자연수가 주어진다고 하면 아래 두가지 연산 중 하나씩 진행하여 n이 1이 되도록 하는데 연산 횟수를 최소화 하는 알고리즘을 작성하라. 1. n 에서 1을 빼기 2. n 에서 k를 나누기 이런 문제가 있다고 하자. 이 문제는 그리디 알고리즘의 유명한 문제다. 해설을 보기전 나의 경우는 n = 25 k = 5 count = 0 while 1 : if n%k ==0: n=n/k count+=1 else : count+=1 n= n-1 if n==1 : break print(count) 이런 식으로 풀었다. 이 방법도 틀린 방법은 아니지만 주어지는 숫자의 범위가 커지면 문제가 생길 수 있다. 그래서 사용하는 테크닉이 해설 코드에 있었다. n = 17 k = 4 count = 0 while 1 : ..

알고리즘 2021.08.21

Drawable Shape 코드로 색상 동적 변경

Drawable Shape를 배경 등.. 으로 사용할때 색상을 동적으로 변경하는 방법 입니다. TextView의 배경을 둥글게 하기 위해서 shape로 배경을 깔아주고 배경 색상은 아래와 같이 지정 해줍니다. GradientDrawable bgShape = (GradientDrawable) textView.getBackground(); bgShape.setColor(getResources().getColor(R.color.colorPrimary)); 코틀린에서는 var bgShape : GradientDrawable = get_auth_text_bt.background as GradientDrawable bgShape.setColor(resources.getColor(black)) 이렇게 사용합니다.

Android 2021.07.31

안드로이드 Dialog 만들기 (kotiln)

앱을 만들다보면 DIalog를 만들때다 종종 있다. 그럴때 어떻게 해야하는지 코드로 알아보자. 아래는 실제 Dialog 코드다. class MyDialog(context: Context, layoutId: Int) : Dialog(context) { var detector: GestureDetector? = null // 다이얼로그가 나와있을때 손가락 제스쳐에 따른 행동을 구현하기 위함 protected var mContext: Context private val iv: ImageView private val text: String companion object { private const val SWIPE_MIN_DISTANCE = 120 // 제스쳐에 사용될 상수 private const val SW..

Android 2021.07.30

Nest.js 시작하기

Java 로 백엔드를 만들어본 사람이라면 spring나 spring-boot 의 존재에 대해서 많이들 알거라고 생각한다. node.js 에도 express 라는 멋진것이 존재하지만 spring-boot 만큼의 편리함은 사실 없다고 느꼈다. 백엔드를 주로 하는것도 아니니까 그냥 그렇게만 생각하고 있던 찰나 우연하게 nest.js 라는것을 알게 됐고 눈에 들어온 문구가 있었다. "Java에 spring 이 있다면 node.js 에는 nest.js가 있다." 예전에 spring 으로 앱 서버를 만들어봤지만 확실히 spring 은 이것저것 설정해줄거나 건드려줄게 많았는데 보다 간편한 node에 그런 프레임워크가 있다니? 라는 생각으로 찾아보며 공부해봤다. 생각했던거 이상으로 spring 을 사용해본 사람이라면 ..

오랜만의 블로그

간만에 블로그 글을 쓴다. 한때는 1일 1포스팅을 꿈꿨지만 쉽지는 않은거 같다 ㅋㅋ.. 개인 개발은 꾸준히 하고 있다. 이번에도 어김없이 MVVM + RXjava 를 중점으로 개발하고 있다. MVVM은 이제 거의 익숙해진거 같다. RX는 최근에 좀 제대로 이해하기 시작했는데 솔직히 기능이 너무 많아서 이걸 다 적용할 일이 있을까? 싶긴하다. 물론 몇몇 기능은 매우 유용한듯? 아마 다음 포스팅은 새로한 프로젝트에 대해 간단하게 연재하는 글이 될거 같다.

잡담 2021.07.10