ML and MAP in Bayesian Inference
in projects on Optimizer, Deeplearning, MachineLearning
머신러닝에서 우리는 관측된 데이터로부터 모델의 파라미터를 추정하는 문제를 다룬다. 이때 동일한 데이터를 잘 설명하는 파라미터가 여러 개 존재할 수 있기 때문에, 단순히 데이터 적합성만으로는 하나의 해를 선택하기 어려운 경우가 많다. Bayesian estimation은 이러한 문제를 확률적으로 접근하는 방법으로, 데이터뿐 아니라 파라미터에 대한 사전 지식을 함께 고려하여 추론을 수행한다. 이 과정에서 대표적으로 사용되는 두 가지 방법이 Maximum Likelihood (ML) estimation과 Maximum A Posteriori (MAP) estimation이다. 이 글에서는 ML과 MAP estimation의 기본 정의와 차이를 살펴보고, 이를 간단한 예시를 통해 직관적으로 이해해본다.
Bayesian estimation에서 대표적인 방법으로 Maximum Likelihood (ML) estimation과 Maximum A Posteriori (MAP) estimation이 있다.
ML Estimation
ML estimation은 관측된 데이터 $x$가 주어졌을 때,
해당 데이터를 가장 잘 생성할 수 있는 parameter $\theta$를 찾는 방법이다.
즉 다음을 최대화한다: \[\hat{\theta}_{\text{ML}} = \arg\max_\theta P(x \mid \theta)\]
이는 데이터 $x$를 가장 잘 설명하는 parameter를 선택하는 과정이다.
MAP Estimation
반면
MAP estimation은 관측된 데이터 $x$가 주어졌을 때,
posterior probability $P(\theta \mid x)$를 최대화하는 방법이다.
즉 다음을 최대화한다: \[\hat{\theta}_{\text{MAP}} = \arg\max_\theta P(\theta \mid x)\]
Bayes rule에 의해 다음과 같이 분해된다: \[P(\theta \mid x) = \frac{P(x \mid \theta) P(\theta)}{P(x)}\]
따라서 MAP estimation은 다음과 같이 표현된다: \[\hat{\theta}_{\text{MAP}} = \arg\max_\theta P(x \mid \theta) P(\theta)\]
즉 ML estimation에 prior $P(\theta)$를 추가로 반영한 형태이다.
Example: Hair Length Classification
길이가 30cm인 머리카락이 발견되었을 때, 이 머리카락이 여성 $F$ 또는 남성 $M$에게서 나왔는지 판단한다고 하자.
- 여성: $F$
- 남성: $M$
ML Estimation
ML estimation은 다음 likelihood를 비교한다: \[P(x=30 \mid F), \quad P(x=30 \mid M)\]
여성이라는 가정 하에서 30cm 머리카락이 가질 가능성과, 남성이라는 가정 하에서의 가능성을 비교하는 것이다.
MAP Estimation
MAP estimation은 prior probability까지 함께 고려한다: \[P(F \mid 30) \propto P(30 \mid F) P(F)\] \[P(M \mid 30) \propto P(30 \mid M) P(M)\]
즉, 30cm 머리카락이 관측되었다는 조건에서, 여성일 가능성과 남성일 가능성을 직접적으로 비교한다. 이때 30cm 머리카락이 나올 가능성뿐 아니라, 애초에 여성과 남성이 전체에서 얼마나 흔한지(존재 비율)까지 함께 고려한다.
Key Difference
- ML: likelihood $P(x \mid \theta)$만 고려
- MAP: likelihood와 prior $P(\theta)$를 함께 고려
즉 MAP는 데이터 설명력뿐 아니라 사전적으로 더 그럴듯한 가정까지 반영한 추정 방법이다.
