가능도(Likelihood)
- 확률 함수를 이용해서 데이터를 만드는 것은 쉽지만, 그 반대는 어렵다. 그런데 현실의 문제는 관찰된 데이터로부터 그 데이터를 잘 설명하는 확률 모델을 만들고 고르는 것이기 때문에, —그래야 그 모델을 이용해 새로운 데이터를 예측할 수 있으니까— 만들어진 모델이 현실의 데이터를 얼마나 잘 설명하는지를 따져야 하는데, 그 개념이 바로 Likelihood이다.
- 파라미터 $\boldsymbol{\theta}$로 정의된 확률 함수 $p(\bold{x};\boldsymbol{\theta})$ —$p_{\boldsymbol{\theta}}(\bold{x})$로 표기하기도 함— 에 대해, 이 확률 함수에 대한 가능도 함수(likelihood function)는 다음과 같이 정의한다.
$$
L(\boldsymbol{\theta};\bold{x}) \triangleq p(\bold{x};\boldsymbol{\theta})
$$
- 확률 함수 $p(\bold{x};\boldsymbol{\theta})$는 고정된 $\boldsymbol{\theta}$를 이용하여 입력 $\bold{x}$에 대한 결과를 계산하는 반면, 가능도 함수 $L(\boldsymbol{\theta};\bold{x})$을 고정된 $\bold{x}$를 이용하여 입력 $\boldsymbol{\theta}$에 대한 결과를 계산한다.
- 이것을 직관적으로 표현하면 Likelihood는 함수의 파라미터 $\boldsymbol{\theta}$가 주어진 데이터 $\bold{x}$를 얼마나 잘 설명하는지를 측정하는 것이라고 할 수 있다.
- 확률 질량 또는 밀도 함수 $p(\bold{x}|\boldsymbol{\theta})$가 현실의 데이터 $(\bold{x}_1, \bold{x}_2,...,\bold{x}_N)$를 얼마나 잘 설명하는지는 해당 함수에 실제로 데이터를 집어 넣고 그 결과 값을 모두 곱해서 측정할 수 있다. 이를 다음과 같은 수식으로 표현할 수 있다.
- 이것이 바로 확률 함수의 Likelihood 계산 방법이다.
$$
L(\boldsymbol{\theta}|\bold{x}_1,\bold{x}_2,...,\bold{x}N) = \prod{i=1}^{N} p(\bold{x}_i|\boldsymbol{\theta})
$$
- 이산형 데이터의 경우 확률 질량 함수는 0-1의 값을 가지므로 그 곱인 likelihood는 0-1사이의 값이 되는 반면, 연속형 데이터의 경우 확률 밀도 함수는 밀도 —구간에 대한 적분값— 를 제공하기 때문에 1보다 클 수 있어서 likelihood가 1보다 클 수 있다.
- 이 때문에 Likelihood는 확률이 아니다.
- 주의)
- 정의에서 사용한 $p(\bold{x};\boldsymbol{\theta})$와 $L(\boldsymbol{\theta};\bold{x})$ 표기는 고정된 변수와 변하는 변수를 나타내는 반면, 실제 함수 값을 계산할 때 $p(\bold{x}|\boldsymbol{\theta})$와 $L(\boldsymbol{\theta}|\bold{x}_1,...,\bold{x}_N)$ 표기는 각각 $\boldsymbol{\theta}$가 주어졌을 때의 $\bold{x}$의 확률과 $\bold{x}_1,...,\bold{x}_N$가 주어졌을 때 $\boldsymbol{\theta}$의 가능도를 의미한다. 비슷해 보이지만 다른 개념이므로 주의.
- 일반적으로 곱으로 계산하는 것보다 log를 씌운 후 합을 계산하는 것이 간편하기 때문에 다음과 같이 Log를 씌운 Log Likelihood를 사용한다.
$$
\log L(\boldsymbol{\theta}|\bold{x}_1,\bold{x}_2,...,\bold{x}n) = \sum{i=1}^{N} \log p(\bold{x}_i|\boldsymbol{\theta})
$$
최대 가능도 추정(Maximum Likelihood Estimation)
- 가능도가 모델이 데이터를 얼마나 잘 설명하느냐에 대한 것이므로, 데이터를 가장 잘 설명하는 모델을 찾는게 필요하고, 그래서 가장 높은 가능도를 찾는 것이 최대 가능도 추정(Maximum Likelihood Estimation, MLE)이다.
- MLE는 확률 함수에서 주어진 표본 데이터를 관찰할 확률을 최대화하는 파라미터를 찾는 것인데, 이것은 분포의 mode(최빈값)을 찾는 것과 연결되어 있다.
- 관찰 된 데이터에 의해 Likelihood를 최대화 하는 것은 다음과 같이 정의 된다.
- 아래 식에서 $p(\mathcal{D}|\boldsymbol{\theta})$는 $\boldsymbol{\theta}$로 파라미터화 된 확률 함수, $\mathcal{D}$는 관찰된 데이터셋(입력 $\bold{x}$), $\argmax_{\boldsymbol{\theta}}$는 주어진 함수 $p(\mathcal{D}|\boldsymbol{\theta})$에서 $\boldsymbol{\theta}$를 최대화 한다는 의미이다.
$$
\hat{\boldsymbol{\theta}}{\text{mle}} \triangleq \argmax{\boldsymbol{\theta}} p(\mathcal{D}|\boldsymbol{\theta})
$$
- 샘플이 동일한 분포에서 독립적으로 뽑혔다고 가정 하면 —이를 independent and identically distributed, iid라고 한다— likelihood는 다음과 같이 된다.
$$
p(\mathcal{D}|\boldsymbol{\theta}) = \prod_{i=1}^{N} p(\bold{y}_i|\bold{x}_i, \boldsymbol{\theta})
$$
- 곱 보다는 log를 씌운 후 합하는 것이 간편하므로 다음과 같이 변경한다.
$$
\hat{\boldsymbol{\theta}}{\text{mle}} = \argmax{\boldsymbol{\theta}} \sum_{i=1}^{N} \log p(\bold{y}_i|\bold{x}_i, \boldsymbol{\theta})
$$