ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Machine Learning] 최대우도법 vs. 베이즈 추정법(Maximum Likelihood Estimation vs. Bayesian Estimation)
    Informatik 2022. 1. 31. 18:56
    반응형

    지난 포스팅에서 MLE 기법을 다뤘고 알려지지 않은 분포에 대해 모수 추정(Parameter Estimation)을 하는 예시를 배웠다.

     

    [Machine Learning] 선형 분류(Linear Classifier)

    선형 분류는 일차원 혹은 다차원 데이터들을 선형 모델(Linear Model)을 이용하여 클래스들로 분류(Classification)하는 머신러닝(Machine Learning) 기법이다. 아래 예시는 2차원 데이터를 어떤 선형 모델로

    minicokr.com

    이번 포스팅은 MLE와 베이즈 추정법을 비교하여 두 기법의 차이점과 결론을 공부한다. 지난 포스팅과 같이 알려지지 않은 어떤 기하 분포(Giometric Distribution)를 따르는 데이터에 대한 모수 추정을 해보자.

    지난 포스팅에서 배운 내용


    아래의 그림은 기하 분포를 따르는 데이터를 두 클래스 $w_1$와 $w_2$로 분류하고자 하는 예를 보여준다. 각각 클래스를 50 % 확률로 분류할 수 있으며 알려지지 않은 모수 $\theta$와 그에 대한 확률 분포 $P(x = k | \theta) = (1 - \theta)^k \theta$로 데이터 세트 $\mathcal {D}_1$와 $\mathcal {D}_2$로 분류된다.

    그림 1
    k = 1일 때의 분류기 예시

    이처럼 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)$임을 보이시오.

    반응형

    댓글

Designed by minicokr.