히비스서커스의 블로그

[기계학습 1강] MAP(Maximum A Posterior) 본문

Theory/Machine Learning

[기계학습 1강] MAP(Maximum A Posterior)

HibisCircus 2021. 3. 29. 22:44
728x90

 내용들은 (KAIST Open Online Course)의 인공지능 및 기계학습 개론 1 Chap. 1강 내용을 기반으로 재구성하였음을 먼저 밝힙니다.

 

이미지출처 : (https://gaussian37.github.io/ml-concept-mlemap/)

 

MLE 떠올려보기


이전 MLE($P(D | \theta)$)에서는 동전이 앞면 나올 확률$P(\theta)$을 고정된 값(= 분포를 따르지 않는 상수의 값)이나 알지 못하는 값으로 가정하고 동전을 던져 나온 결과들을 토대로 가장 그럴듯한(= 가장 높은 가능도를 가지는) 값으로 추정하는 방식이었다.

 

2021.03.24 - [Statistics/Machine_Learning] - [기계학습 1강] MLE(Maximum Likelihood Estimation)

 

[기계학습 1강] MLE(Maximum Likelihood Estimation)

※이 내용들은 (KAIST Open Online Course)의 인공지능 및 기계학습 개론 1 Chap. 1강 내용을 기반으로 재구성하였음을 먼저 밝힙니다.※ 먼저 알아둘 것 동전을 던져 나오는 결과가 앞 또는 뒤만 나오는

biology-statistics-programming.tistory.com

 

MAP 간략 소개


이번 MAP는 베이즈 정리를 활용하는데

$$ P(\theta | D) = \frac{P(D|\theta)P(\theta)}{P(D)} $$

여기서 $P(D)$는 관측한 사건$D$이 나올 확률, $\theta$에 대한 사전정보(=확률분포), $P(D|\theta)$는 $\theta$가 주어졌을 때 관측한 사건$D$가 나올 확률(= 가능도)이다.

 

즉, MAP는 베이즈 정리를 통해 사후확률(= 확률분포)를 최대화하는 것이라 할 수 있는데 아래와 같이 나타낼 수 있다.

$$ Posterior = \frac{Likelihood * Prior Knowledge}{Normalizing Constant} $$

 

위의 MAP를 구하는 공식에서 $P(D)$는 중요한 값이 아니다. $\theta$에 관한 정보가 아닌 상수일 뿐이다. 따라서, MAP를 구하는데에는 위에 두 $P(D|\theta)$와 $P(\theta)$를 고려하여 $P(\theta|D) \propto P(D|\theta)P(\theta)$를 살펴보자.

 

 

 

$P(D|\theta)$


이는 앞의 MLE에서 구하는 과정에서 보았듯이 가능도를 나타내는 것이다. 동전을 여러 번 던지는 것은 이항분포를 따르므로 $ P(D|\theta) = \theta^{a_{H}}(1-\theta)^{a_{T}}$ ($a_{H}$는 동전이 앞면 나온 수, $a_{T}$는 동전이 뒷면 나온 수)이다.

 

 

 

$P(\theta)$ 와 $P(\theta | D)$ 같은 형태(공액)로 만들어주기


앞서 말했듯이 $P(\theta)$는 $\theta$에 대한 사전정보로 확률분포를 가지고,  $P(\theta | D)$는 사후확률로 확률분포를 가지고 있다. 베이지안에서는 사전정보의 확률분포와 사후확률의 확률분포가 같은 형태로 만들어 사용하는데 이를 공액이라고 한다. 

 

위의 동전 던지기에서 가능도(= $P(D | \theta)$)는 이항분포를 따른다고 하였는데 가능도가 이항분포로 주어질 때 사전정보의 확률분포(= $P(\theta)$)와 사후확률의 확률분포(= $P(\theta | D)$)가 동일한 분포를 갖게 해줄 수 있는 것이 바로 베타분포이다.

 

 

 

Beta Distribution


베타분포는 $\alpha$와 $\beta$ 각각의 감마함수를  $\alpha$와 $\beta$ 합의 감마함수로 나눠준 꼴로 다음과 같다.

$$ B(\alpha, \beta) =  \frac{\Gamma(\alpha) \Gamma(\beta)}{\Gamma(\alpha + \beta)} $$

 

베타분포에 쓰인 감마함수는 다음과 같다.

$$ \Gamma(x) = \int_{0}^{\infty} u^{x-1} e^{-u} du$$

 

 

 

$P(\theta)$


사전정보의 확률분포를 다음과 같이 넣어주자.

$$ P(\theta) = \frac{\theta^{\alpha - 1} (1 - \theta)^{\beta - 1}}{B(\alpha, \beta)} $$

 

 

 

MLE와 MAP


가능도함수(=$P(D | \theta)$)에서의 MLE를 구해보면 $\hat{\theta} = \frac{a_{H}}{a_{H} + a_{T}}$를 구하였다.

 

사후확률이 가능도함수와 사전확률과 비례하므로

$  P(\theta | D) \propto P(D|\theta)P(\theta) = \propto \theta^{a_{H}}(1-\theta)^{a_{T}} \theta^{\alpha - 1} (1 - \theta)^{\beta - 1} = \theta^{a_{H} + \alpha -1} (1-\theta)^{a_{T} + \beta -1} $에서

 

결과적으로 $\hat{\theta} = \frac{a_{H} + \alpha - 1}{a_{H} + \alpha + a_{T} + \beta -2}$를 구하였다.

 

 

정리해보자면 MAP는 MLE와 달리 사전정보를 고려한 확률의 추정량이다. 하지만, 이는 사건이 많이 발생할수록($a_{H}$, $a_{T}$의 크기가 커질수록) 사전정보가 미치는 영향력을 줄어들게 되어있다. 또한, Beta Distribution에 대한 파라미터라고 볼 수 있는 $\alpha, \beta$는 최적의 값을 찾는 과정이 필요하다.

 

 

 

 

 

 

-히비스서커스-

 

 

 

728x90