본문 바로가기
개발/🦾 머신러닝, 딥러닝

[Bayesian] MLE와 MAP

by 썸머뮤트 2024. 10. 29.

1. 베이즈 확률론이란?

베이즈 확률론이란 고전적인 빈도 주의 확률론과 달리 확률을 믿음의 정도로 해석하는 확률론입니다.
예를 들어 동전의 앞면이 나올 확률이 0.5라고 할 때
빈도주의 확률론은 동전을 1000번 던졌을 때 앞면이 나오는 횟수 500번이 될 것이라고 해석하고,
베이즈 확률론은 동전을 한 번 던졌을 때 앞면이 나왔다는 주장의 신뢰도가 50%라고 해석합니다.
 
 

2. 베이즈 정리란?

베이즈 정리란 사전확률(prior)과, 사후 확률(poesterior)의 관계를 나타내는 정리로, 
이를 활용하면 데이터가 주어지기 전의 사전확률이

데이터가 주어짐에 따라 어떻게 변하는지 계산할 수 있습니다

 

이를 베이즈 확률론의 관점에서 해석하자면
어떤 가설을 상정했을 때, 관찰한 데이터를 기반으로

가설에 대한 신뢰도를 업데이트 한다고 볼 수 있습니다.
 
베이즈 정리를 수식으로 나타내면 아래와 같습니다.

이 때 $H$는 가설, $E$는 실제 관측된 데이터를 의미합니다.
$\textbf{P(H|E)}$는 사후확률(posterior)로 데이터 $E$가 주어졌을 때 가설 $H$가 성립할 확률을 의미합니다.
즉 데이터를 기반으로 갱신한 가설에 대한 신뢰도를 의미합니다.
$\textbf{P(E|H)}$는 우도(likelihood)로 현재 가설이 얼마나 데이터를 얼마나 잘 설명하는지를 의미합니다. 
$\textbf{P(H)}$는 사전확률(prior)로 데이터를 기반으로 갱신하기 전 가설의 신뢰도를 의미합니다.
$\textbf{P(E)}$는 evidence, marginal probability등으로 불리며 관측된 데이터 자체의 분포를 의미합니다.
 
 

3. MLE와 MAP

머신러닝에서는 주로 관찰된 데이터를 가장 잘 설명하는 모델(가설)을 구하는 것에 관심이 있습니다.
즉 베이즈 정리에서 $P(\theta|X)$가 최대가 되는 $\theta$를 구하는 것에 관심을 가집니다.

일반적으로 머신러닝에서는 E, H라는 notation대신 데이터는 $X$, 가설(모델 파라미터)은 $\theta$로 표현합니다.

 

$$P(\theta|X) = \frac{P(X|\theta)P(\theta)}{P(X)} $$
즉 위의 베이즈 정리를 따르면 우항을 최대화하는 $\theta$를 구하는 것이 목표가 되는데,


우항 분모의 $P(X)$는 전체 데이터의 분포로 사실상 변하지 않는 상수이므로

 

$P(X|\theta)P(\theta)$ (분자 전체)를 최대화 하는 $\theta$를 구하는 방식을 Maximum A posterior Pobability(MAP) 방식

 

더 나아가 우리가 상정하는 가설에 대한 분포인 $P(\theta)$ 에 대한 고려까지 제외하고
$P(X|\theta)$ 를 최대화 하는 $\theta$를 구하는 방식을 Maximum Likelihood Estimation (MLE) 방식 이라고 합니다.
 
아래에서는 예시를 들어 두 방식의 차이점을 설명해보도록 하겠습니다.
 
먼저 우리가 머리카락 길이를 보고 남성의 것인지 여성의 것인지를 판단하는 간단한 이진 분류 문제를 풀고 있다고 생각해봅시다.
우리의 목표는 바닥에 떨어진 머리카락의 길이 $x$를 보고 $P(\theta_남 | X)$과 $P(\theta_여 | X)$를 비교해서 
해당 머리카락이 남성의 것인지, 여성의 것인지를 분류하는 것입니다. 
예를 들어  $P(\theta_남|X) > P(\theta_여|X)$ 라면 해당 머리카락은 남성의 것이라고 분류할 것입니다.
 

3-1. MLE 방식으로 문제 해결하기

이 상황에서 MLE 방식으로 문제를 해결한다고 가정해봅시다. 

MLE 방식을 사용하면 $P(\theta_남 | X)$ 과 $P(\theta_여 | X)$ 의 대소관계를 비교하기 위해
$P(X|\theta_남)$ 과 $P(X|\theta_여)$ 의 대소관계를 비교할 것입니다.
만약 $X=5cm$ 의 머리카락을 발견했다면 남성에게서 5cm의 머리카락이 발견될 확률과 여성에게서 5cm의 머리카락이 발견될 확률의 크기를 비교해서 
해당 머리카락이 남성의 것인지, 여성의 것인지를 분류하게 될 것입니다.
일반적으로 남성의 머리카락이 여성의 것보다 짧으므로 이는 합당한 추론과정으로 보입니다.
하지만 만약 해당 머리카락이 전체 인구 중 99퍼센트가 여성인 섬에서 발견된 머리카락이라도 이 추론과정이 합당할까요?
 

3-2. MAP 방식으로 문제 해결하기

MAP 방식에서는 앞서 설명한 바와 같이 $P(\theta)$ 에 대한 고려가 포함되어있습니다.
따라서 전체 인구의 성별 비율 $P(theta_남)$과 $P(theta_여)$까지 고려한 추론을 할 수 있습니다.

MAP 방식을 사용하면 $P(\theta_남 | X)$ 과 $P(\theta_여 | X)$ 의 대소관계를 비교하기 위해

$P(X | \theta_남)P(\theta_남)$ 과 $P(\theta | X)P(\theta_여)$ 의 대소관계를 비교할 것입니다.
따라서 성별의 비율이 5대 5가 아닐 경우 성별의 비율까지 고려한 추론을 할 수 있습니다.
이를 다시 말하면 $P(\theta)$가 uniform distribution일 때 MAP 추론 결과는 MLE의 추론 결과와 같으므로

MLE는 MAP의 special case라고 할 수 있습니다.

 

마무리 

베이즈 정리에 대해 더 알아보고 싶으신 분들은 자료 1, 자료 2를 읽어보시면 좋을 것 같습니다 :)

잘못된 내용이 있다면 알려주시길 바랍니다! 감사합니다 😊