먼저 $R^2$와 adjusted $R^2$ 에 대해 간단히 설명해보겠습니다. 


상황파악을 위해서 아래 이미지를 가져왔는데요. 출처의 내용과는 다르게 일단 상황을 이렇게 생각해봐요. 


점들이 관측치, 그러니까 temperatrue와 Revenue에 관한 데이터고요. Revenue(수익)라는 response variable 그러니까 관측치가 있고요. explanatory variable은 온도라고 둡시다. 온도가 올라갈수록 revenue 도 올라가는군요. 


이미지 출처: http://docs.statwing.com/interpreting-residual-plots-to-improve-your-regression/ 




이 데이터를 잘 설명할 수 있는 모델, 즉 linear line, 또는 regression equation을 만들었습니다. 그렇다면 이 모델이 얼마나 데이터를 잘 설명할 수 있는지 알아봐야할텐데요그게 $R^2$ 값 입니다. 즉 한마디로 $R^2$는 explanatory variable (변수)와 response variable 의 linear relationship을 나타내는 값이라고도 할 수 있어요.  


$R^2$ = 1 - SSE/SSTO 인데요. 이때 SSTO = SSE + SSR 입니다. revenue값을 예측하기 위해 다른 변수들을 더 넣어보려고 합니다. 온도도 알아보고, 습도도 알아보고 변수들을 계속 추가한다고 했을때 SSR의 값은 증가할까요? 아니면 감소할까요? 대답이 힘들면 SSTO, SSE, SSR에 대해 리뷰하는게 필요하겠네요. 


SSR값은 증가합니다. 간략히 설명하면 SSTO는 고정된 값이라서 변수(explanatory variable)이 추가할수록 SSE는 줄어들게되고 SSR은 증가하게 됩니다. 


그렇다면 adjusted $R^2$에 대해 살펴보죠. 왜 adjusted가 나왔냐면!! 당연히 변수가 많아질수록 모델이 데이터값을 잘 설명하게 되어요. 하지만 우리는 변수 많은 모델을 원하는게 아니예요. 왜냐하면 나중에 데이터를 수집할때 그 많은 변수의 데이터를 취득하는것도 어렵고 비용문제도 그렇고요. 그래서 간단 (즉, 변수가 많지 않으면서도) 하면서도 데이터를 잘 설명할 수 있는 모델이 필요한거죠. 변수가 많아지만 이 모델이 데이터를 잘 설명하겠지만 우리가 원하는 방향은 아니기에 penalize를 한다고 해요. penalize가 벌칙을 과하다란 영어뜻인데요. adjusted $R^2$은 다음과 같아요. 


$R^2_{adj} = 1 - \left [ \frac{ (1-R^2)(n-1)}{n-k-1} \right ]$ 


이때 n은 총 데이터의 갯수고요. k는 변수의 갯수입니다. 

저 위의 식을 뚫어져라 쳐다보면서 n이 늘어난다고 생각해봐요. 그 말은 데이터 포인트가 늘어나게 되는겁니다. 데이터가 많으면 많을수록 [ ] 안에 수는 점점 0 으로 다가가겠죠. 그래서 adj $R^2$ 값은 1로 가까워 지겠네요. 


n의 갯수와 k의 갯수가 고정되어있다고 생각해보면, adjusted $R^2$ 값은 항상 $R^2$값과 같거나 작은 수를 갖게 됩니다. 

반응형

+ Recent posts