이번 포스팅에 대해서는 다중 선형 회귀에 대해 알아보겠다. 먼저 선형 회귀에 대해 간단하게 알아보자.

선형회귀

앞선 포스팅에서 가설함수와 모델에 대해서 배웠었다. 모델은 쉽게 말하면 데이터의 구조에 대한 가정이라고 말했다.

선형 회귀도 모델의 일종인데, 모델이 하나의 선(line), 선형인 경우를 말한다. $ax+b$와 같은 일차함수가 대표적인 선형 회귀 모델이다.

 

다중 선형회귀

이때 $ax+b$는 독립변수가 1개이고, 종속변수도 1개인 단변량 단일 선형 회귀이다.

독립변수가 $x_1$, $x_2$ 등 2개 이상인 경우를 다중 선형 회귀라고 한다.

 

종속변수 1개, 독립변수 1개, => 단변량 단일 선형 회귀

종속변수 2개 이상, 독립변수 1개 => 다변량 단일 선형 회귀

종속변수 1개, 독립변수 2개 이상 => 단변량 다중 선형 회귀

종속변수, 독립변수가 모두 2개 이상 => 다변량 다중 선형 회귀

 

다중 선형회귀의 가설함수

단변량 다중 선형 회귀의 가설함수는 다음과 같이 벡터를 사용하여 표현할 수 있을 것이다.

 

다중 선형회귀의 비용함수

따라서 단변량 다중 선형 회귀의 비용함수는 다음과 같이 표현할 수 있다.

 

다중 선형회귀에서 경사하강법

앞서 경사하강법을 공부할 때 살펴본 단변량 단일 선형 회귀의 경우 경사하강법은 다음과 같이 적용했다.

 

단변량 단일 선형 회귀에서 경사하강법

 

각각의 파라미터는 다음의 과정을 거쳐 갱신되었다.

1. 비용함수를 각 파라미터 $\theta_0$, $\theta_1$ 에 대하여 편미분한다.

2. 각 계산된 미분계수와 learning rateα를 곱한 값을 $\theta_0$, $\theta_1$에서 빼준다.

3. 뺄셈한 결과값을 다시 $\theta_0$, $\theta_1$에 대입한다.

$\theta_0$, $\theta_1$의 경사하강법 공식은 언뜻보면 달라보이지만, 사실은 같은 모양이다. 아래의 그림을 참조하자.

 

$$
\theta_j := \theta_j - \alpha\cfrac{1}{2m}\sum_{i=1}^m(h_\theta(x^{(i)}) - y^{(i)}) x_j^{(i)}
$$

위의 $\theta_j$에 대하여 일반화한 공식을 그대로 적용한 것임을 알 수 있다. $\theta_0$의 경우 $x_0^{(1)}$을 곱하고 있는데, $x_0^{(1)}$이 벡터화 계산에서 $\theta_0$에 1을 곱해주려고 임의로 만들어낸 값이어서 생략되어 위의 형태를 띠게 된 것이다.

 

결론적으로 다중 선형회귀에서 경사하강법은 j=0부터 n까지에 대하여 경사하강법의 일반화 공식을 동시에 수행하는 것으로 정리될 수 있다. 

 

 

+ Recent posts