Machine Learning

머신러닝 단기집중과정 - 선형 회귀

엘호리스 2018. 7. 17. 21:58

Linear Regression(선형 회귀)


linear regression에 대한 이미지 검색결과


Linear Regression은 간단하게 데이터를 이용해 선으로 그어 예측값을 계산하는 것이다.

머신러닝을 활용하면 이 Linear Regression을 최적화 된 값으로 계산해서 선을 잘(?) 그을 수 있다.

하지만 인간은 중등교육 정도만 받더라도.... 이 그림을 보고 즉각 선을 그을 수 있다.(이 얼마나 대단한가?)

물론 머신러닝이 계산해주는 것처럼 최적화 된 선은 아닐지라도 나쁘지 않은 오차를 가진 선을 그릴수 있다.



우리가 흔히 주가 데이터 차트를 보면 일반적으로 이렇게 우상향 하는 차트가 있다고 한다면

우리는 무의식적으로 해당 주식에 관심이 가고 심리적으로 좋아보이는 주식이 되기도 한다.

(물론 예로 들은 위 해당 차트는 특정 기업의 주가 데이터는 아니고 종합주가지수이다)


이제 Linear Regression 에 대해서는 이해를 했으니

이것을 어떻게? 구하는지 알아보자. 이제 수학의 시간이다!

어려울 것 같지만 차근차근 이해만 한다면 우리는 이 공식을 외우고 있을 필요 없다.


모델 정의

다시 한번 몸무게를 통해 키를 예측하는 선형 모델을 보도록 하자.


눈치를 챈 사람들도 있겠지만 위 그림을 선형 모델이라고 부른다.

그러면 위 그림을 그리는(정확히 말하자면 저 그림을 그릴 수 있는 방정식을 정하는 행위) 것을

'모델을 정의한다' 라고 알고 있자.


위 그림에서는 나오지 않지만 모델을 정의할때 표현하는 방정식의 룰이란게 있는데

우선 위 선형 모델을 방정식으로 표현하자면


y = ax + b

여기서 x는 몸무게(Weight) y는 키(Height)이다.

그리고 a는 기울기, b는 절편을 뜻한다.


이것은 기초수학에서 표현하는 방식이고....

머신러닝에서는 이것을 표현할 때 조금 다른 방식으로 표현한다.

(왜? 라는 질문을 한다면 공부 잘하시는 형님들이 이런저러한 문제가 생길 것을 대비해서 만들어놓은 Rule이라고 생각하면 된다.)



y = b + w 1 x 1


수학 방정식이 포스팅에 제대로 올라가려나 모르겠는데....

이 부분은 올리는 방법을 조금 찾아보고 다시 수정해 재업로드 해야겠다.


어쨋든 우리는 저 수식이 복잡해 보인다고 해서 혼돈을 겪으면 안된다.

결국은 y값을 예측하기 위해 적당한 기울기 값과 적당한 절편 값을...... 우리가 계산하면....(?????)

엄청난 시간이 걸릴 것이고 정확하지 않을 가능성도 크기에 머신 러닝을 활용하는 것이다.


항상 본질을 기억하고 있으면 방향성을 잃지 않고 학습할 수 있다.