꺼내먹는지식 준
머신 러닝 정리 1 - MLE, MAP 정리 본문
베이즈는 이미 2번 정리를 했지만, 여러번 볼 수록 좋기에 한번 더 정리를 한다.
Supervised Learning | Unsupervised Learning | |
Label이 있는 learning (분류, regression) | label 없이 주어진 데이터로 패턴 파악(clustering, Filtering) |
Unsupervised Learning 예시: 주어진 신문기사 4만개에서 10개로 분류해보아라.
labeling 과정을 거칠 필요가 없이 clsutering 하면 된다.
이항 분포
이산 확률 분포
$$\textrm{n번중 k번 성공}$$
$$f(k;n,p) = P( K = k ) = \binom{n}{k} \, p^k (1-p)^{n-k}$$
$$\binom{n}{k} = \frac{n!}{k! (n-k)!} = \, ^n C_{k} $$
$$\rightarrow \textrm{독립시행}$$
독립시행
독립시행에 대한 이해가 필요
주사위 던지기
A: 6의 양의 약수가 나오는 사건 {1, 2, 3, 6}
$$P(A) = \frac{n(A)}{n(S)} = \frac{4}{6} = \frac{2}{3}$$
5번의 시행에서 사건 A가 3번 일어날 확률
단순하게 생각하면 아래와 같다.
$$\frac{2}{3}^3 \times \frac{1}{3}^2$$
하지만 5번의 시행에서 사건 A가 3번 일어날 경우가 한가지만 있는 것이 아니다.
실제는 아래와 같다.
$ ^n C_{r} $
순서를 고려하지 않는 조합이다. (매 시행시 일어날 확률이 P인 사건. n회의 시행 중 r번 일어날 확률)
$\rightarrow$ $^n C_{r}$ $p^r$ $(1-p)^{n-r}$
조합 (Combination): 순서를 고려하지 않음
순열 (Permutation): 순서를 고려
MLE
$$\hat{\theta} = argmax_{\theta} P(D \, |\, \theta \,) = argmax_{\theta} \, \theta^{a_H} (1 - \theta) ^{a_{\tau}}$$
$$= argmax_{\theta} \ln \{ \theta^{a_H} (1 - \theta) ^{a_{\tau}} \}$$
$$= argmax_{\theta} \{ \, a_{H} \ln{\theta} + a_{\tau} \ln{(1 - \theta)} \}$$
log function 은 monotonous 하게 증가하기 때문에 log를 mapping 한 후 구한 최댓값이 기존 최댓값(최대화 되는 점)과 동일하다.
$$\frac{\partial}{\partial \theta} (a_{H} \ln{\theta} + a_{\tau} \ln{(1 - \theta)})$$
미분을 하는 이유는 그냥 극점을 찾기 위함이다. 변화율이 0으로 떨어질때가 극점이기 때문
$$\ln{x}$$
$$\lim_{x \to \infty} (1 + \frac{1}{x})^x$$
각각의 미분법 혹은 극한 잊고 있으면 한번에 과정이 보이지 않는다.
$$\frac{\partial }{\partial x} \ln{x} = \frac{1}{x}$$
$$(1+0)^{\infty} = e \,\,\, \textrm{0과} \, \infty \textrm{처럼 역수를 이루고 있어야 한다.}$$
https://itforfun.tistory.com/220
$$\frac{\partial}{\partial \theta} (a_{H} \ln{\theta} + a_{\tau} \ln{(1 - \theta)}) = 0$$
$$\frac{a_H}{\theta} - \frac{a_{\tau}}{1-\theta} = 0$$
$$\theta = \frac{a_{H}}{a_{\tau}+a_{H}}$$
MLE 측면에서 추정된 값은 $\hat{\theta} = \frac{a_{H}}{a_{\tau}+a_{H}}$ 이다.
$\hat{\theta}$ 는 파라미터의 추정값이지 파라미터가 아니다. 이에 따라 시행의 숫자가 많아질 수록 error 확률이 떨어진다.
에러 Bound
$$P(| \hat{\theta} - \theta^{*}| \geq \epsilon) \leq 2 e^{-2N\epsilon^2}$$
N 이 커지면 커질 수록 Error bound 는 작아진다.
이를 역산하여 error term 인 $\epsilon$ 과 그때의 확률을 구해볼 수 있다.
예를 들어 시행을 100번하여 $\epsilon$ 이 0.1 일 때의 실제 에러가 0.1 보다 클 확률은 0.0338338208 보다 낮다.
이를 PAC (Probably Approximate Correct learning) 이라 한다.
MLE 깔끔한 정리 블로그
https://techblog-history-younghunjo1.tistory.com/70
한마디로 정리하자면:
likelihood 는 주어진 파라미터 (특정 분포)에서 관측값이 등장할 확률이다.
MLE 는 "어떤 파라미터" 가 가장 많은 관측값을 포함하는가.
즉, likelihood 는 아래 이미지 같이 파라미터 마다 관측 값이 등장할 확률이 다르다.
그러므로, likelihood 를 미분하여 극점을 찾으면 그때의 파라미터가 MLE 이다.
MAP
Bayes 가 말하길,
사전에 가지고 있던 "사전 정보"를 파라미터 추정 과정에 가미할 수 있다.
$$P(\theta | D) = \frac{P(D|\theta) P(\theta)}{ P(D)}$$
$$\textrm{Posterior} = \frac{ \textrm{Likelihood} \times \textrm{Prior Knowledge} }{ \textrm{Normalizing Constant} }$$
$$ \frac{ \theta에 대한 사전정보 \times \theta 가 주어졌을 때 데이터를 관측할 \, \textrm{likelihood}}{데이터가 존재할 확률} $$
※Likelihood: 어떤 값이 관측되었을 때 이것이 특정 분포에서 왔을지에 대한 확률 고정 값이 관측 값이다.
MLE, Likelihood 에 대한 정리
https://jjangjjong.tistory.com/41
$P(\theta | D) \propto P(D | \theta) P(\theta)$
$P(D | \theta) = \theta^{a_{H}} (1 - \theta)^{a_{\tau}}$
$P(\theta) = ?$
Beta distribution
$$P(\theta) = \frac{\theta^{\alpha - 1} (1-\theta)^{\beta -1}}{B(\alpha, \beta)}$$
$$B(\alpha, \beta) = \frac{\Gamma(\alpha) \Gamma(\beta)}{\Gamma{\alpha+\beta}}$$
$$\Gamma(\alpha) = (\alpha-1)!$$
$$ P(\theta | D) \propto P(D | \theta) P(\theta) $$
$$ \propto \theta^{a_{H}} (1 - \theta)^{a_{\tau}} \theta^{\alpha - 1} (1-\theta)^{\beta -1}$$
어차피 betsa distribution 의 $B(\alpha, \beta)$ 는 $\alpha, \beta$ 값에 의해 정해지는 상수이다. 이에 따라 생략한다.
MLE 과정에서 극점을 통해 미분한 결과 다음과 같은 결과를 얻었다.
$$P(D | \theta) = \theta^{a_{H}}(1-\theta)^{a_{\tau}}$$
$$\hat{\theta} = \frac{a_{H}}{a_{\tau}+a_{H}}$$
MAP 에서 구하고자 하는 $\theta$ 는 $\hat{\theta} = argmax_{\theta} P(\theta | D)$ 이므로
$$ P(\theta | D)\propto \theta^{a_{H}} (1 - \theta)^{a_{\tau}} \theta^{\alpha - 1} (1-\theta)^{\beta -1}$$
$$\hat{\theta} = \frac{a_{H}+\alpha -1}{a_{H} + \alpha + a_{\tau} + \beta - 2}$$
로 MAP 를 정리할 수 있다. 즉 $\alpha, \beta$ 값을 조정해보며 (prior knowledge) MLE 와 다른 결과값을 만들어 볼 수 있다.
물론 시행이 무수히 많아지게 되면 MLE 와 동일한 값이 된다.
'AI > 머신러닝' 카테고리의 다른 글
머신 러닝 정리 4- Decision Tree (1) | 2022.10.05 |
---|---|
머신 러닝 정리 3 - 룰 베이스 알고리즘이란? (0) | 2022.09.29 |
머신 러닝 정리 2 - 확률 분포 (0) | 2022.09.29 |
베이지안 PYMC3 (0) | 2022.09.27 |
베이즈 아주 얕은 정리 (1) | 2022.09.19 |