결정계수와 수정 결정계수¶
회귀모형을 적합하고 나면 자연스럽게 던지는 첫 질문은 이것이다. 이 모형은 반응변수의 변동을 실제로 얼마나 설명하는가? \(Y\)의 변동을 거의 다 포착하는 모형이 아주 조금만 설명하는 모형보다 쓸모 있다. 결정계수 \(R^2\)는 모형의 잔차 변동을 자료의 전체 변동과 비교하여 이 질문에 하나의 수치로 답한다.
1. 변동의 분해¶
회귀모형이 자료에 얼마나 잘 맞는지 재기 위해 반응변수 \(Y\)의 전체 변동을 두 성분으로 분해한다.
총제곱합(SST)은 \(Y\)가 평균 주위에서 갖는 전체 변동을 잰다.
회귀제곱합(SSR)은 모형이 설명하는 변동을 잰다.
잔차제곱합(SSE)은 설명되지 않고 남은 변동을 잰다.
모형에 절편이 포함되어 있으면 이 세 양은 다음의 기본 항등식을 만족한다.
이 분해에 절편이 필요한 이유
항등식 \(\text{SST} = \text{SSR} + \text{SSE}\)는 교차항 \(\sum (y_i - \hat{y}_i)(\hat{y}_i - \bar{y})\)이 0이 되는 데 의존한다. 이는 정규방정식에서 따라 나오는데, 모형에 절편이 있으면 \(\sum e_i = 0\)과 \(\sum e_i \hat{y}_i = 0\)이 보장된다. 절편이 없으면 이 직교성 조건이 깨질 수 있고 분해도 더 이상 성립하지 않는다.
2. 결정계수¶
결정계수 \(R^2\)는 회귀모형이 설명하는 \(Y\)의 전체 변동의 비율이다.
\(\text{SSR} = \text{SST} - \text{SSE}\)이고 모든 제곱합이 음이 아니므로, 절편이 있는 모형에서 \(R^2\)는 0과 1 사이의 값을 갖는다.
- \(R^2 = 0\): 모형이 변동을 전혀 설명하지 못한다(모든 관측값의 적합값이 \(\bar{y}\)와 같다).
- \(R^2 = 1\): 모형이 변동을 전부 설명한다(모든 관측값이 적합선 위에 정확히 놓인다).
상관과의 관계¶
설명변수가 하나인 단순선형회귀에서 \(R^2\)는 \(X\)와 \(Y\)의 Pearson 상관계수의 제곱과 같다.
다중회귀에서 \(R^2\)는 관측값 \(y_i\)와 적합값 \(\hat{y}_i\)의 상관의 제곱과 같다.
3. 결정계수의 한계¶
\(R^2\)는 널리 쓰이지만 모형 비교에는 결정적인 결함이 있다. 설명변수를 추가하면 결코 줄어들지 않는다. 그 설명변수가 \(Y\)와 아무 관계가 없어도 그렇다.
이유를 보자. 모형 2가 모형 1의 모든 설명변수에 변수 하나를 더한 내포된 두 모형을 생각하자. 최소제곱은 SSE를 최소화하므로 모형 2의 SSE는 모형 1의 SSE보다 크지 않다(새 계수를 언제나 0으로 둘 수 있다). SST는 변하지 않으므로 모형 2의 \(R^2\)는 모형 1보다 작지 않다.
곧 설명변수가 \(p\)개인 모형은 그보다 적은 모형보다 \(R^2\)가 항상 크거나 같으며, 추가된 설명변수가 쓸모 있든 없든 마찬가지이다. 극단적으로 모수가 \(n\)개(관측값마다 하나)인 모형은 자료를 완벽하게 보간하여 \(R^2 = 1\)을 달성하지만 예측 가치는 전혀 없다.
4. 수정 결정계수¶
설명변수 추가에 따라 \(R^2\)가 자동으로 부풀려지는 것을 바로잡기 위해 수정 결정계수를 쓴다. 모수의 개수를 반영하여 모형의 복잡도에 벌점을 준다.
여기서 \(n\)은 관측값의 개수이고 \(p\)는 (절편을 제외한) 설명변수의 개수이다.
비 \(\text{SSE} / (n - p - 1)\)은 오차분산 \(\sigma^2\)의 불편추정값이고 \(\text{SST} / (n - 1)\)은 \(Y\)의 표본분산이다. 따라서 수정 \(R^2\)는 제곱합 자체가 아니라 분산 추정값들을 비교한다.
결정계수와의 관계¶
수정 \(R^2\)는 \(R^2\)로 직접 표현할 수 있다.
\(p \geq 1\)이면 언제나 \(\dfrac{n - 1}{n - p - 1} > 1\)이므로 \(R^2_{\text{adj}} \leq R^2\)이다. \(n\)에 비해 \(p\)가 커질수록 \(R^2\)와 \(R^2_{\text{adj}}\)의 격차가 벌어진다.
주요 성질¶
- 쓸모없는 설명변수를 넣으면 줄어들 수 있다. \(p\)가 커지는 벌점이 SSE의 작은 감소를 웃돌 수 있기 때문이다.
- 모형이 절편만 있는 모형보다도 나쁘게 적합하면(곧 \(\text{SSE}/(n - p - 1)\)이 \(\text{SST}/(n - 1)\)을 넘으면) 음수가 될 수 있다.
- \(p = 0\)(절편만 있는 모형)이면 벌점 인자가 \(\frac{n-1}{n-1} = 1\)이 되어 \(R^2\)와 같아진다.

