이 글은 공돌이의 수학 강의노트에서 게시한 Maximum Likelihood Estimation 유트브 강의 와 사이트 글 을 참고해서 쓴 글입니다. 작성자가 제시한 Attribution-NonCommercial 4.0 International 라이센스를 준수하였음을 명시합니다.
Maximum Likelihood Estimation, MLE
Maximum Likelihood Estimation(MLE)은 모수적인 데이터 밀도 추정방법으로, parameter θ \theta θ 로 이루어진 확률밀도 함수 P ( x ∣ θ ) P(x|\theta) P ( x ∣ θ ) 에서 관측된 sample data, x = { x 1 , x 2 , ⋯ x n } x ={\{x_1, x_2, \cdots x_n\}} x = { x 1 , x 2 , ⋯ x n } 에서 θ \theta θ 를 추정하는 방법 을 말한다.
Likelihood
Likelihood(기여도)는 지금 얻은 데이터가 어떤 분포로 부터 나왔을 가능도 를 말한다.
parameter θ \theta θ 에 대한 sampling distribution에서 sample(x x x )를 추출한다.
likelihood는 sampling data distribution과 sample들 간의 점선의 높이로 나타낼 수 있다. 추출한 sample(x x x )에 대한 확률 밀도 함수 P ( x ∣ θ ) P(x|\theta) P ( x ∣ θ ) 를 구한다. 모든 데이터의 추출이 독립적으로 연달아 발생하기 때문에 곱하기(Π \Pi Π )를 사용한다.
위의 과정을 거쳐서 구한 likelihood function P ( x ∣ θ ) P(x|\theta) P ( x ∣ θ ) 은 다음과 같다. 보통은 log likelihood function의 형태로 L ( θ ∣ x ) L(\theta|x) L ( θ ∣ x ) 와 같이 나타낸다.
P ( x ∣ θ ) = Π k = 1 n ( x k ∣ θ ) P(x|\theta) = \Pi^n_{k=1}{(x_k|\theta)} P ( x ∣ θ ) = Π k = 1 n ( x k ∣ θ )
L ( θ ∣ x ) = log ( P ( x ∣ θ ) ) = ∑ i = 1 n log P ( x i ∣ θ ) L(\theta|x) = \log(P(x|\theta)) = \sum^n_{i=1}{\log{P(x_i|\theta)}} L ( θ ∣ x ) = log ( P ( x ∣ θ ) ) = i = 1 ∑ n log P ( x i ∣ θ )
log likelihood function을 사용해서 찾고자 하는 parameter θ \theta θ 에 대해 L ( θ ∣ x ) {L(\theta|x)} L ( θ ∣ x ) 함수가 정규분포 함수 꼴 일테니까 θ \theta θ 에 대해 편미분했을 때 0이 되도록 하는 θ \theta θ 를 찾아서 likelihood function을 최대화 하게 된다. ∂ ∂ θ L ( θ ∣ x ) = ∂ ∂ θ log ( P ( x ∣ θ ) ) = ∑ i = 1 n ∂ ∂ θ log ( P ( x i ∣ θ ) ) = 0 {\partial \over {\partial \theta}} \, {L(\theta|x)} = {\partial \over {\partial \theta}} \, \log(P(x|\theta)) = \sum^n_{i=1} {\partial \over {\partial \theta}} \log(P(x_i|\theta)) = 0 ∂ θ ∂ L ( θ ∣ x ) = ∂ θ ∂ log ( P ( x ∣ θ ) ) = i = 1 ∑ n ∂ θ ∂ log ( P ( x i ∣ θ ) ) = 0
Example of MLE
평균(μ \mu μ )와 분산(σ 2 \sigma^2 σ 2 )을 모르는 정규분포에서 sample x = { x 1 , x 2 , ⋯ x n } x ={\{x_1, x_2, \cdots x_n\}} x = { x 1 , x 2 , ⋯ x n } 를 추출했을 때, 이 sample x들의 값을 이용해서 모분포의 평균과 분산을 추정해보자. 이때 모분포의 추정 평균은 μ ^ \hat{\mu} μ ^ , 추정 분산을 σ 2 ^ \hat{\sigma^2} σ 2 ^ 이다. 이를 MLE로 증명해보자.
μ ^ = 1 n ∑ i = 1 n x i \hat{\mu}= {1 \over n}\sum^n_{i=1}x_i μ ^ = n 1 i = 1 ∑ n x i
σ 2 ^ = 1 n ∑ i = 1 n ( x i − μ ) 2 \hat{\sigma^2}= {1 \over n}\sum^n_{i=1}(x_i-\mu)^2 σ 2 ^ = n 1 i = 1 ∑ n ( x i − μ ) 2
모분포가 정규분포라고 했을 때에 각 sample x i x_i x i 의 sample distribution은 다음과 같이 나타낼 수 있다.
f μ , σ 2 ( x i ) = 1 σ 2 π e x p ( − ( x i − μ ) 2 2 σ 2 ) f_{\mu,\sigma^2 }(x_i) = {1 \over \sigma \sqrt{2\pi}}exp(-{(x_i-\mu)^2\over2\sigma^2 }) f μ , σ 2 ( x i ) = σ 2 π 1 e x p ( − 2 σ 2 ( x i − μ ) 2 )
sample x i x_i x i 를 독립적으로 추출할 때에 likelihood P ( x ∣ θ ) P(x|\theta) P ( x ∣ θ ) 는 다음과 같이 나타낼 수 있다.
P ( x ∣ θ ) = Π i = 1 n f μ , σ 2 ( x i ) = Π i = 1 n 1 σ 2 π exp ( − ( x i − μ ) 2 2 σ 2 ) P(x|\theta) = \Pi^n_{i=1}f_{\mu,\sigma^2 }(x_i) = \Pi^n_{i=1}{{1 \over \sigma \sqrt{2\pi}}\exp(-{(x_i-\mu)^2\over2\sigma^2 })} P ( x ∣ θ ) = Π i = 1 n f μ , σ 2 ( x i ) = Π i = 1 n σ 2 π 1 exp ( − 2 σ 2 ( x i − μ ) 2 )
log likelihood L ( θ ∣ x ) L(\theta|x) L ( θ ∣ x ) 는 다음과 같이 구할 수 있다.
L ( θ ∣ x ) = log ( P ( x ∣ θ ) ) = ∑ i = 1 n log 1 σ 2 π exp ( − ( x i − μ ) 2 2 σ 2 ) L(\theta|x) = \log(P(x|\theta)) = \sum^n_{i=1}{\log{{1 \over \sigma \sqrt{2\pi}}\exp(-{(x_i-\mu)^2\over2\sigma^2 })}} L ( θ ∣ x ) = log ( P ( x ∣ θ ) ) = i = 1 ∑ n log σ 2 π 1 exp ( − 2 σ 2 ( x i − μ ) 2 )
= ∑ i = 1 n { log ( exp ( − ( x i − μ ) 2 2 σ 2 ) ) − log ( σ 2 π ) } = \sum^n_{i=1}\{{{{\log ({\exp(-{(x_i-\mu)^2\over2\sigma^2 })})- \log(\sigma \sqrt{2\pi})}}}\} = i = 1 ∑ n { log ( exp ( − 2 σ 2 ( x i − μ ) 2 ) ) − log ( σ 2 π ) }
= ∑ i = 1 n { − ( x i − μ ) 2 2 σ 2 − log ( σ ) − l o g ( 2 π ) } = \sum^n_{i=1}{\{-{(x_i-\mu)^2\over2\sigma^2}}-\log(\sigma)-log(\sqrt{2\pi})\} = i = 1 ∑ n { − 2 σ 2 ( x i − μ ) 2 − log ( σ ) − l o g ( 2 π ) }
log likelihood를 μ \mu μ 에 대해서 편미분하게 되면
∂ ∂ μ L ( θ ∣ x ) = − 1 2 σ 2 ∑ i = 1 n ∂ ∂ μ ( x i 2 − 2 x i μ + μ 2 ) {\partial \over \partial\mu}{L(\theta|x)} = - {1\over2\sigma^2}\sum^n_{i=1}{\partial \over \partial\mu}(x_i^2-2x_i\mu+\mu^2) ∂ μ ∂ L ( θ ∣ x ) = − 2 σ 2 1 i = 1 ∑ n ∂ μ ∂ ( x i 2 − 2 x i μ + μ 2 )
= − 1 2 σ 2 ∑ i = 1 n ( − 2 x i + 2 μ ) = 1 σ 2 ∑ i = 1 n ( x i − μ ) = 1 σ 2 ( ∑ i = 1 n x i − n μ ) = 0 = -{1\over2\sigma^2}\sum^n_{i=1}(-2x_i+2\mu) = {1\over\sigma^2}\sum^n_{i=1}(x_i-\mu) = {1\over\sigma^2}(\sum^n_{i=1}x_i-n\mu) = 0 = − 2 σ 2 1 i = 1 ∑ n ( − 2 x i + 2 μ ) = σ 2 1 i = 1 ∑ n ( x i − μ ) = σ 2 1 ( i = 1 ∑ n x i − n μ ) = 0
식을 정리하게 되면 모분포의 추정 평균은 μ ^ = 1 n ∑ i = 1 n x i \hat{\mu}= {1 \over n}\sum^n_{i=1}x_i μ ^ = n 1 ∑ i = 1 n x i 로 동일하게 나온다. 동일한 방법으로 log likelihood를 σ \sigma σ 에 대해서 편미분하게 되면 모분포의 추정 분산은 다음과 같이 구할 수 있다.
∂ ∂ σ L ( θ ∣ x ) = − n σ − 1 2 ∑ i = 1 n ( x i − μ ) 2 ∂ ∂ σ ( 1 σ 2 ) {\partial \over \partial\sigma}{L(\theta|x)} = -{ n\over\sigma} - {1\over2}\sum^n_{i=1}(x_i-\mu)^2{\partial \over \partial\sigma}({1\over\sigma^2}) ∂ σ ∂ L ( θ ∣ x ) = − σ n − 2 1 i = 1 ∑ n ( x i − μ ) 2 ∂ σ ∂ ( σ 2 1 )
= − n σ − 1 σ 3 ∑ i = 1 n ( x i − μ ) 2 = 0 =-{ n\over\sigma} - {1\over\sigma^3}\sum^n_{i=1}(x_i-\mu)^2 = 0 = − σ n − σ 3 1 i = 1 ∑ n ( x i − μ ) 2 = 0
따라서 maximum likelihood를 만들어 주는 모분포의 추정 분산은 σ 2 ^ = 1 n ∑ i = 1 n ( x i − μ ) 2 \hat{\sigma^2}= {1 \over n}\sum^n_{i=1}(x_i-\mu)^2 σ 2 ^ = n 1 ∑ i = 1 n ( x i − μ ) 2 임을 알 수 있다.