수정된 결정계수 (adjusted R^2)

·2025년 4월 28일
0

좋아, 질문 아주 정확해.
"수정된 결정계수 (adjusted ( R^2 ))" 가 왜 그 식으로 정의되는지, 수학적으로 깔끔하고 간단하게 설명해줄게.


1. 기본 결정계수 R2R^2 복습

먼저, 보통 결정계수 R2R^2는 이렇게 정의돼:

R2=1SSESSTR^2 = 1 - \frac{SSE}{SST}
  • SSESSE (잔차제곱합) = 모델이 설명 못한 변동
  • SSTSST (전체제곱합) = 총 변동

즉,

( R^2 )는 모델이 전체 변동 중 설명할 수 있는 비율을 말해.


2. 그런데 왜 수정이 필요한가?

R2R^2는:

  • 설명변수를 아무거나 추가해도 무조건 커져.
  • 쓸모없는 변수를 추가해도 R2R^2는 커진단 말이야.

→ 그래서 진짜 모델 성능을 평가하기엔 R2R^2가 "편향(biased)"돼 있어.

왜냐면?

  • SSESSE가 작아지는 건 맞는데, 자유도가 줄어든 걸 고려하지 않기 때문이야.
  • 자유도가 줄어들면, SSE 자체도 작아지는 경향이 있어서, 단순 비교하면 안 돼.

3. 그래서 나온 게 "수정된 결정계수 (Adjusted ( R^2 ))"

수정된 결정계수는:

Rˉ2=1MSEMST\bar{R}^2 = 1 - \frac{MSE}{MST}

여기서:

  • MSE=SSEnpMSE = \frac{SSE}{n-p} : 오차평균제곱 (Residual Mean Square)
  • MST=SSTn1MST = \frac{SST}{n-1} : 전체 평균제곱 (Total Mean Square)

(여기서 nn은 표본 수, pp는 추정한 파라미터 개수야. 절편 포함하면 p=k+1p = k+1)


4. 왜 이렇게 되는가? (핵심 논리)

(1) 자유도 고려:

  • SSESSE는 원래 npn-p개의 자유도로 나눠야 unbiased estimator가 돼.
  • SSTSSTn1n-1개의 자유도로 나눈다.

(2) 분산비 해석:

  • MSEMSE는 "오차의 분산 추정치"
  • MSTMST는 "데이터 자체의 분산 추정치"

Rˉ2\bar{R}^2는 이 둘의 비율을 이용해서:

"모델의 설명력" vs "원래 데이터 변동성"을 비교

하려고 하는 거야.


5. 수식 변형해서 보여줄게

수정된 결정계수 정의:

Rˉ2=1MSEMST\bar{R}^2 = 1 - \frac{MSE}{MST}

풀어쓰면:

Rˉ2=1SSE/(np)SST/(n1)\bar{R}^2 = 1 - \frac{SSE/(n-p)}{SST/(n-1)}

정리하면:

Rˉ2=1(n1np)(SSESST)\bar{R}^2 = 1 - \left( \frac{n-1}{n-p} \right) \left( \frac{SSE}{SST} \right)

즉, 기존 ( R^2 )를 자유도 보정 비율 (\frac{n-1}{n-p}) 만큼 "깎아서" 사용한다는 뜻이야.

✅ 그래서 변수가 많아지면 자유도가 줄어들고, 이 자유도 보정 때문에 ( \bar{R}^2 )가 쉽게 안 올라가는 거야.


6. 핵심 포인트 요약

항목의미
R2R^2무조건 올라감 (편향 있음)
Rˉ2\bar{R}^2자유도 감소를 고려해서 "진짜 모델 설명력" 평가

"자유도 보정 없이 SSESSE만 비교하면, 복잡한 모델이 유리하게 보이기 때문"에 수정된 결정계수를 쓴다.


✅ 한 줄 요약

수정된 결정계수는, 자유도 감소를 보정해서 모델이 진짜 유의미하게 변동을 설명했는지를 제대로 측정하려고 만든 거다.


필요하면,

  • 수정된 결정계수Maximum Likelihood 추정량을 불편화(unbias)하는 관점 (MLE vs unbiased estimation)
  • 또는 F통계량과 Rˉ2\bar{R}^2의 연결까지도
    아주 예쁘게 추가 설명해줄게.

이어서 더 깊게 보고 싶어?
바로 깔끔하게 이어줄 수 있어!

profile
보건대학원 뉴비

0개의 댓글