인공지능관련/EM

EM 이해하기2

학위논문통계 2016. 11. 10. 22:57

 

 

1. f(v;a)로 충분한가

 

지난번 글에서 EM 알고리즘에서 은닉변수 H가 없는 오로지 관찰변수 V만의 f(v;a)를 가지고 MLE를 구한다고 했습니다. 분명히 모형에 은닉변수 U가 있는데 이렇게 해도 괜찮을까 하는 생각이 들 수 있습니다. 문제가 없습니다.

 

일반적으로 V와 H와 전혀 관계가 없는, 서로 독립적인 관계이면 U는 전혀 신경 쓸 필요가 없고, 즉 지난번 예의 결측값의 경우이죠, 만역 H와 관련된 우리가 추정해야 하는 모수가 있다고 이건 모형 자체가 잘못된 것입니다. 우리가 관찰한 V=v를 가지고 그 모수에 대해 어떤 추정도 할 수가 없거든요.

 

 

그래서 현실적으로 V와 H가 같이 있는 모형은 V와 H가 어떤 관련성이 있습니다. 그래서 말이 V이지 실제로는 은닉변수 H의 함수라고 생각할 수 있습니다. 즉 V=V(H)라고 할 수 있습니다. 그래서 관찰된 값 v도 v=v(h)라도 볼 수 있습니다. 즉, 우리가 관찰할 수 있는 v값에는 은닉변수 U의 정보를 가지고 있습니다. 그래서 오로지 V만을 가지고도 V와 H, 그리고 V와 H와의 관계에서 나오는 모수 a을 추정할 수가 있는 것이죠.

 

단지 f(v;a)를 구할 때 결합확룰분포 f(v,h;a)에서 주변확률분포 f(v;a)를 구해야 한다는 것만 주의하시면 됩니다.

 

 

 

2. Hardy-Weinberg 문제

 

지난번에 결측값 예에서 보듯이 구태여 EM 알고리즘을 도입해서 MLE를 구할 필요가 없는데 교과서나 논문에서 EM 알고리즘을 도입해 구하는 경우가 제법 있다고 했습니다. 앞에서 이야기한 바와 같이 EM 알고리즘 계산 하는 방법을 소개하기 위해서입니다.

 

 

이번에는 이런 경우의 또 다른 예를 보여 드리겠습니다. Hardy-Weinberg 문제라는 다항분포 추정 문제입니다.

 

일반적인 다항 분포와 이 문제와 비교하면

 

 

현상 X

X=1

X=2

X=3

일번적 다항분포

관찰된 확률

p1

p2

p3=1-(p1+p2)

H-W 문제의

관찰된 확률

a2

2a(1-a)

(1-a)2

실제 구하는 값

Yi=n번 시행에서 X=i가 나오는 횟수

Y1:n번 시행에서 X=1인 횟수

Y2:n번 시행에서 X=2인 횟수

Y3:n번 시행에서 X=3인 횟수

 

 

이 문제를 특별히 H-W 문제라는 이름을 붙인 정확한 이유는 모르겠지만 생물학이나 유전학에서 이런 형태의 문제가 많은 모양입니다.

 

 

일반적인 경우에는 우리의 상식적인 생각은

 

p1=Y1/n, 즉 n번 시행에서 X=1이 관찰된 횟수, p2=Y2/n, p3=Y3/n=(n-Y1-Y2)/n

 

이렇게 되겠죠. 예 이게 맞습니다. MLE를 써도 이렇게 나옵니다. 이와 같은 우리의 상식적인 생각을 통계학에서 적률(moment)방식의 추정이라 합니다.

 

 

이 적률방식이 H-W에서는 안 통합니다. 즉

 

a2 =Y1/n,   2a(1-a)=Y2/n,   (1-a)2=Y3/n=(n-Y1-Y2)/n

 

 

이 세 개의 식을 가지고 a 값을 구해야 하는데 중고등학교 수학에서 배워듯이 미지수 a는 하나이고 식은 3개라 풀어지지가 않습니다.

 

그러나 H-W 문제로 MLE로는 쉽게 구해집니다.

 

f(y1, y2, y3)=nCy1,y2,y3*(a2)y1*( 2a(1-a))y2*((1-a)2)y3

 

 

logf(y1, y2, y2:a) = log(nCy1,y2,y3) + y1*log(a2) + y2*log(2a(1-a)) + y3*log((1-a)2)

 

