1 왜 “오차 구조” 를 따로 다루는가
고전 선형모형을 배울 때 세 가정을 한 묶음으로 외운다.
\[ Y_i \;\stackrel{\text{i.i.d.}}{\sim}\; \mathcal N(\mu_i, \sigma^2),\qquad \mu_i = \mathbf{x}_i^\top\boldsymbol\beta \]
여기에는 사실 세 개의 서로 다른 가정이 숨어 있다.
- 독립성 (independence): \(Y_i \perp Y_j\) for \(i\ne j\).
- 등분산성 (homoscedasticity): \(\mathrm{Var}(Y_i) = \sigma^2\) for all \(i\).
- 정규성 (normality): \(Y_i\) 의 분포가 \(\mathcal N\).
세 가정은 서로 다른 역할을 한다. 그리고 세 가정이 깨질 때 결과가 망가지는 정도가 다르다. McCullagh & Nelder §3.2 의 핵심 메시지는 이 세 가정을 구분하고, 그중 어느 것이 본질적이고 어느 것이 편의적인지 명확히 하는 것이다.
| 가정 | 역할 | 깨지면 | GLM 에서의 일반화 |
|---|---|---|---|
| 독립성 | 추정의 일관성·표준오차 | 표준오차 과소추정, 결과 왜곡 | 혼합모형·GEE·시계열 GLM |
| 등분산성 | 점추정의 효율성 | BLUE 성질 상실 | 분산함수 \(V(\mu)\) |
| 정규성 | 소표본 정확 분포 | 대표본 영향 적음 (CLT) | 지수족 일반화 |
직관: 독립성과 등분산성은 수학적 뼈대를, 정규성은 검정의 정밀도를 준다. 현실 데이터에서 완벽한 정규는 없지만 많은 회귀가 여전히 실용적인 이유가 여기에 있다 — 뼈대만 있으면 점추정은 타당하고, 대표본에서는 정규 근사가 검정까지 구해 준다.
2 독립·등분산을 한 줄로 — 공분산 행렬 가정
세 가정은 공분산 행렬 하나로 압축된다.
\[ E(\mathbf{Y}) = \boldsymbol\mu,\qquad \mathrm{cov}(\mathbf{Y}) = \sigma^2\,\mathbf{I}_n \]
여기서 \(\mathbf{I}_n\) 이 두 가지 정보를 담는다.
- 대각 성분이 모두 \(\sigma^2\): 등분산.
- 비대각 성분이 모두 0: 독립 (또는 최소한 무상관).
2.1 왜 두 성질을 한 번에 묶는가
OLS 의 수학은 \(\mathbf{y}\) 와 \(\mathbf{X}\) 의 기하만 다룬다. 각 점의 “분산 단위” 가 같으면 \((\mathbf{X}^\top\mathbf{X})^{-1}\mathbf{X}^\top\mathbf{y}\) 라는 하나의 표현으로 일관되게 처리할 수 있다. 등분산이 깨지면 단위가 다른 점들을 섞어 평균을 내게 되어, “큰 분산을 가진 관측이 과도한 영향력을 행사” 하는 문제가 발생한다.
\[ \mathrm{cov}(\mathbf{Y}) = \mathrm{diag}(\sigma_1^2,\dots,\sigma_n^2) \;\ne\; \sigma^2\mathbf{I} \]
가 되면 OLS 는 여전히 불편이지만 최소 분산 성질은 상실한다. 이 경우 가중 최소제곱 (WLS)
\[ \hat{\boldsymbol\beta}_{\text{WLS}} \;=\; (\mathbf{X}^\top\mathbf{W}\mathbf{X})^{-1}\mathbf{X}^\top\mathbf{W}\mathbf{y},\quad \mathbf{W} = \mathrm{diag}(1/\sigma_i^2) \]
가 효율성을 복원한다. GLM 의 IRLS 가 매 반복 수행하는 것이 정확히 이 WLS 로, “이분산성” 자체가 GLM 일반화의 출발점이 된다.
직관: OLS 는 “모든 관측이 같은 품질의 측정” 임을 가정한다. 그 가정이 깨지면 “좋은 측정에 더 큰 가중을 주는” WLS 가 필요하다. GLM 은 이 가중을 평균의 함수 로 자동 계산하는 확장이다.
3 진짜 핵심 가정 — 정규성이 아니라 등분산성
3.1 Gauss-Markov 정리 — 정규성 없이도 BLUE
선형 불편 추정량 (linear unbiased estimator) 중 최소 분산을 가진 것을 BLUE (Best Linear Unbiased Estimator) 라 한다. Gauss-Markov 정리의 주장은 다음과 같다.
\(E(\boldsymbol\varepsilon) = \mathbf{0}\), \(\mathrm{cov}(\boldsymbol\varepsilon) = \sigma^2\mathbf{I}\) 하에서 OLS 추정량 \(\hat{\boldsymbol\beta}_{\text{OLS}}\) 은 BLUE 이다.
이 정리는 \(\boldsymbol\varepsilon\) 의 분포를 가정하지 않는다.
증명 스케치: 임의의 선형 불편 추정량 \(\tilde{\boldsymbol\beta} = \mathbf{C}\mathbf{y}\) (\(\mathbf{C}\mathbf{X} = \mathbf{I}_p\)) 에 대해
\[ \mathrm{cov}(\tilde{\boldsymbol\beta}) - \mathrm{cov}(\hat{\boldsymbol\beta}_{\text{OLS}}) \;=\; \sigma^2\{\mathbf{C}\mathbf{C}^\top - (\mathbf{X}^\top\mathbf{X})^{-1}\} \]
이 양의 준정부호 (positive semi-definite) 임을 보이면 된다. 유도 과정에 정규성은 등장하지 않는다. 오직 1차·2차 모멘트 가정만 사용한다.
3.2 정규성의 실제 역할
그러면 정규성은 왜 필요한가? 세 가지 상황에서만 필요하다.
| 필요한 곳 | 이유 |
|---|---|
| 소표본 \(t\), \(F\) 분포의 정확성 | \(t_{n-p}\) 분포는 정규 가정 하에서만 정확 |
| MLE 의 정확 분포 | 정규이면 OLS = MLE, 정확 정규 분포 |
| 예측 구간의 정확 coverage | \(y_{\text{new}} \sim \mathcal N\) 이라야 구간이 정확 |
반면 점추정의 일관성·효율성, 대표본 검정의 타당성 에는 정규성이 필요하지 않다.
3.3 대표본에서 CLT 의 보호
표본 크기 \(n\) 이 커지면 CLT 에 의해
\[ \sqrt n\,(\hat{\boldsymbol\beta} - \boldsymbol\beta) \;\overset{d}{\longrightarrow}\; \mathcal N(\mathbf{0}, \sigma^2 \boldsymbol\Sigma^{-1}) \]
여기서 \(\boldsymbol\Sigma = \lim n^{-1}\mathbf{X}^\top\mathbf{X}\). \(\boldsymbol\varepsilon\) 의 분포가 무엇이든, 2차 모멘트만 유한하면 \(\hat{\boldsymbol\beta}\) 의 극한 분포는 정규다. 따라서 Wald 검정·신뢰구간은 대표본에서 정규 가정 없이도 유효하다.
3.4 효율성 손실
Cox & Hinkley (1968, §9.2) 의 결과 — 참 분포가 정규가 아닐 때 OLS 는 여전히 BLUE 이지만, MLE 보다는 비효율적일 수 있다. 예를 들어 참 분포가 Laplace (이중 지수) 이면, MLE 는 중위수 회귀 (least absolute deviation, LAD) 가 되어 OLS 보다 효율적이다. 효율성 손실의 크기는 Fisher 정보의 비율로 정량화된다.
\[ \text{RE (Relative Efficiency)} \;=\; \frac{I_{\text{Normal}}(\mu)}{I_{\text{true}}(\mu)} \]
직관: “정규 가정은 틀려도 상관없다” 는 거친 요약이 아니다. 점추정의 타당성은 보존되지만 효율성은 잃을 수 있다. 정확 분포가 알려져 있으면 그걸 쓰는 게 낫고, 모르겠으면 OLS 로도 충분히 합리적이라는 실용적 타협이 §3.2 의 권고다.
4 정규분포의 통계적 성질
§3.2 는 정규분포의 “굳이 자세히” 를 짧게 덧붙인다. 실무에서 자주 쓰이는 사실을 한 페이지로 요약한다.
4.1 밀도함수와 모양
\[ f(y;\mu,\sigma^2) \;=\; \frac{1}{\sqrt{2\pi\sigma^2}}\exp\!\left(-\frac{(y-\mu)^2}{2\sigma^2}\right),\quad -\infty < y < \infty \]
- 대칭: \(\mu\) 를 중심으로 좌우 대칭. 따라서 mode = mean = median = \(\mu\).
- 변곡점: \(\mu \pm \sigma\) 에 위치 — \(\sigma\) 를 “변곡점까지의 수평 거리” 로 기억하면 시각적 직관이 확고해진다.
- 꼬리 확률: \[P(|Y-\mu| \le \sigma) \approx 0.683,\quad P(|Y-\mu|\le 2\sigma) \approx 0.954,\quad P(|Y-\mu|\le 3\sigma) \approx 0.997\] 이른바 68-95-99.7 법칙 (교재는 99.8% 로 표기).
4.2 로그우도의 포물선
단일 관측 \(y\) 가 주어졌을 때 (\(\sigma^2\) 고정) \(\mu\) 의 로그우도는
\[ \ell(\mu) \;=\; -\tfrac12\log(2\pi\sigma^2) - \frac{(y-\mu)^2}{2\sigma^2} \]
이차 함수 (포물선). 그 최댓값은 \(\mu = y\) 에서, 2차 미분 \(\partial^2\ell/\partial\mu^2 = -1/\sigma^2\) (상수) 이다.
이 사실이 두 가지를 자동으로 보장한다.
- MLE 의 유일성: 로그우도가 엄격 오목이라 해가 하나.
- Fisher 정보가 \(1/\sigma^2\) 상수: 관측값과 무관.
이것이 정규-항등 GLM 이 IRLS 에서 한 번에 수렴하는 이유다 (\(W=1\) 상수, 재가중 불필요).
직관: 지수족 일반의 로그우도는 \(\mu\) 에 따라 곡률이 변하는 오목 함수다. 정규는 그 특별한 사례로 모든 지점에서 곡률이 같은 이차함수다. 이 평탄한 곡률이 바로 OLS 의 단순성을 만든다.
4.3 꼬리가 얇다는 것의 의미
정규분포의 꼬리는 \(e^{-x^2/2}\) 로 이중 지수적 감쇠. 이상치가 발생할 확률이 극도로 낮다. \(|Y-\mu| > 3\sigma\) 는 0.3% — 1000 관측 중 3건.
현실에서 “정규처럼 보이는” 데이터도 꼬리가 더 두꺼운 경우가 많다 (fat tails). 금융 수익률, 측정 오차의 일부는 \(t\)-분포나 이중 지수 (Laplace) 에 가깝다. 이상치가 반복적으로 나타나면 정규 가정을 재검토해야 한다.
4.4 선형 결합의 닫힘 성질
\(Y_1,\dots,Y_n\) 이 독립 정규이면 임의의 선형 결합 \(\sum a_i Y_i\) 도 정규. 따라서
\[ \hat{\boldsymbol\beta} = (\mathbf{X}^\top\mathbf{X})^{-1}\mathbf{X}^\top\mathbf{y} \]
가 정규의 선형 결합이라 정확한 정규 분포를 가진다. 이 성질이 소표본 \(t\)-검정의 정확성을 보장한다. 다른 분포 (Gamma, Poisson) 에서는 이 닫힘성이 깨져, \(\hat{\boldsymbol\beta}\) 의 분포를 점근적으로만 논할 수 있다.
5 정규 가정이 깨지는 양상과 처방
5.1 양수 데이터가 0 근처로 접근
길이·무게·시간 같은 본질적 양수 데이터에 정규를 쓸 수 있는 것은 “\(\mu\) 가 \(\sigma\) 대비 충분히 크면 음수 꼬리가 무시 가능” 하기 때문. McCullagh 의 기준: \(\mu / \sigma \geq 10\) 정도면 안전.
예: 평균 100, 표준편차 10 인 데이터 → \(P(Y<0) \approx 10^{-23}\), 실질적으로 0.
반대로 평균이 1, 표준편차가 0.5 인 데이터 → \(P(Y<0) \approx 0.023\), 2.3% 가 의미 없는 음수. 이 경우 정규가 부적합.
5.2 분산이 평균에 비례
0 근처 양수 데이터는 보통 분산이 평균과 함께 증가 한다. 잔차 플롯에서 “나팔 모양 (fan shape)” 이 보인다.
\[ \mathrm{Var}(Y) = c\mu^k,\quad k \in (0, 2] \]
| \(k\) | 적합 분포 | 변환 |
|---|---|---|
| 0 | Normal | 변환 불필요 |
| 1 | Poisson | \(\sqrt{Y}\) |
| 2 | Gamma | \(\log Y\) |
| 일반 | Tweedie | \(V(\mu) = \mu^k\) |
로그 변환 \(\log Y\) 는 \(k \approx 2\) 에서 분산을 안정화시키지만 해석이 “배수” 로 바뀐다. GLM 은 변환 없이 분포를 바꿔 원 척도에서 해석을 유지한다는 점에서 변환보다 우월하다.
5.3 이중·삼중 꼬리
꼬리가 정규보다 두꺼우면 이상치에 민감. 대응:
- Robust 회귀: Huber, bisquare 가중.
- \(t\)-분포 오차: 자유도 조절로 꼬리 두께 조정.
- Trimmed / winsorized OLS: 극단값 제거.
5.4 비대칭
정규는 대칭. 반응이 비대칭이면 (예: 수입, 반응 시간) log-normal 또는 Gamma 가 대안.
직관: 정규가 “맞는 경우” 를 외우는 게 아니라 “맞지 않는 신호” 를 읽는 것이 §3.2 의 실용적 지침이다. 양수 경계·분산 비례·꼬리·비대칭 — 이 넷을 잔차 플롯에서 확인하고 대응한다.
6 2차 모멘트 관점의 일반화 — Quasi-likelihood 의 씨앗
§3.2 가 반복 강조하는 “분포보다 2차 모멘트가 본질” 이라는 입장은 McCullagh & Nelder Ch.9 의 Quasi-likelihood 로 직접 연결된다. 핵심 아이디어:
분포 전체를 지정할 필요 없이 \((E, \mathrm{Var})\) 만 지정해도 MLE 유사 추정이 가능하다.
Quasi-likelihood 함수는
\[ Q(\mu; y) \;=\; \int^\mu \frac{y - t}{\phi V(t)}\,dt \]
\(V(\mu)\) 만 있으면 이 적분으로 추정이 정의된다. OLS 가 \(V(\mu) = 1\) 의 특수 사례. Ch.3 의 오차구조 철학이 “분산함수 중심” 으로 GLM 전체를 재해석하는 관점의 토대다.
직관: “분포를 고르는 건 사치다, 분산 구조만 제대로 지정하면 된다” 는 입장이 Gauss-Markov → Wedderburn → Jorgensen 의 계보를 관통한다. Ch.3 는 이 계보의 출발점을 제공한다.
7 코드 예시
7.1 Step 1: 정규 가정 하 OLS — 잔차 분석
import numpy as np
import matplotlib.pyplot as plt
rng = np.random.default_rng(0)
n = 200
x = rng.uniform(0, 10, size=n)
# 참 모델: y = 2 + 0.5 x + 정규 잔차
y = 2 + 0.5 * x + rng.normal(scale=1.0, size=n)
X = np.column_stack([np.ones(n), x])
beta_hat, *_ = np.linalg.lstsq(X, y, rcond=None)
resid = y - X @ beta_hat
sigma_hat = np.sqrt((resid @ resid) / (n - 2))
# 68-95-99.7 법칙 검증
within_1 = np.mean(np.abs(resid) <= sigma_hat)
within_2 = np.mean(np.abs(resid) <= 2 * sigma_hat)
within_3 = np.mean(np.abs(resid) <= 3 * sigma_hat)
print(f"±1 SD 내: {within_1:.1%} (이론 68.3%)")
print(f"±2 SD 내: {within_2:.1%} (이론 95.4%)")
print(f"±3 SD 내: {within_3:.1%} (이론 99.7%)")이 예에서 정규 가정이 맞으므로 세 비율이 이론값에 근접. 실제 데이터에서 이 비율이 어긋나면 꼬리 모양을 재점검한다.
7.2 Step 2: 등분산성 위반의 영향 — 이분산 데이터
# 분산이 x 에 비례하는 이분산 데이터 생성
y_het = 2 + 0.5 * x + rng.normal(scale=np.sqrt(x + 0.1), size=n)
# OLS (등분산 가정)
beta_ols, *_ = np.linalg.lstsq(X, y_het, rcond=None)
# WLS (참 가중치 사용)
W = np.diag(1 / (x + 0.1))
beta_wls = np.linalg.solve(X.T @ W @ X, X.T @ W @ y_het)
# 표준오차 비교
resid_ols = y_het - X @ beta_ols
# OLS 의 "잘못된" SE (등분산 가정 하 계산)
se_ols_naive = np.sqrt(np.diag((resid_ols @ resid_ols / (n-2))
* np.linalg.inv(X.T @ X)))
# OLS 의 robust SE (White sandwich)
Omega = np.diag(resid_ols ** 2)
V_robust = np.linalg.inv(X.T @ X) @ X.T @ Omega @ X @ np.linalg.inv(X.T @ X)
se_ols_robust = np.sqrt(np.diag(V_robust))
print(f"OLS beta: {beta_ols}")
print(f"WLS beta: {beta_wls}")
print(f"OLS SE (naive): {se_ols_naive}")
print(f"OLS SE (robust): {se_ols_robust}")포인트: OLS 점추정은 여전히 불편이지만, “naive” 표준오차가 틀려진다. Robust SE (White sandwich estimator) 또는 WLS 가 해결책. 이는 “등분산 깨짐 → 표준오차 왜곡 → 검정 왜곡” 의 실제 모습.
7.3 Step 3: 정규 가정 검증 — Q-Q plot
from scipy import stats
# Q-Q plot (정규성 검정)
fig, (ax1, ax2) = plt.subplots(1, 2, figsize=(10, 4))
# (1) 정규 데이터
resid_norm = y - X @ beta_hat
stats.probplot(resid_norm / sigma_hat, dist="norm", plot=ax1)
ax1.set_title("Normal residuals")
# (2) Laplace (이중 지수) 데이터 — 꼬리 더 두꺼움
y_laplace = 2 + 0.5 * x + rng.laplace(scale=1.0, size=n)
beta_lap, *_ = np.linalg.lstsq(X, y_laplace, rcond=None)
resid_lap = y_laplace - X @ beta_lap
stats.probplot(resid_lap / resid_lap.std(), dist="norm", plot=ax2)
ax2.set_title("Laplace residuals (fat-tailed)")
plt.tight_layout()Q-Q plot 에서 중간은 직선에 붙고 양 끝이 S 자로 휘면 꼬리가 두꺼움 (fat tails). 이 경우 정규가 아닌 \(t\)-분포 회귀·robust 회귀 고려.
8 흔한 실수
| 실수 | 처방 |
|---|---|
| “정규성 검정 (Shapiro-Wilk)” 으로 가정 판단 | 대표본에서 작은 편차도 유의로 나옴. 시각적 Q-Q 와 잔차-적합 플롯을 우선 |
| 이분산 무시하고 OLS SE 그대로 보고 | Robust SE 또는 WLS. 실무에서 매우 흔함 |
| 0 근처 양수 데이터에 정규 가정 | \(\mu/\sigma\) 비율 확인. 작으면 log 변환 또는 Gamma GLM |
| 이상치를 무조건 제거 | 이상치가 진짜 신호일 수 있음. Robust 회귀로 다운가중이 안전한 중간 해 |
| 정규 가정이 깨지면 “OLS 는 쓸 수 없다” 고 결론 | 점추정은 여전히 타당. 효율성·검정 정확성만 손상. 대표본에서는 CLT 보호 |
9 요약
- 세 가정의 층위: 독립 (뼈대) + 등분산 (효율성) + 정규성 (소표본 정확성). 역할이 다름.
- Gauss-Markov: 정규성 없이도 OLS 는 BLUE. 2차 모멘트 가정만 있으면 충분.
- 정규성의 진짜 역할: 소표본 \(t, F\) 분포·예측 구간의 정확성. 대표본에서는 CLT 보호.
- 정규분포 사실들: 68-95-99.7 규칙, 변곡점이 \(\mu\pm\sigma\), 로그우도가 포물선, Fisher 정보가 \(1/\sigma^2\) 상수.
- 가정 위반 징후: 양수 데이터의 0 근접·분산-평균 비례·두꺼운 꼬리·비대칭. 각 경우의 처방 (log 변환·Gamma·robust·\(t\)-회귀).
- Quasi-likelihood 예고: “분포 말고 분산함수만 있으면 충분” 이라는 Ch.9 의 출발점이 §3.2 의 2차 모멘트 철학.
한 줄 요약: §3.2 는 “무엇을 가정했고, 왜 가정했는가” 를 층위별로 정리해 주는 절이다. 이 층위를 알면 현실 데이터에서 어떤 가정이 깨졌는지·어디부터 고쳐야 하는지 가 진단 가능해진다.
10 관련 주제
선행 지식
관련 개념
후속 주제
- Quasi-likelihood (McCullagh Ch.9) — 분산 구조 기반 추론
- Gamma GLM (McCullagh Ch.8) — 0 근처 양수 연속 반응
- Robust 회귀 — 꼬리가 두꺼운 오차의 처리