위키북스의 파이썬 머신러닝 완벽 가이드 책을 토대로 공부한 내용입니다.
단순 선형 회귀는 독립 변수도 하나, 종속 변수도 하나인 선형 회귀이다. 예를 들어, 주택 가격이 주택 크기로만 결정되고, 주택 크기가 크면 가격이 높아지는 경향이 있다고 가정하면 주택 가격은 주택 크기에 대해 선형의 관계로 표현할 수 있다. X축이 주택의 크기, Y축이 주택의 가격인 2차원 평면상에 데이터 sample을 나타낼 수 있고, 예측값 로 계산할 수 있다. 독립 변수가 1개인 단순 선형 회귀에서는 이 기울기 과 절편 을 회귀 계수로 지칭한다. 그리고 회귀 모델을 1차 함수로 모델링 했다면 실제 주택 가격은 1차 함수 값에서 실제 값만큼의 오류 값을 빼거나 더한 값으로 가 된다.
이렇게 예측 값과 실제 값의 차이를 남은 오류, 잔차라고 부른다. 최적의 회귀 모델을 만든다는 것은 전체 데이터의 잔차 합이 최소가 되는 모델을 만든다는 의미이면서, 동시에 잔차 합이 최소가 될 수 있도록 만드는 최적의 회귀 계수를 찾는다는 의미도 있다. 오류 값은 +나 -가 될 수 있어서 단순히 더하면 오류 합이 크게 줄어들 수 있다. 따라서 보통 오류 합을 계산할 때는 절댓값을 취해서 더하는 Mean Absolute Error를 사용하거나, 오류 값의 제곱을 구해서 더하는 방식인 Residual Sum of Square(RSS)를 사용한다. 일반적으로 미분 계산을 편하게 하기 위해 RSS 방식으로 오류 합을 구한다. RSS는 회귀 계수를 변수로하는 식으로 표현할 수 있으며, RSS를 최소로 하는 회귀 계수를 학습을 통해 찾는 것이 머신러닝 기반 회귀의 핵심 사항이다. 일반적으로 RSS는 학습 데이터의 건수로 나누어서 정규화된 식으로 표현된다.
회귀에서 이 RSS는 비용(Cost), 비용 함수, 손실 함수(loss function)라고 한다. 머신러닝 회귀 알고리즘은 데이터를 계속 학습하면서 이 비용 함수가 반환하는 값을 지속해서 감소시키고 최종적으로는 더 이상 갑소하지 않는 최소의 오류 값을 구하는 것이다.