본문 바로가기
AI/Basics

MLE, MAP

by Ladun 2023. 7. 28.

Introduction


이번 글에서는 MLE와 MAP가 어떤 것이며, 이 둘의 차이에 대해서 정리해보겠습니다.

What is “Bayes's theorem”


베이즈 정리(Bayes’s theorem) 우리가 평소에 확률에 대해서 다룰 때 많이 보는 법칙입니다. 이 정리는 다음과 같은 조건부 확률 계산식입니다.

P(θX)=P(Xθ)P(θ)P(X)P(\theta|X) = \cfrac{P(X|\theta)P(\theta)}{P(X)}
  • XX: 관측된 데이터, Observation
  • θ\theta: Hypothesis를 말하며 데이터를 통해서 추정하고 싶은 값입니다. classification에서는 각 discrete한 클래스 값이 될 수 있고, Linear regression의 경우에는 weight가 될 수 있습니다.
  • P(X)P(X) (marginal probability): 데이터 X에 대한 분포입니다.
  • P(θ)P(\theta) (prior) : Hypothesis에 대해 가지고 있는 선험적 확률입니다. 즉, 모델, 가설에 대해서 사전에 알고 있는 값입니다.
  • P(Xθ)P(X|\theta) (likelihood): 어떤 Hypothesis에서 데이터가 나올 확률입니다. 어떤 가정을 했을 때의 데이터의 분포로 볼 수 있습니다.
  • P(θX)P(\theta|X) (posterior): 데이터가 주어졌을 때의 가설의 분포를 말합니다. 데이터가 주어졌을 때, 어떤 모델에서 나왔을지에 대한 확률입니다.

Maximum Likelihood Estimation?


Maximum Likelihood는 각 단어가 가지고 있는 것처럼 likelihood가 최대화할 수 있는 hypothesis를 구하는 것입니다.

P(θX)=P(Xθ)P(θ)P(X)P(Xθ)P(\theta|X) = \cfrac{P(X|\theta)P(\theta)}{P(X)} \propto P(X|\theta)

기본적으로 주어진 데이터에 대한 분포, hypothesis를 찾고 싶기 때문에, 위와 같이 Likelihood가 posterior에 비례한다는 지식을 기반으로 간접적으로 likelihood를 최대화함으로써 적절한 posterior를 찾는 것입니다.

Maximum A Posterior?


Maximum A Posterior는 직접적으로 posterior를 최대화하는 방식이라고 보면 됩니다.

P(θX)=P(Xθ)P(θ)P(X)P(Xθ)P(θ)P(\theta|X) = \cfrac{P(X|\theta)P(\theta)}{P(X)} \propto P(X|\theta)P(\theta)

P(X)P(X)는 상수이기 때문에 확습시에 영향을 받지 않기 때문에 우측 식에서는 P(X)P(X)를 제외했습니다. 왜냐하면 학습 도중에 데이터가 안 바뀌는 것을 가정하기 때문입니다.

MAP ⇒ MLE


MAP와 MLE는 실제로 형태도 많이 닮아서 어딘가를 잘 수정하면, MAP가 MLE가 됩니다. 즉, MLEMAP의 특수한 경우입니다.

이를 만족하는 조건 prior가 uniform distribution일 때입니다. 사전 지식이 없고 그냥 모든 경우가 동일한 확률을 가지는 경우라고 볼 수 있습니다. 수식적으로 보면 다음과 같습니다.

θMAP=arg maxθilogP(xitheta)+logP(θ)=arg maxθilogP(xitheta)+const=arg maxθilogP(xitheta)=θMLE\begin{aligned} \theta_{\text{MAP}} &= \underset{\theta}{\argmax}\sum_i \log P(x_i|theta) + \log P(\theta)\\ &=\underset{\theta}{\argmax}\sum_i \log P(x_i|theta) + const\\ &=\underset{\theta}{\argmax}\sum_i \log P(x_i|theta)\\ &=\theta_{\text{MLE}} \end{aligned}

prior가 uniform distribution이기 때문에, 모든 경우에 같은 값을 가지게 되고, 그래서 상수 처리할 수 있게 됩니다.

MAP vs MLE


MAP는 prior라는 사전 지식을 기반으로 θ\theta를 추정하는 방식이고, MLE는 단순히 likelihood만으로 θ\theta를 추정하는 방법입니다.

위 설명만으로 보면 MLE는 주어진 observation를 잘 설명하는 θ\theta를 평가하는 과정이고, MLE만으로 θ\theta를 추정할 수 있을텐데 굳이 prior를 곱할까요?

  • 사실 이 질문은 조금 이상하다고 볼 수 있습니다. 예를 들어서 우리가 조금 이상한 동전(찌그러진)을 던지는 것을 통해서 앞,뒷면이 나오는 확률에 대해서 구한다고 볼 때, 일반적인 동전의 앞,뒷면에 대한 사전지식이 있는 경우에는 당연히 사전지식이 있을 때 더 잘 구분할 수 있을 것입니다.
  • 다르게 말하면, 사전 지식이 있는 경우에 좀 더 빠르고, 쉽게 예측할 수 있을 것입니다.
  • 그래서 보통 MAP가 정확도가 더 높습니다. 하지만 정확한 사전지식 prior가 주어지는 경우가 없어서 일반적으로 MLE를 사용합니다.

추가적으로 위와 같은 수식적인 것만으로는 MAP와 MLE의 차이를 직관적으로 이해하기가 어렵습니다. 그래서 다음과 같은 예시를 통해서 좀 더 직관적으로 이해해보겠습니다.

  • 동전을 두 번 던지는 행위를 했을 때, 두 번 다 앞면이 나옴.
    • MLE: p=1.0
    • MAP: 공정한 동전이라고 생각(prior, 0.5), 앞면만 나왔으니 p=0.7정도로 예측.
  • 즉, 단순히 어떤 사건에 경험적인 지식뿐만 아니라, 선험적 지식을 통해서 좀 더 정확한 예측을 진행한다고 보면 될 거 같습니다.

Reference



Uploaded by N2T

'AI > Basics' 카테고리의 다른 글

Maximum Entropy Principle  (0) 2023.07.28
Manifold  (0) 2023.07.28
Mutual Information  (0) 2023.07.24
Probability vs Likelihood  (0) 2023.07.24