1 이 포스트의 위치
EIV 모형 개요에서 측정오차 모형의 정의와 감쇠 편향을, 직교 LS 유도에서 “수학적 해법”을 다루었다. 이 포스트는 “통계적 해법” — 최대우도추정(MLE)을 다룬다 (Casella & Berger, 2002, §12.2.3).
핵심 질문: EIV 모형에서 우도를 최대화하면 어떤 일이 벌어지는가?
2 Functional 모형의 우도 함수
2.1 우도 함수의 형태
정규성 가정 하에서 functional relationship 모형의 우도는 (Casella & Berger, 2002, 식 12.2.12):
\[ L(\alpha, \beta, \xi_1, \ldots, \xi_n, \sigma_\delta^2, \sigma_\epsilon^2) = \frac{1}{(2\pi)^n} \frac{1}{(\sigma_\delta^2 \sigma_\epsilon^2)^{n/2}} \exp\left[-\sum_{i=1}^n \frac{(x_i - \xi_i)^2}{2\sigma_\delta^2}\right] \exp\left[-\sum_{i=1}^n \frac{(y_i - (\alpha + \beta\xi_i))^2}{2\sigma_\epsilon^2}\right] \]
모수는 \(\alpha, \beta, \xi_1, \ldots, \xi_n, \sigma_\delta^2, \sigma_\epsilon^2\) 로 총 \(n + 4\) 개이다. 관측 데이터는 \((x_i, y_i)\) 쌍 \(n\) 개, 즉 \(2n\) 개이다.
2.2 근본적 문제: 우도의 무한 발산
이 우도 함수는 유한한 최댓값을 갖지 않는다.
증명: \(\xi_i = x_i\) 로 설정하면 \(\exp\) 안의 첫째 항이 0이 된다. 이 상태에서 \(\sigma_\delta^2 \to 0\) 으로 보내면 \(\frac{1}{(\sigma_\delta^2)^{n/2}} \to \infty\) 이므로 우도가 무한대로 발산한다 (Casella & Berger, 2002, §12.2.3).
직관적으로 이것이 의미하는 것: “각 \(\xi_i\) 를 관측된 \(x_i\) 와 정확히 같게 설정하고, 측정오차가 0이라고 주장하면 데이터를 완벽하게 설명할 수 있다.” 이것은 모수의 수(\(n + 4\))가 관측의 수(\(2n\))에 비해 충분히 작지 않아서, 모형이 과모수화(overparameterized)되어 발생하는 문제이다.
Solari (1969)는 더 나아가, 우도 방정식(score equations)의 해가 극대점이 아니라 안장점(saddle point)임을 보였다. 즉, 이 문제는 단순히 경계에서 발생하는 것이 아니라 우도 곡면의 구조 자체가 MLE에 적합하지 않다.
3 분산비 가정: \(\sigma_\delta^2 = \lambda\sigma_\epsilon^2\)
3.1 가정의 동기
위 문제를 해결하려면 모수의 자유도를 줄여야 한다. 가장 널리 사용되는 가정은 두 오차의 분산비(variance ratio)를 알고 있다는 것이다 (Casella & Berger, 2002, §12.2.3):
\[ \sigma_\delta^2 = \lambda\sigma_\epsilon^2, \quad \lambda > 0 \text{ (알려진 상수)} \]
이 가정이 합리적인 이유: 측정 장비의 정밀도를 미리 알고 있거나 반복 측정으로 추정할 수 있는 경우가 많다. 개별 분산 값은 몰라도 그 비율은 알 수 있는 상황이다.
이 가정 하에서 \(\sigma_\epsilon^2 = \sigma_\delta^2 / \lambda\) 이므로 미지 분산이 \(\sigma_\delta^2\) 하나로 줄어든다.
3.2 가정 후의 우도
분산비 가정을 적용하면 (Casella & Berger, 2002, 식 12.2.13):
\[ L(\alpha, \beta, \xi_1, \ldots, \xi_n, \sigma_\delta^2) = \frac{1}{(2\pi)^n} \frac{\lambda^{n/2}}{(\sigma_\delta^2)^n} \exp\left[-\sum_{i=1}^n \frac{(x_i - \xi_i)^2 + \lambda(y_i - (\alpha + \beta\xi_i))^2}{2\sigma_\delta^2}\right] \]
이 함수는 이제 유한한 최대값을 갖는다. 모수를 단계별로 최대화하겠다.
4 단계별 MLE 유도
4.1 Stage 1: \(\xi_i\) 에 대한 최대화 (\(\alpha, \beta, \sigma_\delta^2\) 고정)
\(\sigma_\delta^2\) 가 양수이므로 \(L\) 을 최대화하려면 지수부의 합을 최소화하면 된다:
\[ \min_{\xi_1, \ldots, \xi_n} \sum_{i=1}^n \left[(x_i - \xi_i)^2 + \lambda(y_i - (\alpha + \beta\xi_i))^2\right] \]
각 \(\xi_i\) 에 대해 독립적인 이차식이므로, \(\xi_i\) 로 미분하여 0으로 놓으면:
\[ -2(x_i - \xi_i) - 2\lambda\beta(y_i - (\alpha + \beta\xi_i))(-1) = 0 \]
\[ \xi_i^* = \frac{x_i + \lambda\beta(y_i - \alpha)}{1 + \lambda\beta^2} \]
이 수식이 말하는 것: \(\xi_i^*\) 는 관측된 \(x_i\) 와 \(y_i\) 로부터 “역추정”한 \(\beta\) 의 가중 평균이다. \(\lambda\) 가 크면(= \(X\) 오차가 \(Y\) 오차보다 크면) \(y_i\) 정보에 더 많은 가중치를 준다.
4.2 \(\xi_i^*\) 대입 후 정리
\(\xi_i^*\) 를 대입하면 (Casella & Berger, 2002, 식 12.2.14 유도 과정):
\[ \sum_{i=1}^n \left[(x_i - \xi_i^*)^2 + \lambda(y_i - (\alpha + \beta\xi_i^*))^2\right] = \frac{\lambda}{1 + \lambda\beta^2} \sum_{i=1}^n (y_i - (\alpha + \beta x_i))^2 \]
놀라운 결과: \(\xi_i\) 를 소거하면 통상 OLS 잔차 제곱합에 \(\frac{\lambda}{1+\lambda\beta^2}\) 를 곱한 형태가 된다. 이것은 직교 LS의 목적함수와 동일한 구조이다.
4.3 Stage 2: \(\alpha, \beta\) 에 대한 최대화 (\(\sigma_\delta^2\) 고정)
변수 변환 \(\alpha^* = \sqrt{\lambda}\alpha\), \(\beta^* = \sqrt{\lambda}\beta\), \(y_i^* = \sqrt{\lambda}y_i\) 을 적용하면 (Casella & Berger, 2002, 식 12.2.15):
\[ \frac{\lambda}{1 + \lambda\beta^2} \sum(y_i - (\alpha + \beta x_i))^2 = \frac{1}{1 + \beta^{*2}} \sum(y_i^* - (\alpha^* + \beta^* x_i))^2 \]
오른쪽은 직교 최소제곱의 목적함수와 정확히 일치한다. 따라서 \(\alpha^*\), \(\beta^*\) 의 최소화는 이미 풀었다. 원래 변수로 되돌리면 MLE는 (Casella & Berger, 2002, 식 12.2.16):
\[ \boxed{\hat{\beta}_{MLE} = \frac{-(S_{XX} - \lambda S_{YY}) + \sqrt{(S_{XX} - \lambda S_{YY})^2 + 4\lambda S_{XY}^2}}{2\lambda S_{XY}}} \]
\[ \hat{\alpha}_{MLE} = \bar{Y} - \hat{\beta}_{MLE}\bar{X} \]
4.4 특수 경우들
| \(\lambda\) | 의미 | MLE 기울기 |
|---|---|---|
| \(\lambda = 1\) | \(X\), \(Y\) 오차 분산 동일 | 직교 최소제곱과 일치 |
| \(\lambda \to 0\) | \(X\) 오차 \(\to 0\) (SLR 가정) | 통상 OLS와 일치 |
| \(\lambda \to \infty\) | \(Y\) 오차 \(\to 0\) | 역 OLS와 일치 |
\(\lambda = 0\) 에서 OLS로 수렴한다는 것은 직관적으로 자연스럽다: \(X\) 에 오차가 없으면 EIV 모형이 SLR로 환원되기 때문이다 (Casella & Berger, 2002, Exercise 12.4).
4.5 Stage 3: \(\sigma_\delta^2\) 에 대한 최대화
\(\hat{\alpha}\), \(\hat{\beta}\) 를 대입한 우도를 \(\sigma_\delta^2\) 에 대해 최대화하면 (Casella & Berger, 2002, 식 12.2.18):
\[ \hat{\sigma}_\delta^2 = \frac{1}{2n} \cdot \frac{\lambda}{1 + \lambda\hat{\beta}^2} \sum_{i=1}^n (y_i - (\hat{\alpha} + \hat{\beta}x_i))^2 \]
주의: 분모가 \(2n\) 이다 (\(n\) 이 아니라). 이것은 정규 표본에서 분산 MLE의 분모가 \(n\) 인 것과 달리, 여기서는 \(X\) 와 \(Y\) 의 관측이 각각 \(n\) 개씩 총 \(2n\) 개이기 때문이다.
5 일치성(Consistency) 문제
Functional 모형에서 MLE의 일치성은 다음과 같다 (Casella & Berger, 2002, §12.2.3):
| 추정량 | 일치성 | 확률 극한 |
|---|---|---|
| \(\hat{\alpha}\) | 일치 | \(\alpha\) |
| \(\hat{\beta}\) | 일치 | \(\beta\) |
| \(\hat{\sigma}_\delta^2\) | 비일치 | \(\frac{1}{2}\sigma_\delta^2\) |
\(\hat{\sigma}_\delta^2\) 가 참값의 절반으로 수렴한다는 것은 놀라운 결과이다. 이유: functional 모형에서 \(\xi_i\) 가 고정 모수이므로 “참 \(X\) 분산”이라는 개념이 없어, 분산 추정에 필요한 정보가 부족하다.
Structural 모형에서는 이 문제가 해결된다. \(\xi_i\) 가 확률 변수이므로 \(\sigma_\xi^2\) 가 잘 정의되고, 모든 MLE가 일치한다 (Casella & Berger, 2002, 식 12.2.21).
6 Structural 모형의 MLE
앞의 일치성 분석에서 functional 모형은 \(\hat{\sigma}_\delta^2\) 가 비일치임이 드러났다. 이 문제의 근원은 \(\xi_i\) 가 고정된 모수여서 표본이 늘어도 \(\xi_i\) 에 대한 정보가 새로 쌓이지 않는다는 점이다. Structural 모형에서는 \(\xi_i \overset{iid}{\sim} N(\mu_\xi, \sigma_\xi^2)\) 로 가정하여 \(\xi_i\) 를 확률 변수로 취급한다. 이렇게 하면 \(\xi_i\) 를 적분으로 소거하여 관측 가능한 \((X_i, Y_i)\) 의 결합 분포만으로 우도를 표현할 수 있고, 분산 추정의 일치성을 회복한다.
6.1 주변 분포
\(\xi_i \sim N(\mu_\xi, \sigma_\xi^2)\) 를 적분으로 소거하면 \((X_i, Y_i)\) 의 결합 분포는 이변량 정규가 된다 (Casella & Berger, 2002, 식 12.2.19):
\[ \begin{bmatrix} X_i \\ Y_i \end{bmatrix} \sim N\left(\begin{bmatrix} \mu_\xi \\ \alpha + \beta\mu_\xi \end{bmatrix}, \begin{bmatrix} \sigma_\delta^2 + \sigma_\xi^2 & \beta\sigma_\xi^2 \\ \beta\sigma_\xi^2 & \sigma_\epsilon^2 + \beta^2\sigma_\xi^2 \end{bmatrix}\right) \]
6.2 식별 불가능성
공분산 행렬의 자유 모수: \(\sigma_\delta^2, \sigma_\epsilon^2, \sigma_\xi^2, \beta\) (4개). 대칭 \(2 \times 2\) 공분산 행렬의 자유 원소: 3개. 따라서 모수 4개 > 자유 원소 3개로 식별 불가능하다. 분산비 가정 \(\sigma_\delta^2 = \lambda\sigma_\epsilon^2\) 을 추가하면 미지 분산이 2개(\(\sigma_\epsilon^2, \sigma_\xi^2\))로 줄어 식별 가능해진다.
6.3 MLE 해
이변량 정규의 MLE는 표본 모멘트와 모집단 모멘트를 일치시키는 것이다 (Casella & Berger, 2002, 식 12.2.20):
\[ \bar{X} = \hat{\mu}_\xi, \quad \bar{Y} = \hat{\alpha} + \hat{\beta}\hat{\mu}_\xi \]
\[ \frac{S_{XX}}{n} = \hat{\sigma}_\delta^2 + \hat{\sigma}_\xi^2, \quad \frac{S_{YY}}{n} = \hat{\sigma}_\epsilon^2 + \hat{\beta}^2\hat{\sigma}_\xi^2, \quad \frac{S_{XY}}{n} = \hat{\beta}\hat{\sigma}_\xi^2 \]
분산비 가정 하에서 \(\hat{\alpha}\) 와 \(\hat{\beta}\) 는 functional 모형과 동일하다. 분산 추정량은 다르다 (Casella & Berger, 2002, 식 12.2.21):
\[ \hat{\sigma}_\xi^2 = \frac{1}{n} \cdot \frac{S_{XY}}{\hat{\beta}}, \quad \hat{\sigma}_\delta^2 = \frac{1}{n}\left(S_{XX} - \frac{S_{XY}}{\hat{\beta}}\right), \quad \hat{\sigma}_\epsilon^2 = \frac{1}{n}(S_{YY} - \hat{\beta}S_{XY}) \]
각 수식이 말하는 것: \(\frac{S_{XY}}{n} = \hat{\beta}\hat{\sigma}_\xi^2\) 는 \(\text{Cov}(X, Y) = \beta \cdot \text{Var}(\xi)\) 라는 모집단 관계(관측된 \(X\) 와 \(Y\) 의 공분산은 오직 잠재변수 \(\xi\) 의 분산을 통해서만 연결된다)를 표본으로 추정한 것이다. 여기서 \(\hat{\sigma}_\xi^2 = \frac{S_{XY}}{n\hat{\beta}}\) 로 역산된다. \(\hat{\sigma}_\delta^2 = \frac{S_{XX}}{n} - \hat{\sigma}_\xi^2\) 는 관측된 \(X\) 의 총 분산에서 잠재변수 분산을 뺀 나머지, 즉 순수 측정오차 분산이다.
이 추정량들은 structural 모형에서 모두 일치(consistent)하다.
7 신뢰구간: 근본적 한계
7.1 Gleser-Hwang의 부정적 결과
Gleser & Hwang (1987)은 EIV 모형에서 기울기 \(\beta\) 에 대해 다음을 보였다:
길이가 항상 유한한 신뢰구간은 피복확률(coverage probability)이 0이 될 수 있다.
이것은 \(\tau^2 = \sigma_\xi^2 / \sigma_\delta^2 \to 0\) 일 때 발생한다. \(\tau^2 = 0\) 이면 \(\xi_i\) 의 변동이 없으므로 직선을 적합하는 것 자체가 불가능하다.
7.2 근사적 신뢰구간
실무에서는 CLT 기반의 근사 신뢰구간을 사용한다 (Casella & Berger, 2002, 식 12.2.22):
\[ \hat{\beta} \pm \frac{t_{n-2, \alpha/2}}{\sqrt{n-2}} \hat{\sigma}_\beta \]
여기서 \(\hat{\sigma}_\beta^2\) 는 \(\hat{\beta}\) 의 분산의 일치 추정량이다:
\[ \hat{\sigma}_\beta^2 = \frac{(1 + \lambda\hat{\beta}^2)^2 (S_{XX}S_{YY} - S_{XY}^2)}{(S_{XX} - \lambda S_{YY})^2 + 4\lambda S_{XY}^2} \]
이 구간은 유한 길이이므로 Gleser-Hwang 결과에 의해 모든 모수 값에서 명목 피복률을 유지할 수 없다. 하지만 \(\tau^2\) 가 충분히 크면(= \(\xi_i\) 의 변동이 측정오차보다 충분히 크면) 근사적으로 잘 작동한다.
실무적 함의: 측정오차 분산 \(\sigma_\delta^2\) 에 비해 \(\xi_i\) 의 실제 산포 \(\sigma_\xi^2\) 가 매우 작은 상황 — 예컨대 실험에서 처치 수준을 아주 좁은 범위로만 변화시킨 경우 — 에는 이 근사 신뢰구간도 신뢰하기 어렵다. 이러한 상황에서는 bootstrap 기반 신뢰구간, Fieller 방법, 또는 베이지안 credible interval을 사용하는 것이 권장된다. 따라서 EIV 회귀를 실무에 적용할 때는 \(\hat{\tau}^2 = \hat{\sigma}_\xi^2 / \hat{\sigma}_\delta^2\) 를 항상 보고하고, 이 값이 충분히 큰지 먼저 확인해야 한다.
8 코드 예시: 단계별 MLE
import numpy as np
np.random.seed(42)
n = 200
xi = np.random.uniform(2, 8, n)
sigma_eps = 1.0
sigma_del = 1.5
lam = sigma_del**2 / sigma_eps**2 # lambda = 2.25
X = xi + np.random.normal(0, sigma_del, n)
Y = 1.5 + 2.5 * xi + np.random.normal(0, sigma_eps, n)
# 제곱합
Sxx = np.sum((X - X.mean())**2)
Syy = np.sum((Y - Y.mean())**2)
Sxy = np.sum((X - X.mean()) * (Y - Y.mean()))
# Stage 2: beta, alpha MLE
disc = (Sxx - lam * Syy)**2 + 4 * lam * Sxy**2
beta_mle = (-(Sxx - lam * Syy) + np.sqrt(disc)) / (2 * lam * Sxy)
alpha_mle = Y.mean() - beta_mle * X.mean()
# Stage 3: sigma_delta^2 MLE (functional)
residuals_sq = np.sum((Y - (alpha_mle + beta_mle * X))**2)
sigma_del2_func = (1 / (2 * n)) * (lam / (1 + lam * beta_mle**2)) * residuals_sq
# Structural 모형 분산 추정
sigma_xi2_struct = (1 / n) * Sxy / beta_mle
sigma_del2_struct = (1 / n) * (Sxx - Sxy / beta_mle)
sigma_eps2_struct = (1 / n) * (Syy - beta_mle * Sxy)
# OLS (비교용)
beta_ols = Sxy / Sxx
# 근사 신뢰구간
sigma_beta2 = ((1 + lam * beta_mle**2)**2 * (Sxx * Syy - Sxy**2)) / \
((Sxx - lam * Syy)**2 + 4 * lam * Sxy**2)
from scipy.stats import t as t_dist
t_crit = t_dist.ppf(0.975, df=n-2)
ci_lower = beta_mle - t_crit * np.sqrt(sigma_beta2) / np.sqrt(n - 2)
ci_upper = beta_mle + t_crit * np.sqrt(sigma_beta2) / np.sqrt(n - 2)
print(f"=== 진짜 모수 ===")
print(f"alpha = 1.5, beta = 2.5, sigma_del = {sigma_del}, sigma_eps = {sigma_eps}")
print(f"\n=== 추정 결과 ===")
print(f"OLS beta: {beta_ols:.4f} (감쇠 편향)")
print(f"MLE beta: {beta_mle:.4f}")
print(f"MLE alpha: {alpha_mle:.4f}")
print(f"\n=== 분산 추정 (Functional) ===")
print(f"sigma_del^2: {sigma_del2_func:.4f} (참값의 ~1/2로 수렴: {sigma_del**2/2:.4f})")
print(f"\n=== 분산 추정 (Structural) ===")
print(f"sigma_xi^2: {sigma_xi2_struct:.4f} (참값: {np.var(xi):.4f})")
print(f"sigma_del^2: {sigma_del2_struct:.4f} (참값: {sigma_del**2:.4f})")
print(f"sigma_eps^2: {sigma_eps2_struct:.4f} (참값: {sigma_eps**2:.4f})")
print(f"\n=== 95% 근사 신뢰구간 for beta ===")
print(f"[{ci_lower:.4f}, {ci_upper:.4f}]")
print(f"참값 2.5 포함 여부: {ci_lower <= 2.5 <= ci_upper}")결과 해석: OLS 기울기는 \(\hat{\beta}_{OLS} \approx 1.7\) 수준으로 진짜 값 2.5에 비해 약 30% 과소추정된다(\(\lambda = 2.25\)이므로 감쇠 편향이 크다). MLE 기울기는 \(\hat{\beta}_{MLE} \approx 2.5\) 로 진짜 값에 가깝다. Functional 모형의 \(\hat{\sigma}_\delta^2 \approx 1.125\) 는 참값 \(\sigma_\delta^2 = 2.25\) 의 절반에 수렴하는 비일치성을 수치로 확인할 수 있다. Structural 모형의 \(\hat{\sigma}_\delta^2, \hat{\sigma}_\epsilon^2\) 는 각각 참값(2.25, 1.0)에 근접한다. 95% 신뢰구간은 참값 2.5를 포함하고(True), \(n=200\) 이고 \(\tau^2 = \sigma_\xi^2/\sigma_\delta^2\) 가 충분히 크기 때문에 근사가 잘 작동한 것이다.
9 요약
| 유도 단계 | 핵심 내용 |
|---|---|
| 우도 발산 | Functional 모형에서 \(\xi_i = x_i\), \(\sigma_\delta^2 \to 0\) 시 \(L \to \infty\) (Solari: 안장점) |
| 분산비 가정 | \(\sigma_\delta^2 = \lambda\sigma_\epsilon^2\) (\(\lambda\) 알려진 상수)로 과모수화 해결 |
| Stage 1 | \(\xi_i^* = \frac{x_i + \lambda\beta(y_i - \alpha)}{1 + \lambda\beta^2}\) |
| Stage 2 | 변수 변환으로 직교 LS와 동치 → MLE \(\hat{\beta}\) 유도 |
| Stage 3 | \(\hat{\sigma}_\delta^2 = \frac{1}{2n} \cdot \frac{\lambda}{1+\lambda\hat{\beta}^2} \sum(y_i - \hat{y}_i)^2\) |
| 일치성 | \(\hat{\alpha}\), \(\hat{\beta}\): 일치. \(\hat{\sigma}_\delta^2\): functional에서 비일치 (\(\to \sigma_\delta^2/2\)), structural에서 일치 |
| \(\lambda\) 특수값 | \(\lambda = 1\): 직교 LS, \(\lambda \to 0\): OLS, \(\lambda \to \infty\): 역 OLS |
| 신뢰구간 | 유한 길이 CI는 \(\tau^2 \to 0\) 시 피복률 \(\to 0\) (Gleser-Hwang) |
10 관련 주제
선행 지식
- EIV 모형 개요 — Functional/Structural 구분, 감쇠 편향
- EIV: 직교 LS 유도 — Stage 2에서 사용하는 직교 LS 해
후속 주제
- EIV: Confidence Sets — Casella §12.2.4, Gleser-Hwang 결과의 상세
- Logistic Regression — Casella §12.3, GLM으로의 확장
- Robust Regression — Casella §12.4, M-추정
- Multiple Linear Regression — 행렬 OLS, Gauss-Markov
다른 카테고리 연결