앞서 본 베이지안 기반의 모델 선택에서는 주변우도 $p(\mathcal{D} \mid m) = \int p(\mathcal{D} \mid \theta, m) p(\theta \mid m) \; d\theta$를 계산해야만 했습니다. 하지만, 일반적으로 이는 파라미터 전체 공간에 대한 적분을 수행해야하기 때문에 계산이 어려우며 파라미터에 대한 사전 확률분포에 따라서 민감하게 달라지는 문제가 있습니다. 이를 대체하기 위해 정보 기준(Information Criteria)라는 계산이 훨씬 단순한 모델 선택 지표를 사용할 수 있습니다.
정보 기준의 공통적인 구조는 다음과 같습니다.
$$\mathcal{L}(m) = -\log p(\mathcal{D} \mid \hat{\theta}, m) + C(m)$$
여기서 첫번째 항은 음의 로그우도(NLL)을 의미합니다. 즉, 모델에 대한 데이터 적합도를 나타내는 것이죠. 두번째 항의 경우 복잡도에 대한 패널티로 모델의 복잡성을 조절해줍니다. 일반적으로는 NLL에 -2를 곱하여 데비언스(deviance)라는 값으로 변환하여 표현합니다.
$$\text{deviance}(m) = -2\log p(\mathcal{D} \mid \hat{\theta}, m)$$
이와 같이 표현하면 가우시안 모델에서 수식이 훨씬 깔끔해집니다.
1. Bayesian Information Criteria(BIC)
BIC는 로그 주변우도의 단순 근사입니다. 사후 확률분포 $p(\mathcal{D} \mid m)$에 가우시안 근사를 적용하면 다음과 같은 결과를 얻을 수 있습니다.
$$\log p(\mathcal{D} \mid m) \approx \log p(\mathcal{D} \mid \hat{\theta}_{\text{MAP}}) + \log p(\hat{\theta}_{\text{MAP}}) - \frac{1}{2}\log |H|$$
여기서 $\mathbf{H}$는 음의 로그 결합분포의 헤시안 행렬로 MAP 추정치에서 계산할 수 있습니다. 위 식에서 볼 수 있다싶이 파라미터에 대한 사전 확률분포가 균등분포라면 ($p(\theta) \propto 1$) 파라미터에 대한 사전 확률분포 항을 없애고 MLE로 사용할 수 있습니다.
$$\log p(\mathcal{D} \mid m) \approx \log p(\mathcal{D} \mid \hat{\theta}_{\text{MAP}}) - \frac{1}{2}\log |H|$$
이제 여기서 해결해야할 것은 $|\mathbf{H}|$입니다. 기본적으로 $\log |\mathbf{H}|$는 모델의 복잡도로 사후 확률분포의 부피를 표현하고 있습니다. 이를 오컴 요소(Occam Factor)라고 말하죠. 향후에 더 자세히 말하겠지만 $\mathbf{H}$는 $N$개의 데이터에 대한 피셔 정보행렬(Fisher Informatoin Matrix; FIM)의 합입니다. 따라서, $\mathbf{H} = \sum_{n = 1}^{N} \mathbf{H}_{i}$가 되고 각 $\mathbf{H}_{n} = \nabla \nabla \log p(y_{i} \mid \theta)$가 됩니다. 그런데 각각 다 계산하게 되면 너무 연산량이 많아질 것으로 예상됩니다. 따라서, 단 하나의 데이터 포인트에 대한 FIM인 $\hat{\mathbf{H}}$을 얻었다라고 가정했을 때 $\mathbf{H}$는 데이터의 개수인 $N$에 따라서 $\hat{\mathbf{H}}$와 선형적인 관계를 가질것으로 예측할 수 있습니다. 그러므로 여기서 $\mathbf{H} \approx N\hat{\mathbf{H}}$로 근사한다고 가정하겠습니다.
$$\begin{align} \log |\mathbf{H}| &\approx \log |N\hat{\mathbf{H}}| \\ &= \log (N^{D_{m} |\hat{\mathbf{H}}|}) \\ &= D_{m} \log N + \log |\hat{H}| \end{align}$$
이때, 행렬식 성질로 사용한 것이 스칼라 $a$와 $D_{m} \times D_{m}$ 행렬 $\mathbf{A}$에 대해 $|a\mathbf{A}| = a^{D_{m}} \mathbf{A}$입니다. 여기서 $D_{m}$은 모델의 파라미터 개수로 차원 수를 나타냅니다. 그리고 $D_{m} \log N$은 샘플 수가 늘어날수록 커지는 복잡도 패널티가 되죠. 마지막으로 $\log |\hat{\mathbf{H}}|$는 데이터 개수 $N$개 무관한 항이므로 최종 BIC를 계산할 때 무시할 수 있습니다. 따라서, 최종 BIC 식은 다음과 같이 쓸 수 있습니다.
$$\begin{cases} &J_{\text{BIC}}(m) \approx \log p(\mathcal{D} \mid \hat{\theta}, m) - \frac{D_{m}}{2} \log N \\ &\mathcal{L}_{\text{BIC}} (m) = -2\log p(\mathcal{D} \mid \hat{\theta}, m) + D_{m} \log N \end{cases}$$
첫번째 식은 BIC 점수 그리고 두번째 식은 BIC 손실이라고 부릅니다. 이 과정에서 $N$이 커지게 되면 복잡한 모델에 대해서 더 큰 패널티를 부여하여 단순한 모델을 선택할 가능성을 높히게 됩니다.
2. Akaike Information Criterion(AIC)
$$\mathcal{L}_{\text{AIC}}(m) = -\log p(\mathcal{D} \mid \hat{\theta}, m) + 2D_{m} $$
AIC와 BIC의 가장 큰 차이점은 패널티 항에서 $N$의 유무입니다. 즉, 데이터 개수가 많더라도 AIC는 상대적으로 적은 패널티를 부여하고 이는 오직 모델의 복잡도만 고려하겠다는 의미가 되죠. 이는 자유도가 더 큰 모델을 선호하게 됩니다. AIC는 빈도주의 관점에서 유도되는 식입니다.
3. Minimum Description Length(MDL)
모델 선택을 단순히 “정확도 vs 복잡도” 문제로 보지 않고, 정보이론으로 바라보면 어떤 그림이 나올까요? 바로 MDL(Minimum Description Length), 즉 가장 짧은 코드로 데이터를 표현하는 모델을 고르는 원칙이 나옵니다. 기본적인 아이디어는 "데이터를 전송해야 하는 상황"을 떠올려 봅시다. 보내는 사람(Sender)은 받는 사람(Receiver)에게 데이터를 보낼 때 두 가지를 알려줘야 합니다.
- 어떤 모델을 쓸 건지 (모델 자체를 설명하는 정보)
- 그 모델로 데이터를 어떻게 설명할 건지 (데이터를 압축한 내용)
3.1 모델을 코드로 표현하기
모델을 코드로 표현(전송)한다고 생각해보면, 먼저 파라미터를 “얼마나 정밀하게” 써야 하는지 정해야 합니다. 통계적으로 데이터가 $N$개 일 때 평균·회귀계수 같은 추정량의 표준오차가 대개 $\mathcal{O}(\frac{1}{\sqrt{N}})$로 줄어듭니다. 이는 중심극한정리의 표준오차 공식나 Cramér–Rao 하한에서 바로 확인할 수 있습니다.
- 중심극한정리의 경우 표본 평균이나 회귀계수와 같은 추정량이 데이터가 많아질수록 정규분포 형태로 수렴한다고 말합니다. 이 때, 분산이 데이터 개수 $N$에 반비례하기 때문에 표준편차는 $\frac{1}{\sqrt{N}}$ 꼴로 줄어들죠.
- Cramér–Rao 하한은 조금 더 일반적인 수학적인 결과를 보여주고 있습니다. 어떤 파라미터 $\theta$를 추정할 때 추정량의 분산은 다음과 같습니다.
$$\mathbb{V}[\hat{\theta}] \ge \frac{1}{N \mathbf{I}(\theta)}$$
여기서 $\mathbf{I}(\theta)$는 피셔 정보량(Fisher Informatoin)으로 데이터 하나에 파라미터에 대해 제공하는 정보량을 의미합니다. $N$개의 데이터를 사용하게 되면 정보량이 $N$배가 되어 분산은 그만큼 감소하고 표준편차 역시 $\frac{1}{\sqrt{N}}$이 됩니다.
이러한 결과로 인해 파라미터 값을 그보다 더 미세한 해상도로 전송해봐야 예측력 측면에서 얻는 게 거의 없습니다. 따라서, MDL에서는 파라미터 하나를 $\frac{1}{\sqrt{N}}$ 정도의 격자 간격으로만 구분해도 충분하다고 보고 그 해상도가 바로 필요한 정밀도로 해석합니다.
이제 이 정밀도를 필요한 코드의 길이로 바꾸어보겠습니다. 파라미터 $\theta$가 어떤 유한 공간에 있다고 할 때 이를 $\frac{1}{\sqrt{N}}$ 간격으로 쪼개면 필요한 구간의 개수는 $\sqrt{N}$에 비례하게 됩니다. 그리고 그 인덱스를 지정하는 최소 비트의 수는 $\log_{2} \sqrt{N} = \frac{1}{2} \log_{2} N$입니다. 즉, 파라미터 하나당 $\frac{1}{2} \log N$ 비트면 충분하고 파라미터가 $D_{m}$개면 모델 설명 비용은 $\frac{D_{m}}{2} \log N$이 되는 것이죠.
3.2 데이터 자체를 코드로 표현하기
모델이 정해진 뒤에는 그 모델로 데이터를 표현하는 데 필요한 정보량을 계산해야합니다. 이때 사용하는 값이 바로 NLL로 다음과 같이 계산하죠.
$$\text{NLL}(m) = -\log p(\mathcal{D} \mid \hat{\theta}, m) = -\sum_{n = 1}^{N} \log p(y_{n} \mid \hat{\theta}, m)$$
여기서 $\hat{\theta}$는 선택된 모델 $m$에 대해 데이터셋 $\mathcal{D}$를 이용해서 추정한 파라미터입니다. 각 데이터 포인트가 모델로부터 받을 확률이 높을수록 로그 값이 덜 음수이므로 NLL은 작아지고, 이는 곧 모델이 데이터를 더 효율적으로 설명한다는 뜻이 됩니다.
정보이론 관점에서 보면, NLL 값은 곧 데이터를 인코딩하는 데 필요한 비트 수를 의미합니다. 높은 확률을 주는 모델일수록 NLL이 작아져 더 적은 비트로 데이터를 전송할 수 있고, 낮은 확률을 주는 모델일수록 NLL이 커져 더 많은 비트가 필요합니다. MDL에서는 이 데이터 설명 비용에 앞서 계산한 모델 복잡도 비용 $\frac{D_{m}}{2} \log N$을 더해 계산합니다.
$$\mathcal{L}_{\text{MDL}} = -\log p(\mathcal{D} \mid \hat{\theta}, m) + \frac{D_{m}}{2} \log N$$
놀랍게도, 이 식은 BIC와 거의 똑같이 생겼습니다. 차이가 있다면, MDL은 **“데이터 압축 효율”**이라는 직관적인 스토리로 해석할 수 있다는 점이죠. 그래서 MDL은 흔히 **Two-part Code**라고도 불립니다. 결국 MDL은 단순히 수식을 돌리는 게 아니라, “내 모델이 데이터를 얼마나 짧게, 깔끔하게 설명할 수 있나?”를 묻는, 아주 직관적이면서도 강력한 모델 선택 기준입니다.
4. Widely Applicable Information Criterion(WAIC)
복잡한 모델일수록 파라미터들이 서로 얽혀 있거나, 일부는 데이터로는 식별이 잘 안 되는 경우가 많습니다. 이런 상황에서는 BIC, AIC, MDL 처럼 파라미터 개수를 직접 세서 복잡도 패널티를 주는 것에 한계점이 존재합니다. 특히, 헤시안 행렬 $\mathbf{H}$가 특이행렬인 과매개 모델에서는 아예 사용할 수 없습니다. 이러한 문제를 해결하기 제안된 정보량 측정 방식이 WAIC입니다. 이는 Watanabe–Akaike Information Criterion라고도 불립니다.
WAIC는 복잡도를 파라미터 개수 대신 실제 예측의 불확실성으로 정의합니다. 먼저 **기대 로그 점별 예측밀도(Expected Log Pointwise predictive Density; ELPD)**를 구합니다.
$$\text{ELPD}(m) = \sum_{n = 1}^{N} \log \mathbb{E}_{\theta \mid \mathcal{D}, m} \left[ p(y_{n} \mid \theta, m) \right]$$
즉, 사후 확률분포에서 여러 파라미터 샘플을 뽑아 각 데이터 포인트를 예측하고, 그 예측 확률의 평균을 로그로 계산하는 거죠. 여기에 복잡도 항 $C(m)$을 더합니다.
$$C(m) = \sum_{n = 1}^{N} \mathbb{V}_{\theta \mid \mathcal{D}, m} \left[ p(y_{n} \m,id ) \right]$$
이 값이 크다는 것은 데이터 하나에 대해서는 사후 확률분포에 대한 파라미터 샘플마다 예측이 크게 달라진다는 의미이고 이는 곧 모델이 너무 유연하거나 불확실하다는 것을 의미합니다. 최종 WAIC 손실은 이렇게 정의됩니다.
$$\mathcal{L}(m) = -2 \text{ELPD}(m) + 2C(m)$$
WAIC의 장점은 사후 확률분포를 기준으로 평가하므로, 사전 확률분포에 민감한 주변우도보다 안정적이고, 파라미터 공간이 복잡하거나 과매개된 모델에서도 쓸 수 있다는 점입니다. 계산은 주로 몬테카를로 샘플링으로 근사합니다. 쉽게 말해, WAIC는 “이 모델이 새 데이터를 얼마나 안정적으로 예측할 수 있는지”를 직접 측정해주는, 훨씬 실전적인 모델 선택 도구입니다.