딥러닝 공부를 하다 보면 likelihood가 자주 등장한다. 기본적인 내용들을 다시 한번 remind 하기 위해 정리해둔다.
Likelihood를 식으로 표현하면 다음과 같다.
$$ L(\theta|D) $$
$\theta$는 parameter이고 D는 data를 의미한다. 식을 그대로 해석해보면, 가능도는 관측값(D)이 주어졌을 때(given) 관측값이 $\theta$에 대한 확률분포 $P(\theta)$에서 나왔을 확률이다.
likelihood가 익숙하면서 안 익숙한(?) 이상한 느낌이 드는 이유는 likelihood와 비슷하게 생긴 $Pr(D|\theta)$라는 식을 자주 보았기 때문이다. 이 식은 '확률'을 나타내는데 중, 고등학교 과정에서 자주 봤었다. 확률은 가능도와 다르게 확률분포 $P(\theta)$가 주어졌을 때(given) Data가 이 분포에서 관측될 수 있는 빈도를 표현한다.
예를 들어 정규 분포가 주어지고 데이터가 0~1$\sigma$ 사이로 관측될 확률은 34.1% 가 된다. 즉, 확률은 given distribution에서 데이터가 관측되게 될 범위의 area가 된다.
가능도와 확률의 차이는 명확하다. 확률은 주어진 확률분포에서 해당 관측값이 어느 정도 나올지를 표현하고 이 값은 distribution의 area를 통해 구한다. 반면 가능도는 관측 데이터가 있을 때 어떤 분포를 주고 그 분포에서 데이터가 나왔을 확률을 구하는 것이다. 가능도를 구하는 식은 다음과 같다.
$$ L(\theta|x) = P_{\theta} (X=x) = \prod^{n}_{k=1} P(x_{k}|\theta) $$
즉, 가능도는 각 데이터 샘플에서 후보 분포 $P(\theta)$에 대한 y value(밀도)를 (데이터의 추출이 독립적이고 연달아 일어나는 사건이므로) 곱하여 계산한다. 직관적으로 생각했을 때 후보가 되는 분포가 데이터를 잘 설명한다면 likelihood는 당연히 높게 나올 것이다.
예를 들어 위의 그림처럼 파란색 데이터 분포를 설명하는 후보 분포가 1,2,3으로 주어졌다고 가정해보자. 이때 각 분포에 대한 likelihood를 구하면 데이터를 잘 설명하는 2번이 가장 큰 값을 가지게 될 것이다. 이렇게 가장 데이터를 잘 설명하는 분포를 likelihood를 통해 구할 수 있고 이런 방법을 Maximum Likelihood Estimation (MLE)라고 부른다.
다시 한번 MLE를 정의해보면 다음과 같다. 관측된 표본 데이터 집합을 X라고 했을 때 parameter $\theta$로 구성된 확률 밀도 함수(pdf)에서 $\theta$를 추정하는 방법이다. 이 $\theta$는 Likelihood $L(\theta|x)$를 maximize 함으로 찾을 수 있다. 보통은 파라미터 $\theta$에 대해 편미분 하여 그 값이 0이 되도록 하는 파라미터를 찾는다.
'머신러닝&딥러닝 > 기초정리' 카테고리의 다른 글
Neural Network Pruning - 모델 경량화 (2) | 2022.02.24 |
---|---|
Multi-task learning & Meta-learning (0) | 2021.09.23 |
Variational AutoEncoder란? (0) | 2020.11.29 |
KL-divergence with Gaussian distribution 증명 (0) | 2020.11.26 |
Auto Encoder란? - Manifold와 차원 축소 (0) | 2020.03.29 |