1. 정의(Definition)
모델의 파라미터를 추정할 때 가장 흔히 쓰이는 방법은 훈련 데이터에 가장 높은 확률을 부여하는 파라미터를 고르는 것 입니다. 이를 최대우도추정(Maximum Likelihood Estimation; MLE)라고 부르며 다음과 같이 정의됩니다.
$$\hat{\theta}_{\text{mle}} = \text{argmax}_{\theta} p(\mathcal{D} \mid \theta) $$
여기서 $\mathcal{D}$는 전체 훈련 데이터를 의미합니다. 대부분의 경우 각 훈련 샘플은 같은 분포에서 독립적으로 추출(Independent and Identically Distributed; IID)되었다는 가정을 합니다. 이를 통해 조건부 우도는 다음과 같이 곱으로 전개할 수 있습니다.
$$p(\mathcal{D} \mid \theta) = \prod_{n = 1}^{N} p(y_{n} \mid x_{n}, \theta)$$
일반적으로 확률의 곱보다는 로그 우도(Log Likelihood)를 도입하여 덧셈으로 취급하게 되면 계산이 더 간편해집니다.
$$l(\theta) = \log p(\mathcal{D} \mid \theta) = \sum_{n = 1}^{N} \log p(y_{n} \mid x_{n}, \theta)$$
따라서, 기존의 MLE를 다음과 같이 표현할 수 있습니다.
$$\hat{\theta}_{\text{mle}} = \text{argmax}_{\theta} \sum_{n = 1}^{N} \log p(y_{n} \mid x_{n}, \theta)$$
이후에 더 자세히 배우겠지만 대부분의 최적화 알고리즘은 함수를 최소화하도록 설계되어 있습니다. 그래서 최적화 목적함수를 음의 로그우도(Negative Log Likelihood; NLL)로 정의하는 것이 일반적입니다.
$$\text{NLL}(\theta) = -\log p(\mathcal{D} \mid \theta) = -\sum_{n = 1}^{N} \log p(y_{n} \mid x_{n}, \theta)$$
따라서, NLL을 최소화하면 MLE와 동일한 파라미터를 얻게 됩니다. 이때, 조건부가 아닌 비지도(Unsupervised) 모델의 경우를 고려해보도록 하겠습니다. 만약, 입력(조건) $x_{n}$ 없이 출력 $y_{n}$만 있는 비지도 학습 상황이라면 MLE는 다음과 같이 단순화 됩니다.
$$\hat{\theta}_{\text{mle}} = \text{argmax}_{\theta} -\sum_{n = 1}^{N} \log p(y_{n} \mid \theta)$$
반대로 입력과 출력을 공동으로 다루는 모델이라면, MLE는 다음과 같이 표현됩니다.
$$\hat{\theta}_{\text{mle}} = \text{argmax}_{\theta} -\sum_{n = 1}^{N} \log p(y_{n}, x_{n} \mid \theta)$$
2. 최대우도추정의 정당화(Justification for MLE)
2.1 베이지안 관점
베이지안 방법에서 파라미터의 사후 분포 $p(\theta \mid \mathcal{D})$를 구해 의사결정을 내립니다. 그런데 균일 사전분포를 가정하고 사후 분포를 점 질량으로 근사하면 MLE와 동일한 값을 얻습니다. 이게 무슨 말인지 좀 더 자세히 알아보도록 하겠습니다. 먼저 사후 분포를 델타 함수로 근사한다고 가정하면 $p(\theta \mid \mathcal{D}) = \delta(\theta - \hat{\theta}_{\text{map}})$라고 할 수 있습니다. 이때, $\hat{\theta}_{\text{map}}$는 최대사후, 즉 MAP라고 볼 수 있으며 다음과 같이 정의됩니다.
$$\hat{\theta}_{\text{map}} = \text{argmax}_{\theta} \log p(\theta \mid \mathcal{D}) = \text{argmax}_{\theta} \left( p(\mathcal{D} \mid \theta) + \log p(\theta) \right) $$
저희가 처음에 균일 사전분포라고 가정했기 때문에 $p(\theta) \propto 1$라고 볼 수 있으므로 $\log p(\theta)$는 상수가 됩니다. 따라서, 최적화 과정에서 $\log p(\theta)$는 어떠한 영향을 주지 못하므로 다음과 같이 쓸 수 있습니다.
$$\hat{\theta}_{\text{map}} = \text{argmax}_{\theta} \left( p(\mathcal{D} \mid \theta) + \log p(\theta) \right) = \text{argmax}_{\theta} p(\mathcal{D} \mid \theta) = \hat{\theta}_{\text{mle}} $$
즉, 균일 사전을 쓰고 “점 근사”를 한다면 MAP 추정치가 곧 MLE입니다.
2.2 경험분포와의 근접성 관점
두 번째 관점은 모델이 데이터의 경험분포(empirical distribution)에 가장 가까워지도록 만든다는 점입니다. 이 관점으로 해석하는 거는 조금 어렵기는 하지만 차근차근 풀어서 설명해보도록 하겠습니다.
처음에 저희가 다양한 확률분포에 대해서 알아보았을 때 경험분포는 훈련 데이터에 관측된 값들에 대한 "스파이크"가 있는 델타 함수로 표현할 수 있다고 하였습니다. 따라서 경험분포를 다음과 같이 쓸 수 있죠.
$$p_{\mathcal{D}}(y) = \frac{1}{N} \sum_{n = 1}^{N} \delta(y - y_{n})$$
이때, 모델 분포를 $q(y) = p(y \mid \theta) $라고 할 때 두 분포의 차이를 재는 가장 대표적인 척도가 바로 쿨백-라이블러 발산(Kullback-Leibler Divergence; KL Divergence)입니다. KD 발산에 대한 자세한 설명은 이후에 더 진행하도록 하고 정의는 다음과 같습니다.
$$\begin{align} D_{\mathbb{KL}} (p || q) &= \sum_{y} p(y) \log \frac{p(y)}{q(y)} \\ &= \underbrace{\sum_{y} p(y) \log p(y)}_{-\mathbb{H}(p)} \underbrace{-\sum_{y} p(y) \log q(y)}_{\mathbb{H}_{\text{ce}}(p, q)} \end{align}$$
여기서 $\mathbb{H}(p)$는 확률분포 $p$의 엔트로피이고 $\mathbb{H}_{\text{ce}}(p, q)$는 두 확률분포 $p$와 $q$의 교차 엔트로피를 의미합니다. 이때, $D_{\mathbb{KL}}(p || q) \ge 0$이며 $D_{\mathbb{KL}}(p || q) = 0$인 것과 $p = q$, 즉 두 분포가 동일한 분포인 것은 동치입니다. 위 식에 $p(y) = p_{\mathcal{D}}(y)$를 대입하면 다음과 같이 식을 전개할 수 있습니다.
$$\begin{align} D_{\mathbb{KL}} (p || q) &= \sum_{y} \left[ p(y) \log p(y) - p(y) \log q(y) \right] \\ &= \sum_{y} \left[ p_{\mathcal{D}}(y) \log p_{\mathcal{D}}(y) - p_{\mathcal{D}}(y) \log q(y) \right] \\ &= -\mathbb{H}(p_{\mathcal{D}}) - \frac{1}{N} \sum_{n = 1}^{N} \log p(y_{n} \mid \theta) \\ &= \text{const} + \text{NLL}(\theta) \end{align}$$
이 말은 고정상수 $\mathbb{H}(p_{\mathcal{D}})$는 최적화에 영향을 주지 않기 때문에 KL 발산 최소화 ↔ NLL 최소화 ↔ MLE임을 알 수 있습니다.
2.3 지도(조건부) 설정
마지막으로 입력 $x$와 출력 $y$를 함께 고려해보도록 하겠습니다. 그러면 경험분포는 다음과 같이 쓸 수 있죠.
$$p_{\mathcal{D}}(x, y) = p_{\mathcal{D}} (y \mid x)p_{\mathcal{D}}(x) = \frac{1}{N} \sum_{n = 1}^{N} \delta(x - x_{n})\delta(y - y_{n})$$
이제 조건부 KL 발산의 기대값을 구하면 다음과 같습니다.
$$\begin{align} \mathbb{E}_{p_{\mathcal{D}}(x)} \left[ D_{\mathbb{KL}}(p_{\mathcal{D}}(Y \mid x) || q(Y \mid x)) \right] &= \sum_{x} p_{\mathcal{D}}(x) \left[ \sum_{y} p_{\mathcal{D}} (y \mid x) \log \frac{p_{\mathcal{D}}(y \mid x)}{q(y \mid x)} \right] \\ &= \text{const} - \sum_{x, y} p_{\mathcal{D}}(x, y) \log q(y \mid x) \\ &= \text{const} - \frac{1}{N} \sum_{n = 1}^{N} \log p(y_{n} \mid x_{n}, \theta) \end{align}$$
결국 조건부 NLL 최소화와 같으므로, 지도학습에서도 MLE는 “데이터 분포에 가장 가까운 모델”을 찾는 방법이라 볼 수 있습니다.
지금까지 결과를 요약하자면 다음과 같습니다.
- 베이지안 근사: 균일 prior + 점 근사를 취하면 MAP = MLE.
- 분포 근접성: 모델 분포가 경험분포에 가장 가까워지도록 KL 발산을 최소화하는 과정이 곧 NLL(음의 로그우도) 최소화, 즉 MLE.
결론적으로 MLE는 “최대 확률”을 넘어서, 베이지안 해석과 정보 이론적 관점 모두에서 타당한 파라미터 추정 방법임을 알 수 있습니다.