Deep Learning study

베이즈 정리(Bayes theorem)와 최대 우도 추정 (Maximum likelihood estimation, MLE) 본문

AI/Deep learning 을 위한 지식

베이즈 정리(Bayes theorem)와 최대 우도 추정 (Maximum likelihood estimation, MLE)

HwaniL.choi 2020. 4. 12. 18:18
반응형

오늘 정리할 것은 최대 우도 추정(MLE) 방법입니다.

 

MLE를 공부하기 전에 Bayes theorem(베이즈 정리)를 간단하게 알아보겠습니다.

 


Bayes Theorem

 

베이즈 정리는 두 확률변수의 사전확률(prior)와 사후확률(posterior)사이의 관계를 나타내는 정리입니다. 즉 사전확률(prior) 로부터 사후확률(posterior)를 알 수있게해줍니다.

 

B를 관측 데이터, A를 모델 이라고 합시다.

 

$$ P(A \mid B) \ = \ {{(P(B \mid A)P(A)} \over {P(B)}} $$

 

사후확률(posterior) : P(A|B), B가 관측되었을때 A의 를 나타냅니다.

우도(likelihood) : P(B|A), 해당 관측치(B)가 나올 확률을 나타냅니다.

사전확률(prior) : P(A), 관측을 하기 전 이미 알고있는 확률을 나타냅니다.

 

분류(classification)문제를 예로 들면, B를 입력 데이터 A를 클래스의 집합으로 생각 할 수 있습니다. 즉 B가 입력으로 주어졌을때 어떤 클래스 A_i ( i = 1,2,3,4, ... , n )에 속할 확률 P(A_i | B), 즉 posterior를 계산하는 확률문제입니다. 

그렇다면 클래스  A_i 들 가운데 가장 높은 확률값을 가지는 클래스를 찾으면 되는 것 입니다. 

 

다시말하면 P(A_1|B), P(A_2|B) , ... , P(A_n|B) 를 계산하여 가장 높은 확률값을 갖는 클래스를 찾는 것입니다.

 

이후에 할 MLE에 앞서 이러한 방법을 Maximum A Posteriori(MAP) 라고 합니다.

하지만 실질적으로 MAP를 계산하는데는 어려움이 많습니다. 

$$ P(A\mid B) \propto \ P(B \mid A)P(A) $$

위와같이 MAP를 찾는 과정에서 P(A|B)는 사전확률(P(A)) 에 비례하게 되는데 보통은 정보나 데이터의 부족등으로 인해서  사전확률(prior)를 구할 수 있는 경우가 드물기 때문입니다.

 


 

Maximum Likelihood Estimation

 

최대 우도법은 어떤 모수가 주어졌을 때, 원하는 값들이 나올 가능도(Likelihood)를 최대로 만드는 모수를 찾는 방법입니다. 쉽게 말하면 관측된 데이터가 나올 확률을 최대로 만드는 모수(parameter)를 찾는다는 것입니다.

위의 MAP의 예시와는 반대로, P(B|A_1),P(B|A_2), ... , P(B|A_n) 들의 확률들을 비교하는 것입니다.

 

예를들어, 동전던지는 시행을 4번 했는데 앞이 2번 뒤가 2번 나왔다고 가정합시다. 그렇다면 이러한 데이터(앞2뒤2)이 관측 될 확률이 최대가 되게하는 앞이나올 확률값(m)은 무엇일까요? 사실 우리는 직관적으로 1/2이라는것을 알고 있지만 MLE를 이용하여 구해봅시다. 

 앞이나올 확률(m)이 주어졌을때 앞2뒤2이 나올 확률을 P(앞2뒤2|m)이라고 합시다. 동전던지기에대한 시행은 베르누이 시행이므로 다음 식을 만족합니다. 

 

$$ P(앞2뒤2 \mid \mu) = {4 \choose 2}\mu^{2}(1-\mu)^2 $$

따라서 이 식을 최대로 만드는 m을 찾기위해서 m에 관하여 미분을 한 후 m값을 찾으면 1/2이 나오게 되는 것이지요.

 

마지막으로 간단하게 수식으로 표현해보도록 합시다.

확률변수 X에 대한 확률모형은 확률밀도함수 fx에 의해 정의되고 일반적으로 f(x; θ)와 같은 형태입니다. x는 확률변수가 가질 수있는 실수값이고 θ는 확률밀도함수 즉, 확률모형의 모수(parameter)집합을 대표하는 기호입니다.

 

일반적으로 parameter가 주어지고 x를 추정하는 f(x;θ)로 표현하는게 보통입니다. 하지만 Likelihood는 반대로 x가 주어졌을때의 θ를 추정하는 것 이므로 θ에 대한 함수인 것이죠. 따라서 L(θ;x)로 표기하게 됩니다. (L(θ ;x) = f(x;θ) )

 

이 L 값을 최대로 만드는 θ를 찾아야합니다. 즉, MLE 는 다음과같은 수식으로 표현 할 수 있게됩니다. 

 

$$ \hat{\theta} = \arg\max_{\theta} \mathcal{L} ( \theta) $$

 

여기서 추가적으로 x가 모두 독립적이고 동일한 확률분포를 가지고 있다면 다음이 성립합니다.

$$ \mathcal{L}(\theta) = \prod f(x \mid \theta) $$

 

그렇다면 이 경우엔 단조증가 함수인 Log함수를 이용하여 합 공식으로써 표현 할 수 있습니다. 

$$ \hat{\theta} = \arg\max_{\theta} \sum \log f(x \mid  \theta) $$

반응형
Comments