MachineLearning:Course:LinearRegression
머신러닝 대표 모델과 가장 간단한 선형 회기(Linear regression)에 대하여 설명한다.
Model Representation
ML_-Model_Representation-_genericmlatwork.png
(그가 중지를 들어올리자 훈련이 시작되더니 모델이 태어났어요) 2
대표적인 머신러닝 개념도는 위와 같다.
- Input Features: 입력 변수
- Training Data-Set: 훈련 변수
- Learning Algorithm
- Cost function: Parameter(θ) 를 구하는 방법.
모델링 이란?
- [추천] 회귀 모델에서 '회귀'란 무엇인가? 3
회귀식을 모델링할 때는 X와 Y 간의 관계에 대해 먼저 추정을 한 후 구체적인 파라미터를 추정하게 됩니다. 가령 앞부분에서 예로 든 물체의 부피와 온도에 대한 회귀식의 경우 X(온도)와 Y(부피) 사이에는 선형 관계가 있고 그 가중치가 w일 것이라는 추정을 먼저 한 것입니다. 그리고 이렇게 추정된 관계식 안에서 구체적으로 w가 무엇인지 계수에 대한 추정을 합니다.
그런데 위의 예에서 만약 실제로는 물체의 부피와 온도 사이에 아무런 관계가 없거나 혹은 온도의 제곱과 선형 관계에 있거나(부피 = w * 온도^2)아니면 온도 뿐만 아니라 습도와도 밀접하게 관련이 있다면(부피 = w1온도 + w2습도) 비록 오차의 합이 최소가 되도록 w를 추정하더라도 그 회귀식은 정확한 회귀 모델이 되지 못합니다. 따라서 이 회귀식을 이용해서 부피를 예측하면 실제 부피와 차이가 생길 수 밖에 없습니다.
한편, 만약 실제로 부피는 온도와 선형 관계에 있는 것이 맞다면 이 회귀 모델은 부피와 온도의 관계를 잘 추정한 모델이기 때문에 이 관계식을 이용해서 파라미터인 w를 추정하면 정확한 회귀식을 만들 수 있습니다. 그런데 설령 이렇게 정확한 모델을 만들더라도 앞서 언급했듯이 현실 세계에서의 여러 가지 오차(잡음)로 인해 이 모델을 이용해서 부피를 예측한 값과 실제 부피 사이에는 여전히 약간의 차이가 발생합니다.
결국 정확한 회귀 모델을 만들든 그렇지 못하든 항상 모델의 예측치와 실측치 사이에는 차이가 존재합니다. 다만 부정확한 회귀 모델로 인한 차이와 정확한 회귀 모델에서 발생하는 차이 사이에는 근본적으로 다른 성질이 있습니다. 즉, 정확한 모델을 만들었다면 잔차는 평균인 0으로 회귀하지만 부정확한 모델에서는 그렇지 못합니다. 이것이 위에서 얘기한 잔차의 성질입니다. 따라서 내가 추정한 관계식이 제대로 된 회귀 모델인지 여부를 판단할 때는 내가 만든 모델의 예측치와 실제값 사이의 잔차의 기대치(평균)가 0이고 평균으로 회귀하는지 살펴 봐야 합니다.
다시 말해, 내가 추정한 모델과 실제 데이터 사이의 오차가 단순히 현실 세계에 존재하는 잡음인지 아니면 내가 고려하지 못한 어떤 속성 때문인지를 알려면 잔차가 i.i.d. 한 속성을 갖고 있는지 확인해야 합니다. 이를 위해선 다음과 같은 조건을 모두 만족하는지 살펴 봐야 합니다.
- 잔차의 분포는 정규 분포이어야 한다.
- 잔차와 독립변수 X 사이에 상관 관계가 없고 자기 자신과도 상관이 없어야 한다(잔차는 독립이어야 한다).
- 잔차의 분포가 일정해야 한다(잔차는 등분산성을 만족해야 한다).
위 조건을 모두 만족한다면 해당 모델의 예측치와 실제 데이터 사이의 차이인 잔차는 평균으로 회귀하게 됩니다. 다시 말하면, 비록 실제 세계에서 어쩔 수 없이 존재하는 잡음으로 인해 완전히 예측치와 실측치가 일치하지는 않으며 그래서 어떤 데이터에 대해서는 그 차이가 클 수 있지만, 전체 추세로 볼 때는 잔차의 평균(대개는 0)으로 수렴합니다.
Categories
- Loss function#In the Machine learning (Cost function)
- Loss function
- Regression analysis
- 통계학 (Statistics)
Linear regression
지금 내가 가지고 있는 데이터셋이 어떤 Linear function인지 유추한다.