위 log 가능성 함수를 a에 관해 미분해서 0으로 놓고 풀면 MLE가 나옵니다. 답은 a=(2Y1+Y2)/2n입니다. 책에 나옵니다(Bickel & Doksum, Mathematical Statistics)

 

 

 

이 H-W 문제를 EM으로 푸는 방법이 논문에 나옵니다. 이 EM 알고리즘은 Dempster 등의 논문에 소개되었는데 그들이 이 EM 알고리즘을 적용하는 예로서 설명을 해서 다른 교과서에서도 이 문제가 자주 나옵니다. 앞에서도 계속 이야기했지만 일반 MLE로도 충분히 풀 수 있는 문제입니다. 그러나 EM알고리즘 계산하는 방법을 소개하기 위해서 예를 든 것입니다. 물론 나중에서 다른 의미도 있지만요.

 

아래 표를 보죠.

 

모형

개념

X=1

X=2

X=3

W=1

W=2

H-W

문제

Xi가 관찰된 확률

(1-a)/2

a/4

1/2+a/4

Yi=Xi가 관찰된 횟수

Y1=38

Y2=34

Y3=125

EM 적용 문제

Xi가 관찰된 확률

(1-a)/2

a/4

1/2

a/4

Yi=Xi가 관찰된 횟수

38

34

H1=?

H2=?

 

 

이 문제는 전형적인 H-W 문제입니다. (Y1, Y2, Y3)=(38,34, 125) 관찰되었고, 이 관찰된 값을 가지고 모수 a 값을 추정하는 것이죠.

 

 

그런데 Dempster 등은 X=3인 범주를 W가 1이거나 2인 경우로 더 세분화 하였습니다. X=3인 확률이 1/2+a/4인데 W=1인 확률이 1/2, W=2인 확률이 a/4로 배정을 한 것이죠. W=1이 나타난 횟수가 H1, W=2가 나타난 횟수가 H2라 하면 H1과 H2는 관찰되지 않는 은닉변수이지만 H1+H2=Y3가 되고 우리의 데이터 상에서는 H1+H2=125가 되는 것이죠.

 

 

이 예가 EM 알고리즘을 발표한 논문에서 나오는 예이기 때문에 EM 소개한 책에 자주 나옵니다. 그러나 실제로는 EM을 적용할 필요가 없고 그냥 일반적인 MLE 구하는 방식으로 구하면 간단하게 풀어집니다.

 

 

그러나 위의 예를 아주 특별한 의미를 가지고 있습니다. 이런 현상이 있는지는 모르겠지만 우리가 별의 밝기를 측정했다고 하죠. 이건 관찰변수 V입니다. 그러나 이 별의 밝기는 우리가 잘 모르는 우주의 어떤 몇 개의 Source에서 왔다고 하죠. 즉 V=H1+H2+H3 이렇게 표시할 수가 있습니다. Hi는 우주의 Source i에 의해 생긴 별의 밝기인데 이건 우리가 측정을 못한다는 것이죠.

 

 

또 PET, 즉 단층 뇌찰영에서 이 개념이 적용됩니다. 뇌 촬영시 환자가 테이블위에 들어가고 그 둘레로 둥그런 테가 있죠. 환자의 머리에 입자를 쏘고, 이 입자가 뇌에서 반사된 것을 이 둥그런 테, 디텍터에서 입자수를 체크를 합니다. 즉 Vj는 디텍터의 j 위치에서 발견한 입자의 수입니다. 이 위치에서 발견한 입자의 수는 뇌의 다양한 위치 i에서 튀어져 나온 입자 Hi의 수의 합입니다. 그러나 이 Hi는 우리가 관찰할 수 없죠. 즉

 

Vj=H1+H2+H3+...

 

이런 식으로 표현될 수 있습니다. 관찰된 변수 V는 관찰할 수 없는 은닉변수 Hi의 합으로 표시된다는 것이죠. EM 알고리즘에서 E 단계에서 나오는 관찰된 변수 V에서 은닉변수 H1, H2, H3로 가는 조건부 확률분포 f(hi ; a| v)를 구하는 것이 어렵다는 이야기입니다.

 

 

'인공지능관련 > EM' 카테고리의 다른 글

혼합모형(Mixture Model)  (0) 2016.12.03
EM 공식 이해하기  (0) 2016.11.29
EM 이해하기4  (0) 2016.11.28
EM3  (0) 2016.11.14
EM 알고리즘 이해1  (0) 2016.11.10