-
[Machine Learning] 최대우도법 vs. 베이즈 추정법(Maximum Likelihood Estimation vs. Bayesian Estimation)Informatik 2022. 1. 31. 18:56
지난 포스팅에서 MLE 기법을 다뤘고 알려지지 않은 분포에 대해 모수 추정(Parameter Estimation)을 하는 예시를 배웠다.
이번 포스팅은 MLE와 베이즈 추정법을 비교하여 두 기법의 차이점과 결론을 공부한다. 지난 포스팅과 같이 알려지지 않은 어떤 기하 분포(Giometric Distribution)를 따르는 데이터에 대한 모수 추정을 해보자.
지난 포스팅에서 배운 내용
아래의 그림은 기하 분포를 따르는 데이터를 두 클래스 $w_1$와 $w_2$로 분류하고자 하는 예를 보여준다. 각각 클래스를 50 % 확률로 분류할 수 있으며 알려지지 않은 모수 $\theta$와 그에 대한 확률 분포 $P(x = k | \theta) = (1 - \theta)^k \theta$로 데이터 세트 $\mathcal {D}_1$와 $\mathcal {D}_2$로 분류된다.
이처럼 MLE를 이용해 알려지지 않은 확률 분포 모수를 예측할 수 있으며, 예측한 모수에 베이즈 이론을 적용해 데이터를 분류한다.
ML 분류기(ML Classifier)와 베이즈 분류기(Bayes Classifier)
ML 분류기는 어떤 모수 $\theta$가 주어졌을 때, 데이터 세트(Dataset)의 우도(Likelihood)를 최대화하는 모수를 선택하여 사후 확률(Posterior Probability)을 최대화하는 방식을 사용한다. 즉, MLE 기법으로 최적의 모수 $\hat {\theta}$를 구하고,
$$\hat {\theta} = arg \max_{\theta} p(\mathcal {D} | \theta)$$
그 모수를 아래의 식에 대입하여 사후 확률을 구한다.
$$
P(w_i | \mathbf {x}) = \frac {p(\mathbf {x} | w_i ; \hat {\theta}_i) P(w_i)}{\sum_i p(\mathbf {x} | w_i ; \hat {\theta}_i) P(w_i)} \\
\text {where } \hat {\theta}_i \text { is the maximum likelihood parameter for the distribution of class } w_i
$$
베이즈 추정법은 베이즈 이론(Bayes Theorem)으로 우회적으로 사후 확률을 구하고 최대화한다. 우선, 사후 확률을 그대로 구할 수 없으니, 데이터 세트에 조건화한 사후 확률 $P(w_i | \mathbf {x}, \mathcal {D})$을 계산한다.
$$
\begin {align*}
P(w_i | \mathbf {x}, \mathcal {D}) &= \frac {p(\mathbf {x} | w_i, \mathcal {D}) P(w_i | \mathcal {D})}{\sum_i p(\mathbf {x} | w_i, \mathcal {D}) P(w_i | \mathcal {D})} \\
&= \frac {p(\mathbf {x} | w_i, \mathcal {D}_i) P(w_i)}{\sum_i p(\mathbf {x} | w_i, \mathcal {D}_i) P(w_i)}
\end {align*} \\
\text {where } \mathcal {D}_i \text { is a subset of } \mathcal {D}, \text { where belongs to } w_i
$$위의 식 안의 $p(\mathbf {x} | w_i, \mathcal {D}_i)$는 다음과 같이 정리할 수 있다.
$$
\begin {align*}
p(\mathbf {x} | w_i, \mathcal {D}_i) &= \int p(\mathcal {x} | \theta_i, w_i, \mathcal {D}_i) p(\theta_i | w_i, \mathcal {D}_i) d \theta_i \\
&= \int p(\mathcal {x} | \theta_i) p(\theta_i | \mathcal {D}_i) d \theta_i
\end {align*}
$$위는 두 가지 가정하에 계산하였다. ① $\mathcal {D}_i$가 $w_i$를 내포하므로, $w_i$를 따로 명시할 필요가 없다. ② 데이터는 독립적으로 생성되었기 때문에 이전 관찰된 데이터 세트 $\mathcal {D}_i$와 $\mathbf {x}$는 무관하므로 $p(\mathcal {x} | \theta_i, \mathcal {D}_i) \Rightarrow p(\mathcal {x} | \theta_i)$.
$p(\theta_i | \mathcal {D}_i)$는 베이즈 정리에 의해 다음과 같다.
$$
\begin {align*}
p(\theta_i | \mathcal {D}_i) &= \frac {p(\mathcal {D}_i | \theta_i) p(\theta_i)}{p(\mathcal {D}_i)} \\
&= \frac {p(\mathcal {D}_i | \theta_i) p(\theta_i)}{\int p(\mathcal {D}_i | \theta_i) p(\theta_i) d\theta_i}
\end {align*}
$$※ 베이즈 분류기는 알려지지 않은 모수의 사전 분산 $p(\theta)$을 가정해야 한다.
예 1) 기하 분포를 따르는 데이터와 베이즈 분류기
위의 <그림 1>에 따르는 조건을 베이즈 분류해보자.
결과 비교
위의 예시에서 같은 조건으로 ML 분류기로는 $k = 1$일 때, $w_1$로 분류되었던 반면, 베이즈 분류기로는 $w_2$로 분류되었다. 예시처럼 ML과 베이즈 분류기는 항상 같은 분류 결과를 낳지 않는다. 이는 ML 분류기가 오직 관찰된 데이터에 의존하기 때문이다. 베이즈 분류기는 관찰된 데이터뿐만 아니라 사전 분포(Prior Distribution) $p(\theta)$까지 고려하기 때문에 ML 분류기에 비해 데이터에 덜 영향 받는다. 게다가, 더 많은 데이터를 관찰할수록 데이터 분포는 더 뾰족한 모양을 띤다. 즉, 더 높은 신뢰로 해당 클래스에 분류할 수 있는 것이다. 따라서 베이즈 분류기는 데이터의 양이 더 많은 쪽으로 결과를 내놓을 확률이 높다. 위의 예시에서도 데이터의 개수가 더 많은 $w_2$로 분류되었다.
예 2) ML과 베이즈 분류기 결과 차이
머리와 꼬리가 공평하게 던져지지 않는 동전을 7번 던진다고 했을 때, 관찰된 사건(Event)는 다음과 같다.
$$\mathcal {D} = (x_1, x_2, ..., x_7) = (H, H, T, T, H, H, H)$$모든 동전의 결과 $x_1, x_2, ..., x_7$가 아래의 베르누이 분포(Bernoulli Distribution)를 따르며 서로 독립적이다고 가정한다.
$$P(x | \theta) = \begin{cases} \theta & \text {if } x = head \\ 1 - \theta & \text {if } x = tail, \end{cases}\\ \text {where } \theta \in [0, 1] \text { is an unknown parameter.}$$
예 3) 베이즈 추정법의 수렴(Convergence of Bayesian Estimation)
데이터가 확률 밀도 함수 $p(x | \mu) \sim \mathcal {N} (\mu, \sigma^2)$를 따른다고 하자. 이때 $\sigma^2$는 알려져있고 $\mu$는 알려지지 않았으며 사전 분배 $p(\mu) \sim \mathcal {N} (\mu_0, \sigma^2_0)$를 갖는다. 이 조건에서 데이터 세트를 샘플링했을 때, 모수 $\mu$의 사후 확률은 다음과 같다.
$$p(\mu | \mathcal {D}) \sim \mathcal {N} (\mu_n, \sigma^2_n)\\ \text {where } \frac{1}{\sigma^2_n} = \frac {n}{\sigma^2} + \frac {1}{\sigma^2_0}, \ \ \ \frac {\mu_n}{\sigma^2_n} = \frac {n}{\sigma^2} \hat {\mu}_n + \frac {\mu_0}{\sigma^2_0}, \ \ \ \hat {\mu}_n = \frac {1}{n} \sum^n_{k = 1} x_k$$
a) 사후 확률의 분산이 $\sigma^2_n \leq \min (\sigma^2 / n, \sigma^2_0)$임을 보이시오.
사후 확률의 분산 $\sigma^2_n$은 데이터 $x$ 평균의 불확실성과 사전 분배 $p(\mu)$ 평균의 불확실성으로 구성된다.
b) 사후 확률의 평균값이 $\min (\hat {\mu}_n, \mu_0) \leq \mu_n \leq \max (\hat {\mu}_n, \mu_0)$임을 보이시오.
반응형'Informatik' 카테고리의 다른 글
[Machine Learning] 최대우도법(Maximum Likelihood Estimation) (0) 2022.02.09 [Machine Learning] PCA(Principal Component Analysis) (0) 2022.02.09 [Machine Learning] 단순 선형 회귀(Simple Linear Regression) (0) 2022.01.28 [Machine Learning] 회귀(Regression) (0) 2022.01.23 [Machine Learning] 선형 분류(Linear Classification) (0) 2022.01.20