선형 회귀란?

 | #Artifical Intelligence#Machine Learning#Linear Regression

선형 회귀를 가장 쉽게 설명할수 있는 문장은 가장 훌륭한 예측선 긋기 라고 할 수 있을 것이다.

예를 들어 어느 한 일차 방정식이 있다고 해 보자.

image01

여기서 x는 독립 변수, y는 종속 변수 라 칭한다.
이름이 헷갈린다면, y는 x가 변하는데 종속하여 변화하니 종속 변수인것이고, x는 말 그대로 독립적으로 변하기에 독립 변수인 것이다.
선형 회귀는 여기서부터 두 갈래로 나뉜다.

1. 단순 선형 회귀(Simple Linear Regression)
2. 다중 선형 회귀(Multiple Linear Regression)

말 그대로다. 결국 종속 변수가 하나이냐, 아니면 다수이냐의 차이인 것이다. 이와 관련된 코드들은 후에 다시 다루기로 하고, 일단은 선형 회귀의 정확한 정의부터 확실하게 찍고 가자.

선형 회귀란 임의의 직선을 그어 이에 대한 평균 제곱 오차를 구하고, 이 값을 가장 작게 만들어 주는 a와 b를 찾아가는 작업이다.

그렇다면 평균 제곱 오차란 무엇인가? 일단 이를 구하기 위해서는 오차의 합부터 구해야 할 것이다.

CodeCogsEqn

이 식은 오차의 합을 구하는 식으로, 이 식을 n개로 나누어 준다면 평균 제곱 오차(Mean Squared Error)가 되는 것이다. 코드로는 다음과 같다. 시그마를 돌리려면 단순히 for 루프를 통하면 될 것이다.

이렇게 평균 제곱 오차를 구했으면, 선형 회귀의 정의에 따라 이 오차를 줄이면서 새로운 선을 그어야 할 것이다. 그러기 위해 사용되는 방법은 바로 “경사 하강법”이다.
경사 하강법에 대한 내용은 다음 포스트에서 정리하도록 하겠다.