본문 바로가기

Theory/Statistics

Regression - R-square

반응형

Fitting 한 회귀 모델이 데이터에 얼마나 잘 맞는지 정량적으로 어떻게 판단할 수 있을까요? $R^2$, 결정계수는 회귀모형의 설명력을 측정하는 데 사용하는 대표적인 회귀모델 성능측정 지표입니다.

위와 같이 4개의 표본이 있고 $b_0+b_1 X$ 회귀직선을 그렸습니다 우상단의 한 점을 봤을 때 해당 $Y_i$는 평균 $\bar{Y}$로부터 $Y_i-\bar{Y}$ 만큼 떨어져 있고 이 값은 회귀직선으로부터 $\hat{Y}_i-\bar{Y}$ 만큼 설명되고 $Y_i-\hat{Y}_i$ 부분이 설명이 되지 않습니다. 즉, 다음과 같이 $Y_i-\bar{Y}$ 를 풀어쓸 수 있고 

$Y_i-\bar{Y}$ $=$ $(\hat{Y}-\bar{Y}) + (Y_i-\hat{Y}_i)$ $=$ $(\hat{Y}_i)+e_i$

$e_i$ 를 잔차라고 합니다. 이를 모든 점에 대해 제곱해서 합치면 (차이는 양/음 이므로 단순히 더한다면 0이 될 수 있어 제곱해서 양수를 만들어 더합니다), 다음과 같이 표현할 수 있습니다.

$\sum (Y_i-\bar{Y})^2 = \sum (\hat{Y}_i-\bar{Y})^2 + \sum e_i^2$

Total Sum of Sqaures (SST) = Regression Sum of Squares (SSR) + Error Sum of Squares (SSE)

위 수시으로부터 $R^2$는 다음과 같이 정의됩니다.

$R^2 = \frac{SSR}{SST} = 1 - \frac{SSE}{SST}$

$R^2$ 가 클수록 회귀모델의 설명력이 높다고 할 수 있으며 최대값이 1인 것을 알 수 있습니다. 수식으로부터 알 수 있듯이 SSE가 작고 SSR이 클수록 모델이 데이터를 잘 fitting 했다고 볼 수 있습니다.

Adjusted R-square

그렇다면 $R^2$ 만으로 회귀 모델을 잘 설명할 수 있을까요? $R^2$의 가장 큰 문제점은 독립변수가 2개 이상인 다중회귀 분석에서 새롭게 추가된 변수가 전혀 도움이 되지 않는 변수라도 변수를 추가하기만 하면 $R^2$가 거의 무조건 증가하게 된다는 점입니다.

예를 들어 다음과 같이 두 개의 모델이 있다고 가정해 보겠습니다. 

$M1: Y=\beta_0 + \beta_1 X_1 + \epsilon$

$M2: Y = \beta_0 + \beta_1 X_1 + \beta_2 X_2 + \epsilon$

이러한 상황에서 모델 $M1$은 모델 $M2$의 특별한 케이스이므로 $M1$의 SSE (Residual Sum of Square, RSS) 가 $M2$의 SSE보다 작을 수 없습니다. 대신 $M2$는 $M1$에 비해 변수를 하나 더 가지고 있으니 SSE 관점에서는 어떻게든 조금은 줄게 되어 $M2$의 $R^2$가 $M1$보다 높을 수밖에 없습니다. 즉, $R^2$는 모델의 fitting 력만 확인하지 모델의 복잡도는 고려하지 않는다는 것이죠.

이를 개선하기 위해 기존 $R^2$는 변화량의 총합의 비중으로 나타냈다면 adjusted $R^2$는 변화량의 평균 (분산) 으로 모델의 설명력을 다음과 같이 나타냅니다.

$adj R^2 = 1 - \frac{SSE/(n-k-1)}{SST/(n-1)}$

$n, k$는 각각 데이터, 변수의 수로 다른 값들이 고정되었을 때 $k$가 클수록 결정계수가 작아지게 됩니다. 즉, 변수가 추가됨에 따른 모델의 복잡도를 penalize하여 $R^2$를 조정하는 것이죠. 

반응형