일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- xgboost
- feature extraction
- Machine Learning
- 차원 축소
- ML
- 앙상블 학습
- Gradient Boosting
- 머신러닝
- Regression
- 트리분할
- ensemble
- 최대사후확률
- multivarite data
- LIKELIHOOD
- 차원축소
- Gbm
- 앙상블
- 알고리즘
- dimension reduction
- pca
- classification
- decision tree
- Gradient Boostnig
- MLE
- LDA
- Gradient boosting machine
- multivarite method
- LGBM
- ensemble learning
- Maximum A Posterior
- Today
- Total
코딩하는 눈송이
Maximum A Posterior(MAP) 본문
Prior, Likelihood, Posterior
이 셋은 Bayes Rule을 다룰 때 정의되는 단어로,
w가 class, x가 변수라고 정의한다면
- Prior(사전확률) : P(w)로, 데이터에 대한 사전 지식이라 설명 가능
- 예를 들어 도시의 평균 기온에 관해 데이터를 수집하고자 한다면, 지난 10년간의 평균 기온이나 전문가의 의견 등을 prior 분포로 사용할 수 있다.
- 평균 기온을 $\theta$로 표현한다면 다음과 같이 parametric 확률분포를 따라간다고 할 수 있다.$$P(\theta) \sim N(\mu_{prior}, \sigma^{2}_{prior})$$
- Likelihood(가능도) : P(x|w)로, w라는 class를 가진 데이터가 x라는 변수를 가질 확률(확률밀도)
- 위와 같이 평균 기온에 관해서 likelihood를 표현할 때 데이터를 X, 평균 기온을 나타내는 parameter을 $\theta$라 할 때$$L(X|\theta) \sim N(\theta, \sigma^{2})$$
- Posterior(사후확률) : P(w|x)로, x가 주어졌을 시 w라는 class 안에 속할 확률
- 이는 사전에 알고 있는 지식을 활용한 prior 분포와 데이터를 통해서 얻은 parameter을 업데이트하여 얻은 새로운 분포라고 볼 수 있다.
- Posterior은 prior과 likelihood의 곱이며 이를 수식으로 표현한다면 $$ Posterior(\theta|X) \sim Prior(\theta) \cdot Likelihood(X|\theta) \sim N(\mu_{prior}, \sigma^{2}_{prior}) \cdot N(\theta, \sigma^{2}) $$
이제 위의 단어들을 상기해가며 Maximum A Posterior(MAP)에 대해 알아보자
MLE의 문제점
앞전 포스팅에 정리한 Maximum Likelihood Estimation(MLE)는 어떤 parameter을 추정할 때 likelihood 값이 최대가 되게 하는 parameter 값을 찾는 과정을 말했다.
그러나 위와 같은 방법에서는 '데이터가 기존에 가지고 있는 사전 정보를 반영하지 못한다'라는 문제점을 가진다.
이는 MLE의 수식을 통해 찾아볼 수 있다.
$$ L(\theta) = P(X|\theta) = P(x_{1}|\theta) \cdot P(x_{2}|\theta) \dotsm P(x_{n}|\theta) $$
여기서 해당 식은 현재 가지고 있는 데이터셋만을 고려하여 매개변수를 결정하기 때문에 데이터셋 이외에 다른 정보는 고려하지 않는다는 점에서 문제가 발생한다.
예를 들어, 데이터가 적거나 불완전한 경우에는 MLE로 얻은 매개변수가 부정확할 수 있다. 또한, 데이터셋에 편향적인 정보가 포함되어 있을 때, MLE는 이러한 편향을 고려하지 않고 그대로 반영하게 된다.
- 편향된 경우
- 동전 던지기의 경우를 보자. 데이터셋에서 10번의 동전 던지기가 나오고 9번의 앞면이 나온다고 하면 MLE로 동전이 앞면이 나올 확률은 0.9로 추정할 것이다.
- 그러나 동전은 공정하기에 0.5를 기대해야 하지만, 이처럼 편향된 결과는 MLE에서 다른 결과를 가져오기도 한다.
- 데이터 부족
- MLE는 많은 데이터를 기반으로 추정하는 것이 좋다. 데이터가 적은 경우 더 큰 불확실성을 가질 수 있는데, 이는 추정된 파라미터의 신뢰성이 떨어지는 원인이다.
- 소규모의 데이터에서는 특히 추정된 파라미터 값이 변동성에 민감하게 영향을 받는다.
위에서 소개한 MLE의 문제점과 관련하여, 데이터에 관한 사전 지식을 반영한 posterior 분포를 통해 이러한 문제점을 보정하고, 데이터의 불확실성을 반영할 수 있다.
Maximum A Posterior(MAP)란?
MAP는 말 그대로 Posterior(사후확률)을 최대화 시키는 작업이다.
여기에서 MAP는 Prior 즉, 데이터와 더불어 우리가 가지고 있는 사전 지식을 함께 반영하여 parameter을 구하는 것이다.
$$MAP(\theta|X) = argmaxP(\theta|X)$$
그렇다면 Posterior을 왜 최대화 시켜주어야 하는가?
Posterior은 확률로 표현하면 $P(\theta|X)$로, 데이터 X가 주어졌을 때 parameter인 $\theta$의 확률 분포이다.
즉, Posterior을 최대화시켜 주는 것은 데이터 X의 특성을 반영해서 확률이 가장 높은 parameter $\theta$를 찾는 것이라고 볼 수 있게 되고, 이는 데이터 특성(prior)을 반영한 parameter을 찾는 연산이라고 볼 수 있다.
이를 통해 데이터의 불확실성을 고려하여 파라미터를 추정할 수 있으며 prior 분포의 정보를 통합하여 보다 견고한 추정 결과를 얻을 수 있다.
앞서 살펴본 동전 던지기(편향의 경우) 문제를 보자
- Prior
- 동전의 prior 분포를 적용해 본다면, 동전은 공정하므로 uniform한 prior 분포를 가질 것이다. 앞면이 나올 확률을 $\theta$라고 한다면 $$Prior(\theta) \sim Uniform(0,1)$$
- Likelihood
- 동전 던지기의 likelihood 함수는 이항분포(binomial)로 표현될 것이다.$$Likelihood(X|\theta) \sim Binomial(10,\theta)$$
- Posterior
- Bayes 정리에 따라 posterior 분포는 likelihood의 곱에 비례하며 다음과 같이 식을 쓸 수 있다.$$Posterior(\theta|X) \sim Prior(\theta) \cdot Likelihood(X|\theta) = Uniform(0,1) \cdot Binomial(10,\theta) = Binomial(10,\theta)$$
이렇게 정리해보면, posterior 분포를 사용하게 된다면 posterior 분포 역시 이항분포 형태를 띄게 된다.
MLE와 비교하게 되면 기존의 MLE는 앞면이 나올 확률을 9/10으로 계산한 반면,
MAP에서는 prior의 정보를 적용하여 이항 분포 형태의 posterior 분포를 얻음으로써, 신뢰 구간을 계산하여 불확실성을 반영한 동전의 앞면이 나올 확률에 대한 추정치를 얻을 수 있다.
수학적 접근
Bayes' Rule을 이용해서 이를 수학적으로 풀어보자
A, B 두 확률변수가 있다 가정할 시 Bayes' Rule의 기본 식은
$ p(A|B) = \cfrac{p(B|A)p(A)}{p(B)} $이다.
이를 살짝 변형하게 되면
$ p(A|B) = \cfrac{p(B|A)p(A)}{p(B)} = \cfrac{p(B|A)p(A)}{\Sigma_{A}p(B|A)p(A)} $가 된다.
여기에서 A를 parameter $\theta$, B를 확률 변수 X로 대입해준다면
$ p(\theta|X) = \cfrac{p(X|\theta)p(\theta)}{\int p(X|\theta)p(\theta)d\theta} $
$\theta$가 integral로 표현된 이유는 parameter이 연속 확률 변수로 취급해주기 때문이다.
식이 복잡해 보이지만, 결국 $\int p(X|\theta)p(\theta)d\theta$는 $p(x)$로 표현되며, 이는 하나의 상수인 $\frac{1}{\mu}$로 취급이 가능하다.
그러니 정리하자면 $ p(\theta|X) = \mu \cdot p(X|\theta)p(\theta) $로 표현 가능하다.
자 그러면 Bayes' Estimator를 통해 MAP와 prior의 적용에 관해 수학적으로 접근해 보자
- Bayes' Estimator란?
- Bayesian 접근 방법에서 사용되는 통계적 추정 방법 중 하나이며, 데이터 X가 주어졌을 때 parameter $\theta$에 대한 조건부 기댓값($E[\theta|X[$)
- 주어진 데이터와 Prior 분포를 이용하여 파라미터 값을 추정하며, 추정값은 평균으로 데이터와 prior 분포에 대한 가중치 반영$$\theta_{Bayes} = E[\theta|X]$$
$P(x^t|\theta) $~ $N(\theta, \sigma^{2}) $라는 분포를 가지는 변수가 있다고 하자.
또한 $P(\theta)$ ~ $N(\mu_{0}, \sigma_{0}^{2}) $인 분포를 가진다 하자.($\mu_{0}, \sigma_{0}$는 prior mean과 표준편차)
Bayes' Estimator은 $\theta_{Bayes} = E[\theta | X] = \int \theta p(\theta|X)d\theta $이므로
- $\theta_{MLE} = m$ -> sample mean과 동일하다.
- $\theta_{MAP} = \theta_{Bayes} = E[\theta | X] = \cfrac{N/\sigma^{2}}{N/\sigma^{2} + 1/\sigma_{0}^{2}}m + \cfrac{1/\sigma_{0}^{2}}{N/\sigma^{2} + 1/\sigma_{0}^{2}}\mu_{0} $
밑의 $\theta_{MAP}$의 경우
- N이 증가할 경우 : sample mean(m)에 곱해지는 값이 증가하고, prior mean($\mu$)에 곱해지는 값이 상대적으로 감소해 $\theta_{Bayes}$는 sample mean에 가까워진다.
- N이 감소할 경우 : prior mean($\mu$)에 곱해지는 값이 증가하고, sample mean(m)에 곱해지는 값이 상대적으로 감소해 $\theta_{Bayes}$는 prior mean에 가까워진다.
MLE & MAP
이는 궁극적으로 MLE와 어떤 차이점을 가지는가?
Prior을 반영함에 있어 'ouput을 원하는대로 제어할 수 있다는 점'이 MAP와 MLE의 큰 차이점이다.
예를 들어, parameter의 절댓값이 작기를 원한다면 parameter $\theta$가 0 주변에 분포해 있다는 Prior을 걸어주면 된다.
그렇게 되면 parameter $\theta$는 0에 가까운 output을 가질 것이고, 이러한 제약조건으로 output을 제어할 수 있게 된다.
그렇다면 MAP와 MLE의 값이 동일해지는 경우는 어떠한 경우가 있는가?
두 estimator가 동일한 값을 내놓을 경우, 즉 모든 $\theta$가 등장할 확률이 동일하여 posterior probability가 flat할 경우 MAP와 MLE가 동일해진다.
이는 다르게 말한다면 prior에 대한 knowledge가 없을 경우 동일해진다.
참조
https://hyeongminlee.github.io/post/bnn002_mle_map/
Maximum Likelihood Estimation(MLE) & Maximum A Posterior(MAP) | Hyeongmin Lee's Website
Bayes Rule을 이용한 방식의 가장 큰 단점들 중 하나는 Likelihood의 Probability Distribution을 알아야 한다는 점입니다. 물론 앞선 포스팅에서는 관찰을 통해 Likelihood를 얻었지만, 여간 귀찮은 일이 아닐
hyeongminlee.github.io
https://process-mining.tistory.com/126
MAP estimation (Maximum A Posterior estimation)이란? (MAP와 MLE, MAP estimation의 단점)
Maximum Likelihood Estimation은 우리가 어떤 parameter를 추정할 때, likelihood 값을 최대로 하는 parameter를 찾는 과정을 말한다. 하지만 Maximum Likelihood Estimation은 우리가 기본적으로 알고 있는 데이터의 사전
process-mining.tistory.com
9.3 베이즈 추정법 — 데이터 사이언스 스쿨
.ipynb .pdf to have style consistency -->
datascienceschool.net
'확률론' 카테고리의 다른 글
Bias & Variance (0) | 2023.02.18 |
---|---|
Bayes' Estimator (0) | 2023.01.25 |
Maximum Likelihood Estimation(MLE) (0) | 2023.01.10 |