본문 바로가기
머신러닝/확률모델

선형회귀 (Linear Regression)에 대한 여러 접근법

by CHML 2023. 12. 9.
1. 선형회귀 (Linear Regression)

선형회귀는 입력 xRd×1와 출력 yR를 식 (1)과 같은 선형 관계로 모델링하기 위한 회귀분석이다.

(1)y=w1x1+...wdxd+b=wTx+b

위의 식에서 wRd×1bR는 선형회귀 모델의 매개변수이다.

그림 1. 주어진 데이터에 대한 선형회귀 모델

N개의 데이터를 포함하는 데이터셋 D={(x(1),y(1)),...,(x(N),y(N))}에 대해 선형회귀 모델은 그림 1과 같이 각 데이터에 대한 오차 (error)를 최소화하도록 학습된다. 모델 학습에서 평균 제곱 오차 (Mean squared error, MSE)를 손실 함수 (loss function)로 이용할 경우 선형회귀 모델의 학습은 아래의 식 (2)로 정의된다.

(2)θ=argminθ1Ni=1N(wTx(i)+by(i))2

식 (2)에서 θ={w,b}는 선형회귀 모델의 매개변수이다. 머신러닝에서는 일반적으로 모델의 최적 매개변수를 경사하강법 (gradient descent method)으로 찾지만, 선형회귀 모델은 특수한 경우로써 최적 매개변수를 찾기 위한 analytic solution이 존재한다. [link]

 

2. 최대 우도 추정 (Maximum Likelihood Estimation, MLE) 기반의 선형회귀 모델 학습

최대 우도 추정은 이전글에서 설명한 바와 같이 likelihood p(D|θ)를 최대화하여 최적 매개변수 θ를 찾는 방법이다. MLE의 관점에서 선형회귀를 서술하기 위해 먼저 선형회귀 모델의 출력 변수 y를 식 (3)과 같은 확률변수로 정의한다. 

(3)y(i)=wTx(i)+b+ϵ(i)

위의 식에서 i번째 예측에 대한 오차 ϵ(i)는 정규 분포 N(0,σ2)를 따른다고 가정하며, σ>0는 어떠한 상수 또는 학습 가능한 매개변수로 설정될 수 있다. 추가적으로 출력 변수 y독립항등분포 확률변수 (i.i.d. random variable)라고 가정하면, 선형회귀 모델의 MLE 기반 학습은 아래의 식 (4)와 같이 서술된다.

θ,σ=argmaxθ,σlogp(D|θ)=argmaxθ,σlogi=1Np(y(i)|x(i);θ)=argmaxθ,σi=1Nlogp(y(i)|x(i);θ)=argmaxθ,σi=1NlogN(y(n)|wTx(i)+b,σ2)=argmaxθ,σi=1N{12log(2π)logσ(wTx(i)+by(i))22σ2}=argmaxθ,σNlogσ12σ2i=1N(wTx(i)+by(i))2(4)=argminθ,σNlogσ+12σ2i=1N(wTx(i)+by(i))2

만약 σ를 어떠한 상수로 가정하면 σ는 최적화 과정의 변수가 아니게 되며, 아래의 식 (5)를 얻는다.

(5)θ=argminθ1Ni=1N(wTx(i)+by(i))2

따라서, 식 (2)의 평균 제곱 오차 기반 선형회귀 모델의 학습은 오차 ϵ의 평균이 0이고 표준편차가 어떠한 상수로 가정했을 때의 MLE와 같다.

 

3. 베이지안 선형회귀 (Bayesian Linear Regression)

MLE를 기반으로 하는 식 (2)와 (4)의 매개변수 최적화는 매개변수의 분포를 단순한 균등분포 (uniform distribution)로 가정한 것과 같다.[link] 이 항목에서는 단순한 균등분포를 넘어 모델 매개변수에 대해 우리의 사전지식을 적용할 수 있는 베이지안 선형회귀에 대해 서술한다.

베이지안 선형회귀에서도 아래의 식 (6)과 같이 예측에 대한 오차를 포함하여 입력과 출력의 선형 관계를 가정한다. 아래의 식에서 ϵ(i)N(0,σ2)i번째 데이터에 대한 예측 오차이다.

(6)y(i)=wTx(i)+b+ϵ(i)

베이지안 선형회귀에서는 모델 매개변수가 어떠한 상수일 것이라는 가정의 MLE가 아니라, 모델 매개변수의 분포를 가정하는 MAP (maximum a posteriori)를 바탕으로 모델 매개변수 θ를 최적화한다. MLE와 MAP의 자세한 차이점은 이전글에서 설명했다. MAP에서는 아래의 식 (7)과 같이 사후 확률 (posterior probability) p(θ|D)를 최대화함으로써 모델 매개변수 θ를 최적화한다.

(7)θ=argmaxθp(θ|D)

베이즈 정리에 의해 식 (7)의 목적 함수는 아래와 같이 가능도 (likelihood) p(D|θ)와 사전 확률 (prior probability) p(θ)로 나누어진다.

θ=argmaxθp(θ|D)=argmaxθp(D|θ)p(θ)p(D)=argmaxθp(D|θ)p(θ)(8)=argmaxθlogp(D|θ)+logp(θ)

식 (4)의 MLE 기반 방법론에서는 사전 확률 p(θ)를 상수로 가정하고, 가능도에 해당하는 p(D|θ)만을 고려하여 매개변수를 최적화했었다. 그러나 베이지안 선형회귀에서는 사전 확률 p(θ)까지 고려하여 매개변수를 최적화한다. 일반적으로 MAP에서 매개변수에 대한 사전 확률 p(θ)는 데이터 또는 직관에 의해 설정되며, p(θ)의 설정은 학습된 모델의 예측 정확도에 영향을 줄 수 있다.

 

3-1. 사전 확률을 정규 분포로 가정한 경우

사전 확률 p(θ)를 정규 분포 N(μ,S)로 정의할 수 있으며, 머신러닝에서는 일반적으로 p(θ)N(0,I)로 가정한다. 사전 확률에 대한 이러한 가정에서 선형회귀 모델의 매개변수는 아래와 같이 계산된다.

θ,σ=argmaxθ,σlogp(D|θ)+logp(θ)(9)=argminθ12σ2i=1N(wTx(i)+by(i))2+12||θ||22

따라서, 사전 확률을 p(θ)=N(θ|0,I)로 가정한 경우에는 평균 제곱 오차와 모델 매개변수의 크기를 동시에 줄이도록 모델이 학습된다. 이는 모델 매개변수에 L2 제약을 주는 ridge regression과 같다.

 

3-2. 사전 확률을 라플라스 분포로 가정한 경우

사전 확률을 정규 분포가 아니라 라플라스 분포 Laplace(0,I)로 가정한 경우에는 아래의 식 (10)과 같이 모델 매개변수가 계산된다.

(10)θ,σ=argminθ,σ12σ2i=1N(wTx(i)+by(i))2+12||θ||

식 (10)에 의해 만들어지는 모델은 L1 제약이 추가된 선형회귀 모델인 LASSO와 같다.

이 글에서는 베이지안 선형회귀가 매개변수의 크기에 대한 제약이 추가된 선형회귀임을 보였다. 다음글에서는 매개변수의 크기에 대한 제약이 왜 모델의 예측 정확도 향상에 도움이 되는지를 이론적으로 설명할 것이다.