Breaking

2019년 10월 7일 월요일

1.2. MLE Review

이 글은 공부를 위해 적는 것이고 모든 이미지에 대한 저작권은 이 강의를 해주신 KAIST 문일철 교수님과 Edwith에게 있습니다. 
강좌 URL : https://www.edwith.org/machinelearning1_17/lecture/10575/
PDF는 위 강좌 URL을 통해 무료로 다운받을 수 있습니다.
Image 파일 아래의 글들은 제가 강의를 들으면서 중요하다고 생각했던 내용과 저의 약간의 지식을 첨가하여 적어놓습니다. 


배운 것
  • Binomial Distribution
  • i.i.d condition
  • MLE(Maximum Likelihood Estimation)
    0) $argmax_\theta P(D|\theta)$를 구하는 법
    1) ln을 취하는 이유
  • 시행 횟수 N을 높이면 좋은 이유
  • Simple Error Bound
  • PAC(Probably Approximation Correct) Learning

  확률 개괄에 대한 강좌 - 예제를 이용한 맛보기
thumbtack 1. 압정(押釘), 제도핀 (drawing pin)   2. 압정으로 고정시키다
가정 : 압정을 던져서 2가지 중 하나를 판정하는 도박
다만 동전과 다른 점은 1/2, 1/2이 아니다. => Head가 나올 확률은?
경험적 사고를 생각 : 5번 시행 중 Head:3, Tail:2
왜 P(Head) = 3/5, P(Tail) = 2/5일까?
Binomial Distirbution 이항 분포 : 이산적 확률 분포
실험은 Bernoulli experiment라고 지칭
모든 실험은 i.i.d(Identically Independent Distribution) 동일한 상태의 독립적 시행 분포를 가진다는 가정을 한다.
$$P(H) = \theta, P(T) = 1 - \theta$$
$$P(HHTHT) = \theta\theta(1 - \theta)\theta(1 - \theta) = \theta^3(1 - \theta)^2$$
Assumption : n 시행횟수 = 5, k = $a_H$ = 3, p = $\theta$
$a_H, a_T$는 확률이 아니라 Head, Tail에 따라 나오는 숫자 정수 값이다.
$$P(D|\theta) = \theta^{a_H}(1-\theta)^{a_T}$$
Data : Head or Tail에 따른 연속된 데이터 관측
가설 : Thumbtack 도박은 Binomial Distribution을 따른다.
가설을 뒷받침할 수 있도록 하는 $\theta$를 찾아 보자.
이런 $\theta$를 찾아내는 것이 확률의 요지
Maximum Likelihood Estimation(MLE) :
=> 관측 데이터의 확률을 최대화하는 $\theta$를 찾는 방법
$$\hat{\theta} = argmax_\theta P(D|\theta)$$
$\theta$가 주어졌을 때(given condition일 때) Data를 관측할 확률이 최대화하는 $\theta$ = $\hat{\theta}$를 찾아내자.
$$\hat{\theta} = argmax_\theta P(D|\theta) = argmax_\theta \theta^{a_H}(1-\theta)^{a_T}$$
Technic Method : log를 취함으로써 수식을 단순화
$ln$은 monotonously increase 단조 증가 함수이므로 결과적으로 확률 P가 최대화하는 $\hat{\theta}$를 찾아내는 목적에는 큰 차이가 없음. 동일.
$$\hat{\theta} = argmax_\theta ln P(D|\theta) = argmax_\theta {a_H ln \theta + a_T ln (1-\theta)}$$

최대값을 찾기위해서는 미분 Derivative 수행

$${d \over d\theta} (a_H ln \theta + a_T ln (1-\theta)) = 0$$
$${a_H \over \theta} - {a_T \over (1-\theta)} = 0$$
$$\theta = {a_H \over {a_T + a_H}} = \hat{\theta}$$

MLE에서 P가 최대화하는 값 $\hat{\theta}$을 찾은 것
시행 횟수를 늘린다면? 동일한 값이 나오는데 시간을 소모한 것인지 아닌지에 대한 답은?
$\hat{\theta}$를 구한 것은 주어진 parameter를 통해 추론을 한 것
단정지어지는 것이 아님!
시행 횟수를 늘린다는 것은 Error (loss)가 줄어든다는 의미

$\hat{\theta} = {a_H \over {a_T + a_H}}, N = a_H + a_T$를 알고 있음

$\varepsilon>0$일 때 $\theta^*$가 실제 변수라고 할 때

Hoeffding's inequality에 의해 제공되는 확률에서 Simple Upper Bound를 가진다.
$$P(\left\vert \hat{\theta} - \theta^* \right\vert \ge \varepsilon) \le 2e^{-2N\varepsilon^2}$$
N = trial value

$\varepsilon$이나 N이 커지면 $2e^{-2N\varepsilon^2}$ 는 작아진다.


즉 N이 증가하면 Error가 줄어들기 때문에 시행 횟수를 늘리는 것은 의미있다.

$\varepsilon = 0.1$가 되도록 N의 숫자를 알아낼 수 있는가? Yes


Probably Approximate Correct(PAC) Learning


Approximately $\varepsilon = 0.1$의 오차 범위에서는 Correct한 결과물= $\hat{\theta}$인 것

= PAC Learning의 결과물

Probably. Approximation. Correctly