Graphics Programming

베이즈 학습(Bayes learning) 시뮬레이션 본문

Season 1/플래시

베이즈 학습(Bayes learning) 시뮬레이션

minseoklee 2016. 4. 17. 08:16

참고문헌: Richard O. Duda. Chapter 3: MLE and Bayesian Estimation In Pattern Classification 2ed (pp. 11-13)


Bayes learning simulation - wonderfl build flash online


패턴 인식. 지금까지 학부 수업이 너무 쉽다고 투덜거린 나를 비참하게 만들고 있는 과목. 교재를 아무리 읽어도 너무 어렵다. 베이즈 매개변수 추정을 읽으며 이게 뭔소린가 끙끙 앓다가 코딩을 해보고 감을 잡았다.


일변수 확률 변수 X가 정규 분포를 따르고 펑균이 μ, 표쥰편차가 σ라 하자. μ는 모르고 σ는 아는 상황에서 μ를 추정하고자 한다. (별로 현실적이지 않은 가정으로, 학습을 위해 책에서 설정한 가장 단순한 문제다.)


 이고 다르게 쓰면 다음과 같다.


이제 μ가 평균 , 표준편차 인 정규 분포를 따른다고 가정하자. 는 μ에 대한 최선의 추측, 는 이 추측의 불확실성을 나타낸다. 샘플 을 추출한 후에, 교재에 제시된 베이즈 매개변수 추정법에 따라 추측값 을 계산하고 화면에 그린다. n이 증가함에 따라 은 μ에 가까워지고 은 0에 가까워지며, 그 결과 그래프는 점점 뾰족해진다. 이 과정을 베이즈 학습이라 부른다.


샘플은 다음과 같이 추출한다. 0~1 사이의 실수 y를 균일 분포로 추출한다. y = p(x | μ)로부터 x를 계산한다. 그래프가 좌우 대칭이므로 이를 만족하는 x는 2개인데 무작위로 하나를 선택한다. 그 값을 샘플로 삼는다.


이 진짜 μ와 아무리 차이나도 n이 커지면 μ에 수렴하게 된다. 에 대한 불확실성을 나타낸다고 하였다. 이 μ와 동떨어져있는데 이 아주 작은 값(가령 5 미만)이라면 나는 이 μ와 아주 비슷하다고 주장하는 셈이다. 실제로는 차이가 크기 때문에 잘못된 가정이다. 이 경우 일정 n에서 과 μ의 차이가 커도 그래프가 너무 빨리 뾰족해지고, μ에 수렴하는 속도가 매우 느리다. 하지만 을 크게 잡으면 와 μ의 차이가 똑같이 크더라도, μ에 근접하기도 전에 그래프가 뾰족해지는 것을 막을 수 있다. 단 수렴하는 속도는 더 느리다.

Comments