앞 절의 주장을 실험으로 확인해 보자. 훈련자료 \(n = 50\)개를 \(y = 1 + 2x + \varepsilon\)(\(\varepsilon \sim N(0,1)\))로 만들고, 같은 규칙으로 검정자료 50개를 따로 준비했다. 그다음 \(y\)와 아무 관계도 없는 순수한 잡음 변수를 하나씩 모형에 집어넣으며 세 가지 수를 잰다. 왼쪽 그림의 파란 선이 훈련 \(R^2\), 초록 선이 수정 \(R^2\), 붉은 선이 검정자료에서 계산한 \(R^2\)다.
파란 선은 한 번도 내려가지 않는다. 진짜 설명변수 하나뿐일 때 \(0.768\)이던 것이 잡음 40개를 더한 \(p = 41\)에서 \(0.954\)가 되고, \(p = 49 = n - 1\)에 이르면 정확히 \(1.000\)이 된다. 모수 개수가 관측 개수와 같아져 자료를 완전히 보간한 것이다. 오른쪽 그림이 그 \(p = 49\) 모형의 정체다. 훈련점 50개는 대각선 위에 한 치의 오차도 없이 얹혀 있지만, 검정점은 사방으로 흩어져 절반 가까이(50개 중 22개) 화면 밖으로 날아간다. 훈련 \(R^2 = 1.000\)짜리 모형의 검정 \(R^2\)는 \(-303.8\)이다. 검정자료의 평균값을 그냥 찍는 것보다 300배 나쁘다.
초록 선과 붉은 선이 이 부풀림을 잡아 준다. 수정 \(R^2\)는 \(p = 1\)에서 \(0.763\)으로 훈련값과 거의 같다가 잡음이 쌓일수록 벌어져 \(p = 41\)에서 \(0.721\)까지 내려간다. 자유도 벌점 \(\frac{n-1}{n-p-1}\)이 \(p\)가 커질수록 가팔라지기 때문이다. 검정 \(R^2\)는 더 정직해서 \(0.708\)에서 출발해 \(p \approx 37\) 부근에서 0을 뚫고 내려간다. 훈련 \(R^2\)만 보면 모형이 계속 좋아지는 것처럼 보이지만, 같은 순간에 실제 예측 성능은 무너지고 있었다. 그래서 \(R^2\)는 자료를 얼마나 잘 따라 그렸는지를 말할 뿐 모형이 얼마나 쓸모 있는지를 말하지 않으며, 설명변수 개수가 다른 모형을 \(R^2\)로 줄 세우는 일은 언제나 틀린다.
5. 실무에서 결정계수 해석하기¶
"좋은" \(R^2\)가 무엇인지에 대한 보편적 기준은 없다. 받아들일 만한 범위는 분야와 자료의 성격에 크게 의존한다.
| 맥락 | 전형적인 \(R^2\) 범위 |
|---|---|
| 물리과학(통제된 실험) | 0.90 – 0.99 |
| 공학 모형 | 0.70 – 0.95 |
| 사회과학 | 0.30 – 0.70 |
| 금융 수익률(일간) | 0.01 – 0.10 |
결정계수는 모형 가정을 검증해 주지 않는다
\(R^2\)가 크다고 모형이 올바르게 설정되었다는 뜻은 아니다. 선형성, 독립성, 등분산성 가정을 위배하면서도 큰 \(R^2\)를 얻을 수 있다. 모형의 적절성을 확인하려면 항상 \(R^2\)에 잔차 진단을 곁들여야 한다.
6. 수치 보기¶
관측값 \(n = 5\)개인 자료를 생각하자.
| \(i\) | \(x_i\) | \(y_i\) |
|---|---|---|
| 1 | 1 | 2 |
| 2 | 2 | 4 |
| 3 | 3 | 5 |
| 4 | 4 | 8 |
| 5 | 5 | 11 |
\(\bar{x} = 3\), \(\bar{y} = 6\)이고 \(S_{xx} = 10\), \(S_{xy} = 22\)이므로 OLS 적합선은
이 적합선으로 각 항을 계산하면
| \(i\) | \(y_i\) | \(\hat{y}_i\) | \(y_i - \bar{y}\) | \(\hat{y}_i - \bar{y}\) | \(y_i - \hat{y}_i\) |
|---|---|---|---|---|---|
| 1 | 2 | 1.6 | \(-4\) | \(-4.4\) | 0.4 |
| 2 | 4 | 3.8 | \(-2\) | \(-2.2\) | 0.2 |
| 3 | 5 | 6.0 | \(-1\) | 0.0 | \(-1.0\) |
| 4 | 8 | 8.2 | 2 | 2.2 | \(-0.2\) |
| 5 | 11 | 10.4 | 5 | 4.4 | 0.6 |
제곱합을 계산하면
분해가 성립함을 확인할 수 있다: \(48.40 + 1.60 = 50 = \text{SST}\).
단순선형회귀이므로 \(p = 1\)이고
모형은 \(Y\)의 전체 변동 가운데 약 96.8%를 설명하며, 수정값 95.7%는 설명변수 하나에 대한 벌점을 반영한다.
연습문제¶
연습문제 1. 어떤 모형의 SSE \(= 200\), SST \(= 1000\)이다. \(R^2\)를 계산하라. 쓸모없는 설명변수(무작위 잡음)를 넣으면 \(R^2\)는 어떻게 되며, 왜 수정 \(R^2\)가 필요한가?
풀이
어떤 설명변수를 넣든(무작위 잡음이라도) OLS가 더 넓은 모수공간에서 SSE를 최소화하므로 SSE는 줄거나 그대로일 뿐 늘지 않는다. 따라서 그 설명변수의 쓸모와 무관하게 \(R^2\)는 커지거나 같다. 곧 \(R^2\)는 언제나 더 복잡한 모형을 선호한다.
수정 \(R^2\)는 모수 추가에 벌점을 주어 이를 바로잡는다.
쓸모없는 설명변수를 넣으면 SSE는 의미 있게 줄지 않으면서 \(p\)만 커지므로 벌점 \(\frac{n-1}{n-p-1}\)이 커져 \(R^2_{\text{adj}}\)가 줄어든다. 그래서 수정 \(R^2\)가 모형 비교에 더 나은 기준이 된다.
연습문제 2. \(R^2\)가 음수가 될 수 있는가? 어떤 상황에서 그런가?
풀이
절편이 있는 모형을 훈련자료에 적합했다면 구성상 \(R^2 \geq 0\)이다(절편이 있는 OLS는 SSE \(\leq\) SST를 보장한다). 그러나 다음 두 상황에서는 \(R^2\)가 음수가 될 수 있다.
-
검정자료: 훈련자료로 적합한 모형을 검정자료에 적용하면 예측이 단순히 검정자료의 평균을 예측하는 것보다 나쁠 수 있다. 그러면 (검정자료의 평균으로 계산한) SST보다 SSE가 커져 \(R^2 < 0\)이 된다.
-
절편 없는 모형: 절편 없이 적합하면 예측이 \(\bar{y}\)를 지나지 않으므로 SSE가 SST를 넘을 수 있다.
검정자료에서 \(R^2\)가 음수라는 것은 모형의 예측이 상수 기준선(평균 예측)보다도 나쁘다는 뜻이다. 심각한 과적합이나 모형 오설정의 신호이다.
연습문제 3. 단순선형회귀에서 \(R^2\)와 \(y\)·\(\hat{y}\) 사이의 Pearson 상관 \(r\)의 관계를 유도하라.
풀이
설명변수가 하나인 단순선형회귀에서 \(y\)와 \(\hat{y}\)의 Pearson 상관은 \(|r_{xy}|\)(\(x\)와 \(y\)의 상관의 절댓값)와 같다. 따라서
더 일반적으로 다중회귀에서는 \(R^2 = r_{y\hat{y}}^2\), 곧 관측값과 적합값 상관의 제곱이다. 다음이 성립하기 때문이다.
이 관계가 해석을 제공한다. \(R^2\)는 모형이 선형으로 설명하는 \(y\)의 분산 비율이다. \(\square\)
연습문제 4. 어떤 모형이 훈련자료에서 \(R^2 = 0.95\), 검정자료에서 \(R^2 = 0.60\)이다. 문제를 진단하고 대책을 제안하라.
풀이
훈련 \(R^2\)(0.95)와 검정 \(R^2\)(0.60)의 큰 격차는 과적합의 전형적인 신호이다. 모형이 훈련자료를 잡음까지 포함해 아주 잘 맞추었지만 일반화에 실패한 것이다.
대책:
- 정칙화: 릿지나 LASSO 회귀로 계수를 축소하여 분산을 줄인다.
- 변수 선택: 신호가 아니라 잡음을 보태는 설명변수를 뺀다(교차검증이나 정보기준을 쓴다).
- 자료 확충: \(n\)을 늘리면 모형 복잡도 대비 정보가 늘어 과적합이 줄어든다.
- 더 단순한 모형: 설명변수의 개수나 다항 차수를 줄인다.
- 교차검증: 언제나 성능을 과대평가하는 훈련 \(R^2\)에 기대지 말고 모형 개발 과정에서 교차검증을 쓴다.
정리하며¶
\(R^2\) 는 설명된 분산의 비율이다.
- 변동의 분해에서 나온다. \(\text{SST}=\text{SSE}+\text{SSR}\) 이며, 11장의 분산분석 분해와 같은 구조다.
- 설명변수를 더하면 반드시 오른다. 쓸모없는 변수를 넣어도 내려가지 않으므로, 모형 비교의 기준으로 쓸 수 없다. 조정된 \(R^2\) 이 자유도 벌점을 넣어 이를 보완한다.
- 단순회귀에서는 \(R^2=r^2\) 이다. 12장의 상관계수와 직접 연결된다.
- 높다고 좋은 모형이 아니다. 인과를 보장하지 않고, 가정 위반을 잡아내지도 못하며, 외삽의 안전을 말해 주지도 않는다. \(R^2=0.99\) 인 모형도 잔차에 뚜렷한 곡선 패턴이 있을 수 있다.
- 분야마다 기대 수준이 다르다. 물리 실험에서는 \(0.99\) 가 예사이고 사회과학에서는 \(0.3\) 도 높다.
다음 절 MAE·MSE·RMSE로 넘어간다.