머신러닝-딥러닝/머신러닝 이론

선형회귀(Linear Regression)의 원리

i070505 2022. 9. 17. 14:08

Linear Regression(선형회귀)의 원리

 

Linear Regression을 한마디로 애기하자면 "데이터를 가장 잘 대변하는 직선의 방정식을 찾는것"이라고 요약할수있습다.

위의 그림에서 무작위로 분포되어있는 파란색의 점들은 데이터를 나타냅니다. "이 데이터의 전체를 가장잘 대변하도록 직선을 긋는다면 직선은 어떤 모습이 될까"가 Linear Regression의 핵심입니다.

 

직선의 방정식은 y = ax +b 이렇게 표현할수있습니다.

여기서 a는 위 빨간선의 기울기라 할수있고 by절편이 됩니다.

즉 선형회귀(Linear Regression)는 데이터를 가장 잘 대변해줄수있는 직선 방정식(y = ax +b )의  a(기울기) 와 b(y절편)을 구하는 것이라고 말할수있습니다.


이번엔 선형회귀(Linear Regression)를 잘 표현하는 사례를 살펴보겠습니다.

x (hours) = 공부한 시간

y (score) = 시험에서 받은 점수일반적으로 공부한 시간이 길수록 점수가 높게 나오겠지요?어떤 값들이 선형적인 증가 혹은 감소관계에 있을때 이 관계를 해석하는것이 바로 회귀(Regression)입니다.


설명을 위해 더 간단한 데이터를 준비했습니다.

입력(x)이 (1,2,3)일때 출력(y)이 (1,2,3)입니다.

위 데이터를 그래프로 나타낸다면 이처럼 됩니다.


뜬금없는 말이지만 이제부터 기울기a를  W로 표현하겠습니다.

aW의 의미는 같습니다.(기울기)


H(x) = Wx + b는 데이터를 가장 잘 대변하는 직선의 방적식입니다.

H(x) = Wx + b라는 최적의 직선의 방정식을 찾기위해서는 비용(cost)이라는 것을 알아야합니다.

비용(cost)은 우리의 가설과 실제 데이터의 차이입니다.

위의 그림에서 보이는 빨간색 선들이 바로 비용(cost)입니다.

비용(cost)를 식으로 표현하면 H(x) - y입니다.

비용(cost)의 값

의 총합이 작을수록 데이터를 잘 대변한다 말할수있습니다.


그럼 비용(cost)cost, loss, Error라고도 합니다.

우리가 할려고 하는거는 H(x) - y를 최소화 하는 방법에 대한 것입니다.

 

하지만 우리의 가설에서 y값을 뺀 값이 음수가 된다면 문제가 발생합니다.

그래서 저희는 H(x) - y값을 제곱해서 사용할겁니다.

그럼 아래의 그림처럼 비용(cost)값을 나타낼수있습니다.

3을 나눈 이유는 데이터의 값이 3개이기 때문입니다.

 

좀 더 간단한 수식으로 나타내자면 아래의 수식처럼 됩니다.

Wxi = 우리의 가설

yi = 실제 값

m = 데이터의 개수

끝~~