
통계학을 공부하다 보면 흔히 접하는 수식이 있다.
표본 분산 = Σ(x - x̄)² / (n - 1)
그런데 회귀분석으로 넘어가면 갑자기 자유도가 **(n - 2)**로 바뀐다.
잔차 제곱합 / (n - 2)
왜 이런 차이가 생길까? 둘 다 데이터를 n개 사용한 건 똑같은데 말이지.
그 핵심에는 바로 "자유도(degrees of freedom)" 와 " 점추정(point estimation)" 이란 개념이 있다.
1. 자유도란 무엇인가?
"자유도"는 말 그대로 자유롭게 바뀔 수 있는 값의 개수를 말한다.
조금 더 수학적으로 설명하면,
전체 데이터 수 - 제약 조건 수 = 자유도
예를 들어, 평균이 정해진 5개의 숫자에서 나머지 4개를 마음대로 고르면, 마지막 하나는 자동으로 정해진다.
왜냐하면 평균이 고정되어 있기 때문에!
즉, 평균을 미리 계산해 사용했다면,
그 평균 때문에 전체 값 중 하나는 더 이상 "자유롭게" 조정할 수 없게 된다는 뜻이다.
2. 표본 분산에서는 왜 (n - 1)?
표본 분산을 계산할 때, 우리는 **표본 평균(x̄)**을 먼저 계산한 후,
각 값과의 차이를 제곱해서 평균낸다.
s² = Σ(x - x̄)² / (n - 1)
그런데 여기서 x̄ 자체가 이미 데이터를 이용해 계산된 추정치다.
즉, 이 평균을 계산하는 데 자유도 1개가 소모된 것이다.
그래서 전체 n개의 값 중에서 실제로 자유롭게 움직일 수 있는 값은 (n - 1)개.
이를 "자유도 보정"이라고 하고, 이렇게 해야 표본 분산이 모집단 분산의 불편추정량이 된다.
✍️ 핵심:
평균(1개)을 점추정했으므로, 자유도 1개가 줄어든다.
3. 선형 회귀에서는 왜 (n - 2)?
선형 회귀에서는 다음과 같은 직선을 적합시킨다.
ŷ = β₀ + β₁x
여기엔 두 개의 계수(β₀: 절편, β₁: 기울기)를 데이터로부터 추정한다. 즉, 두 개의 점추정이 일어난다.
잔차 제곱합(RSS: Residual Sum of Squares)을 계산하고, 이를 평균낼 때는
이 두 개의 계수를 추정한 걸 감안해서 (n - 2)로 나눈다.
MSE (평균제곱오차) = RSS / (n - 2)
정리하자면,
- 회귀직선을 추정하기 위해 β₀, β₁ 두 개의 추정치를 구함 → 자유도 2개 소모
- 따라서 자유도는 n - 2
4. 일반화: 점추정 개수 = 자유도 감소량
자유도는 언제나 다음처럼 생각하면 된다.
자유도 = 관측치 개수 - 추정한 파라미터 수
| 상황 | 추정한 값 | 자유도 계산 |
| 분산 계산 | 평균 1개 | n - 1 |
| 단순 선형 회귀 | 절편 + 기울기 2개 | n - 2 |
| 다중 회귀 (변수가 k개) | k + 1개 (절편 포함) | n - (k + 1) |
이게 바로 "점추정"과 자유도의 관계다. 무언가를 추정할 때마다, 자유도는 하나씩 줄어든다.
왜냐하면 그 추정치 때문에 나머지 값들이 더는 자유롭게 변할 수 없기 때문이다.
5. 시각적으로 생각해 보기
🎯 비유:
- 자유도는 여유 있는 정도라고 보면 된다.
- 예를 들어 5개의 블록으로 합계 100을 맞춰야 할 때, 4개는 마음대로 쌓을 수 있지만 마지막 하나는 앞의 4개에 따라 자동으로 정해진다.
- "제약 조건(=추정치) " 가 생길수록 자유롭게 조정할 수 있는 항목 수는 줄어드는 것.
6. 자유도와 수식들 한 눈에 보기
(1) 표본 분산에서의 자유도: n - 1
표본에서 분산을 계산할 때는 평균을 먼저 구한 다음, 그 평균을 기준으로 편차를 제곱해서 평균낸다.
하지만 이때 평균이라는 값을 이미 한 번 추정한 것이므로, 자유도 1이 줄어든다.
- 분산의 공식:
s² = (1 / (n - 1)) × Σ(xᵢ - x̄)² - 자유도:
관측치 n개 중 평균 x̄ 1개를 이미 사용 → 자유도 = n - 1
(2) 회귀 분석에서의 자유도 분해: n, n - 1, n - 2
선형 회귀 분석에서는 전체 변동(SST)을 두 가지로 나눌 수 있다.
SST = SSR + SSE
각각의 의미는 다음과 같다:
| 항목 | 설명 | 수식 | 자유도 |
| SST (Total Sum of Squares) | 전체 변동 | Σ(yᵢ - ȳ)² | n - 1 |
| SSR (Regression Sum of Squares) | 회귀에 의해 설명된 변동 | Σ(ŷᵢ - ȳ)² | 1 |
| SSE (Error Sum of Squares) | 잔차 = 오차 제곱합 | Σ(yᵢ - ŷᵢ)² | n - 2 |
- SST는 단순히 평균만을 기준으로 전체 y값들의 퍼짐을 보는 것이므로, 자유도는 평균 1개 추정 → n - 1
- SSR은 회귀식(ŷ = b₀ + b₁x)을 통해 나온 예측값의 퍼짐을 측정한 것 → 두 개의 계수(b₀, b₁)를 추정했지만 SSR 자체는 하나의 직선(1차 함수)로 요약 → 자유도 1
- SSE는 관측값과 예측값 간 차이를 계산 → 이미 두 개의 계수를 추정했으므로, n - 2
이 세 항의 자유도 관계도 다음처럼 정리된다:
자유도:
(n - 1) = 1 (SSR) + (n - 2) (SSE)
(3) 표본 평균의 분포: n
표본 평균의 분포는 n개 관측치를 모두 사용하는 개념이므로, 자유도는 줄지 않는다.
(아직 뭘 추정한 게 없기 때문에!)
예시:
- X₁, X₂, ..., Xₙ ~ N(μ, σ²)
- 표본 평균: x̄ = (1/n) ΣXᵢ
- 분산: Var(x̄) = σ² / n
이때 n은 표본 수일 뿐, 자유도와 직접 관련되진 않음. 추정 전에 사용되는 수식들은 자유도 감소와 무관하다.
(4) t-분포에서의 자유도: n - 1
표본 평균이 모집단 평균과 얼마나 다른지를 테스트할 때 쓰이는 t-통계량은 다음과 같다:
t = (x̄ - μ) / (s / √n)
(단, s는 표본 표준편차)
이때 s²는 (n - 1)로 나눈 분산이므로, 이 t값은 자유도 n - 1을 가지는 t-분포를 따른다.
즉, 표본 분산을 추정했다는 이유로 자유도는 항상 n에서 1만큼 줄어든다.
| 표본 분산 s² | n - 1 | 평균 1개 추정 |
| 회귀식 SSE | n - 2 | 절편, 기울기 2개 추정 |
| 회귀식 SSR | 1 | 직선이라는 1차 모델 1개 |
| SST | n - 1 | 평균 1개 추정 |
| t-분포 | n - 1 | 표본 분산 추정 포함 |
| x̄, 표본 평균의 분산 | n | 추정 없이 계산 (추정 없음) |
7. 결론: 자유도는 "추정의 대가"다
- 자유도는 단순한 숫자 계산이 아니라, 우리가 얼마나 데이터를 소모해서 추정치를 만들었는지를 반영하는 중요한 개념이다.
- 표본에서 평균 하나만 추정했다면 (n - 1),
두 개의 회귀 계수를 추정했다면 (n - 2),
k개의 회귀 계수를 추정했다면 (n - k - 1)이 되는 것.
이제 자유도가 왜 상황마다 다르게 적용되는지, 수식만 보지 말고 **"우리가 뭘 추정했는가?"**를 먼저 떠올려 보면 된다.
'PROGRAMMING > Data Analysis' 카테고리의 다른 글
| 오차, 잔차, 편차의 차이: 통계에서 헷갈리는 세 가지 (3) | 2025.08.03 |
|---|---|
| 🎨 Stanford d.school의 디자인 씽킹 6단계 (1) | 2025.07.16 |
| 데이터 적재 기술의 종류와 진화 – ETL/DW/DM/데이터레이크 (2) | 2025.07.14 |
| 🌍 외부 환경 속에서 다시 떠오르는 인문학 – 왜 지금, 인문학인가? 인문학적 사고란? (5) | 2025.07.11 |
| [데이터 분석] (3-3) 데이터 수집 예제 : 네이버 동적 크롤링 (0) | 2021.11.19 |
댓글