MLE(Maximum Likelihood Estimation)을 이해하기 위해서는 먼저 Likelihood에 대해서 이해해야 한다. Likelihood란 어떤 일이 일어날 ‘가능도’를 뜻하기 때문에 확률로 해석하는 게 더 매끄럽다. 하지만 확률(Probability)과는 조금 다른 의미가 있다. Probability는 주어진 확률 분포가 고정된 상태에서 관측되는 사건이 변화될 때를 의미한다면, Likelihood는 관측된 사건이 고정된 상태에서, 확률 분포가 변화될 때를 표현하는 의미이다. 따라서 MLE는 이 Likelihood가 최대가 되는 값을 구하는 과정, 즉 관측되는 데이터들을 가장 잘 모델링하는 확률분포의 parameter를 찾는 과정이다.
로지스틱 회귀모델에서 MLE를 위해 다음과 같은 식을 세울 수 있다. $y$가 1일 때를 $\pi$ , $y$ 0일 때를 $1-\pi$ 라고 한다면,
$P(y_{i}=1) = \pi_{i}$
$P(y_{i}=0) = 1-\pi_{i}$
여기서 likelihood function은 다음과 같다.
$f_i(y_i) = \pi(x_i)^{y_i}(1- \pi (x_i))^{1-y_i} \quad\quad i = 1, 2, ... , n$
$L = \displaystyle \prod_i f_i(y_i) = \prod_i \pi (x_i)^{y_i}(1- \pi (x_i))^{1-y_i}$
그런데 product 연산은 최대화화기 어렵기 때문에 여기서 log를 취하면 로그 함수의 성질로 인하여 product가 sigma로 바뀌고, 곱은 합으로 바뀌며 로그의 지수 법칙도 적용할 수 있다. 그러면,
$\text{log} L = \displaystyle\sum_{i=1}^{n} \{\text{log} \pi(x_i)^{y_i}(1-\pi(x_i))^{1-y_i} \}$
$\;\quad\quad=\displaystyle\sum_{i=1}^n \{y_i\text{log}\pi(x_i)+(1-y_i)\text{log}(1-\pi(x_i))\}$
이렇게 변환될 수 있다. 여기서 수치적 최적화를 위해서 이렇게 변환한 log likelihood에 마이너스(negative)를 적용한다(log 함수는 단조 함수이기 때문에 negative 적용이 가능하다). 따라서 다음과 같이 표현할 수 있다.
$-\text{log}L=-\displaystyle\sum_{i=1}^n \{y_i\text{log}\pi(x_i)+(1-y_i)\text{log}(1-\pi(x_i))\}$
그런데 cross entropy의 식을 보면 다음과 같다.
$C(\pi(x),y) = -y\text{log}\pi(x) - (1-y)\text{log}(1-\pi(x))$
$\underset{\beta}{\operatorname{min}}\;C(\pi(x),y)$
Cross entropy는 negative log likelihood와 동일한 형태를 가지는 것을 알 수 있다. 즉, MLE를 최대화하는 것이 cross entropy를 최소화하는 것과 수학적으로 동등하다고 할 수 있다.
'AI > Deep Learning' 카테고리의 다른 글
Activation function, 활성함수의 특징 (0) | 2024.11.30 |
---|---|
PSNR과 SSIM 설명 (1) | 2024.02.06 |
AutoEncoder(AE) (0) | 2023.08.25 |
Deep Neural Network (DNN) (0) | 2023.05.17 |
퍼셉트론(perceptron)과 Multilayer Perceptron(MLP) (0) | 2023.05.16 |
댓글