[Concept summary] Maximum likelihood estimation

1 분 소요

Likelihood

  • Likelihood란 입력 데이터가 특정 분포에 속할 확률을 뜻한다.

  • 머신러닝 관점에서 말하자면, 모델을 학습시킨다는 것은 입력 데이터 $(X)$ 를 처리하기 위해서 해당 데이터를 잘 표현할 수 있는 우리의 모델 $(\theta)$, 즉 확률 분포를 계속해서 수정해나간다는 것이다.

  • $L(\theta) = p(X\theta)$

  • $\theta = (\mu, \sigma)$

Maximum likelihood estimation

  • 우리는 주어진 데이터셋을 통해서 확률 분포, 즉 우리의 모델을 튜닝해나가야한다.

  • 이를 위해서 데이터를 넣었을 때 Likelihood가 최대가 되는 모델을 선정해야한다. 즉, likelihood를 maximize 해야한다.

  • 이상적인 환경에서 모든 입력 데이터가 독립적이라고 가정했을 때는 아래와 같은 식으로 나타낼 수 있다.

  • $L(\theta)$ $=p(X \theta)=\Pi^{N}{n=1}(x{n}|\theta)$
  • 우리가 최대값을 찾을 때 변곡점을 찾듯이, 여기서도 미분을 통해서 최대값을 도출할 수 있다.

  • 하지만 위 식의 우변은 모든 항들이 곱셈의 형태로 이루어져 있어서 미분이 쉽지가 않다.

  • 따라서 좌우변에 log를 취해주고, -를 곱해줌으로써 미분과 동시에 maximization 문제를 minimization 문제로 변형하여 prediction value와 label 간의 차이를 최소화하는 쪽으로 학습을 진행한다.

  • 즉, $-ln\,L(\theta)$ $=-\Sigma^{N}{n=1}\ln\,p(x{n}|\theta)$ 로 표현할 수 있다.

  • 이를 negative log likelihood 라고 한다.

Negative log likelihood

  • 그럼 실제로 머신러닝을 학습시킬 때, 이 부분이 어디에 반영되있냐?

  • 이 부분은 바로 Loss function (=Cost function) 부분에 반영되어 있고, Cross-Entropy 혹은 MSE 등이 대표적인 Negative log likelihood를 활용한 function 들이다.

  • Cross-Entropy의 식은 미리 언급한 negative log likelihood의 식과 매우 유사하다.

  • x라는 input이 있을 때 정답을 q(x), prediction 결과를 p(x)라고 할 때, $-\Sigma_{c=1}^{C}\ q(x)\ \log{p(x)}$

  • 유일하게 다른점은 앞에 q(x)라는 label이 곱해진 형태라는 것인데, 이는 likelihood를 최대로 만드는 $\theta$ 와 likelihood의 기댓값을 최대로 만드는 $\theta$ 가 같기 때문이다.

  • 같은 이유는 기댓값을 찾는 과정에서 일종의 각각의 likelihood를 scaling 하더라도 그건 단지 scaling 한 것일 뿐이지 실제 $\theta$ 값 자체가 완전 바뀌어버리는게 아니기 때문이다.

총 정리

  • 입력 데이터를 바탕으로 모델을 튜닝하는 것은, 입력 데이터에 적합된 확률 분포를 찾는 것과 같다.

  • 따라서 다중 입력 데이터의 likelihood가 maximize 되는 방향으로 파라미터를 수정하면, 입력 데이터에 최적화 된 확률 분포 (모델)를 찾을 수 있다.

  • 따라서 likelihood를 최대화하는 Maximum likelihood estimation을 수행한다.

  • 하지만 Likelihood를 최대화하는 과정에 미분이 포함되어 있는데, 이 때 다중 입력 데이터로부터 추정된 likelihood들이 모두 곱하는 형태로 주어져 있어서 미분을 수행하기가 어렵기 때문에 log를 붙여줘서 곱셈을 덧셈의 형태로 변환한다.

  • 또한 Maximization 문제를 minimization 문제로 바꿔주기 위해서 Negative log likelihood로 변형하여 학습이라는 문제를 푼다.

  • 이와 같은 학습 방법은 Cross-Entropy 혹은 MSE 형태로써 학습에 나타나게 된다.

댓글남기기