데이터 분석에서 모델을 다루게 되면 (암묵적으로) 분포를 가정합니다.
모델의 결과를 해석하기 위해서 구글에 검색해보면 MLE와 MAP와 같은 개념이 바탕이 됩니다.
MLE(Maximum Likelihood Estimation 이하 MLE), MAP(Maximum A Posteriori 이하 MAP) 는 무엇이고 또 어떻게 다른 걸까요?
글의 요약
- MLE와 MAP를 알기 위해서는 Posterior, Prior, Likelihood에 대해 이해해야 한다.
- MLE는 Likelihood를, MAP는 Posterior를 최대화(Maximize)한다.
- MLE와 MAP는 수식적으로 연관성이 높다. MLE는 관측치에 영향을 많이 받고 MLE는 MAP의 특수한 형태이다.
1. Bayes Theory
MLE와 MAP를 이해하기 위해선 베이즈 이론을 이해해야 합니다.
중/고등 수학때 확률을 공부하면서 어렴풋이 배웠을 아래의 수식은 데이터 모델링 전반을 관통합니다.
A. Posterior
p(theta|x) [위 수식의 좌변]으로 관측치 x가 주어졌을때 theta(=수식을 구성하는 parameters)를 가지는 확률을 의미합니다.
쉽게 말해, 관측치가 주어진 (변수가 존재하는) 확률모형으로 이해하면 좋습니다.
B. Prior
우변의 p(theta)로 theta로 구성된 확률모형입니다.
관측치 x를 통해 특정하고자 하는 함수입니다.
대부분의 현실적 Application의 경우 함수의 본모습을 파악하는것이 사실상 불가능 합니다.(분포가 알려지지 않았거나, 데이터가 부족하거나…)
그렇기에 “미리” 분포를 정해두죠. 그래서 이름이 Prior Distribution입니다.
따라서 Prior는 분석가의 개입의 여지가 가장 큰 확률분포입니다. 같은 문제라도 서로 다른 prior를 사용하여 접근할 수 있다는 의미가 됩니다.
C. Likelihood
우변의 p(x|theta)로 Likelihood라고 일컫는 이 분포는 posterior와 정 반대로 parms이 주어졌을때 x 관측치를 얻을 확률을 말합니다.
즉, 주어지는 parms에 따라서 관측치를 얻을수 있는 확률을 나타내는 모형이라고 할 수 있습니다. posterior와 생긴것이 정 반대죠.
그래서 결국 베이즈 이론은
베이즈이론은 결국 Posterior = Prior * Likelihood / (const) 로 전개됩니다.
즉, Posterior 분포는 Prior와 Likelihood의 곱에 비례한다고 얘기할 수 있을것입니다.
2. MLE vs MAP
MLE와 MAP는 각각 Likelihood와 Posterior를 Maximize시켜 추정치를 얻는 방법론입니다.
그렇다면 정확히 어떻게 다른걸까요? 아래의 예제를 확인해봅시다.
지나가다 지갑을 주워 경찰서에 돌려주고 연락처를 남겼습니다.
지갑을 주운 사람은 오랜기간 솔로라 지갑의 주인이 이성이었으면 좋겠다고 생각합니다.
그래서 구글에서 한국 남여 성비와 지갑 구매자의 성비를 조사합니다.
지갑의 주인이 이성일 확률은 얼마일까요?
이에 대해 MLE, MAP의 해석 관점은 다릅니다.
MLE는 이 확률을 단순히 남,여 중에서 해당 지갑을 가지고 있는 확률이라고 답합니다.
즉, 주어진 현상을 가지고 현상이 추출될 가능성을 가장 높게하는 모수(위 예제는 지갑)를 거꾸로 추적합니다.
반면에 MAP는 남여 지갑 소유비율(Likelihood)과 남여 성비(prior)를 같이 고려해 확률을 구합니다.
즉, 주어진 현상과 더불어 사전 지식(위 예제에서는 한국 남여 성비)을 함께 적용합니다.
수식으로 표현하자면, 다음과 같습니다.
MLE : P(지갑|남자), P(지갑|여자) 의 확률을 비교하자
(=가장 큰 Likelihood를 비교하자)
MAP : P(남자|지갑), P(여자|지갑) 의 확률을 비교하자
(=가장 큰 Posterior를 비교하자)
3. Difference
그렇다면 좀 더 수식적으로 접근했을때, 이 둘은 어떻게 다를까요?
3–1. Likelihood
관측치 x에의 관점에서 Likelihood는 다음과 같이 표현할 수 있을것입니다.
만약 x들이 모두 i.i.d (independent and identical distributed)일 경우 좀 더 단순화 되어 아래와 같이 표현될 수 있을것입니다.
3–2. MLE
MLE는 Likelihood Function을 최대로 하여 추정치를 구하기에 다음과 같이 정리됩니다.
이에 대해 수식적으로 전개하기 위해서는 (iid라고 가정했을때.) logarithm 방법론을 활용해서 전개를 하면 모수에 대한 추정치를 얻을 수 있습니다.
그런데 여기서 몇가지 문제점이 존재합니다.
MLE추정치는 관측결과에 민감하기 때문에 관측의 양/질에 크게 좌우됩니다. 만약 여러번의 동전던지기를 했을때 모두 앞면만 나왔다면 MLE는 이 동전이 앞면만 나오는 unbalance coin이라고 말할것입니다.
3–2. MAP
Posterior는 Prior와 Likelihood에 비례한다는 점을 상기해봅시다.
그렇다면 MAP에 대한 수식 역시 Prior * Likelihood로 전개 되는 점을 쉽게 이해할 수 있을것입니다.
MAP는 실제 사전 확률이 반영된 추정치를 얻을 수 있고 이를 통해서 MLE보다 합리적인 방법론으로 통할 수 있을것같습니다.
그런데 여기서 재밌는 점이 있습니다.
만약 Prior가 Uniform Distribution인 경우에는 어떻게 될까요?
이 경우 모든 Prior값은 Constant(상수)로 치환됩니다. 이에 근거해 수식을 다시 전개해보면..
MAP가 다시 MLE로 돌아왔습니다!
그러니깐 MLE는 MAP의 특수한 경우라고 생각할 수 있을것같습니다.
참고
[1] https://wiseodd.github.io/techblog/2017/01/01/mle-vs-map/
[2] http://sanghyukchun.github.io/58/
[3] https://www2.stat.duke.edu/courses/Spring12/sta104.1/Lectures/Lec24.pdf