• No results found

HK07 – Les 9

N/A
N/A
Protected

Academic year: 2021

Share "HK07 – Les 9"

Copied!
40
0
0

Bezig met laden.... (Bekijk nu de volledige tekst)

Hele tekst

(1)

HK07 – Les 9

Het “Expectation-Maximization” Algoritme voor Clustering, HMMs, en Motief-Ontdekking

Yves Moreau

3de Jr. Burg. Ir. Elektrotechniek

Dataverwerking & Automatisatie

2001-2002

(2)

2

Overzicht

Het algemene “Expectation-Maximization” algoritme

EM clustering

EM interpretatie van het Baum-Welch leeralgoritme voor HMMs

MEME voor motief-ontdekking

(3)

3

Clustering met Gaussiaanse mengeling

       

C

1

C

2

C

3

(4)

4

Gaussiaanse verdelingen

Univariate Gaussiaanse verdeling

Multivariate Gaussiaanse verdeling

Isotrope Gaussianse verdeling = 

2

I

Eenheidscovariantie = I, diagonale covariantie = 

 

 

    

 

 ( )

( )

2 exp 1

det )

2 ( ) 1 ,

; ( )

(

/2 1/2

1

  x x

x N x

p

d T

2

2 1

2 ) 1

,

; ( )

(

 

 

x

e x

N x

p

 

 

 

2

2 2

/ 2 Iso

exp 2 )

2 ( ) 1 ,

; ( )

( 

 

x

x N

x

p

d

(5)

5

Mengeling van Gaussiaanse verdelingen

i.i.d. gegevens

Gaussiaanse componenten

Mengeling

Maximum aannemelijkheidsschatting

Niet-geobserveerde gegevens

N

i

x

i

p D

p

1

)

| ( )

|

(  

K

i

i

x

i

N i

C P x

p

1

) ,

; ( )

| (

)

|

(    

) ,

; ( )

,

|

( x C i N x

i i

p     

)

| ( ln max

*

arg 

 

P D

)

|

( C j

P

(6)

6

Het algemene EM algoritme

(7)

7

EM algoritme

Maximum aannemelijkheidschatting

Laten we veronderstellen dat wij een algoritme hebben dat de aannemelijkheid probeert te optimaliseren

Laten we kijken naar de verandering van de

aannemelijkheid tussen twee iteraties van het algoritme )

| ( ln max arg

)

| ( max

*

arg  

 

P D

P D

)

| (

)

| ln (

)

| ( ln )

| ( ln )

,

(

1 1 1

i i i

i i

i

P D

D D P

P D

P

 

 

* 1

algoritme

0

  

i

i D

(8)

8

EM algoritme

De aannemelijkheid is vaak moeilijk te berekenen

We gebruiken een generatief model gebaseerd op niet- geobserveerde gegevens

We proberen dan de niet-geobserveerde gegevens uit te integreren

De verwachte waarde kan een integraal of een som zijn

 

)

| (

)

| , ln (

) ,

(

1 | 1

i i m

i

i

P D

m D P E

 

m i

m

P D m P D m P m d

E

|

( , | 

1

) ( | ,  ) ( |  ) 

m i

m

P D m P D m P m

E

|

( , | 

1

) ( | ,  ) ( |  )

(9)

9

EM algoritme

Gemakkelijkheidshalve werken we met een som

Probleem : uitdrukking bevat het logaritme van een som

Ongelijkheid van Jensen

)

| (

)

| ( ) ,

| ( ln

) , (

1 1

1

i m

i i

i

i

P D

m P m

D P

 

j j

j j

j j j

j

1 ln  y  ln y

(10)

10

EM algoritme

Toepassing van de ongelijkheid van Jensen

Dit geeft een ondergrens voor de variatie van de aannemelijkheid

) ,

| (

) ,

| ( )

| (

)

| , ( ln

) , (

1 1

i i i

m

i i

i

P m D

D m P D

P

m D P

 

) ,

| ( )

| (

)

| , ln (

) ,

| ( )

,

(

1 1

i i

i m

i i

i

P D P m D

m D D P

m

P  

 

) , (

)

| ( ln )

| (

ln P D

i1

P D

i

  

i1

i

(11)

11

EM algoritme

Laten we proberen de variatie te maximalizeren )

,

| ( )

| (

)

| , ln (

) ,

| ( )

, (

i m i

i

i

P D P m D

m D D P

m

P  

 

))

| , ( (ln max

arg )

( max

arg

)

| , ( ln ) ,

| ( max

arg

) ,

| ( )

| (

)

| , ln (

) ,

| ( max

arg

) ,

( max arg

EM

EM | ,

EM

EM EM

EM EM

EM 1

 

m D P E

Q

m D P D

m P

D m P D

P

m D D P

m P

i

i mD

m

i

i m i

i i

i

onafhankelijk van 

(12)

12

Optimalisatiestrategie van EM

)

| (

ln P D

) ( )

| (

ln EM

EM

Q i

D

P i

EM

i

iEM1 )

| (

ln P D

iEM )

| (

ln P D

iEM1

(13)

13

Convergentie van het EM algoritme

Aanmelijkheid stijgt monotoon

Evenwichtspunt * van EM is maximum van lnP(D|

)+ (,

)

Dus * moet een stationair punt van de aannemelijkheid zijn

Geen garantie op globaal optimum (vaak locale optima)

In sommige gevallen is het stationair punt geen maximum )

| ( ln )

| ( ln

0 )

, (

) ,

(

EM EM

1

EM max EM

EM EM

1

i i

i i

i i

D P D

P  

(14)

14

Waarom EM?

EM dient om een maximum aannemelijkheidsoplossing te vinden

Dit kan ook bereikt worden via gradient descent

Maar vaak is het berekenen van de gradienten van de aannemelijkheid P(D|) moeilijk

Door de introductie van de niet-geobserveerde

gegevens in het EM algoritme is het vaak gemakkelijker

om de Expectation stap te berekenen

(15)

15

Veralgemeende EM

Het is niet absoluut nodig om Q() te maximaliseren na de Expectation stap

Indien Q(



)  Q(

) kan convergentie bereikt worden

Dit is het veralgemeende EM

Dit algoritme wordt toegepast wanneer het resultaat van

de Expectation stap te complex is om rechtsstreeks te

maximaliseren

(16)

16

EM clustering

(17)

17

EM clustering

Isotrope Gaussiaanse mengeling

Niet-geobserveerde gegevens

EM algoritme

)

| , ( ln ) ,

| ( max

arg

) ( max

arg

EM EM

1 EM

m D P D

m P Q

m

i

i i

K

i

i

x

i

N i

C P x

p

1

) ,

; ( )

| (

)

|

(    

)

|

( C j

P

(18)

18

EM clustering

Expectation stap

 



N

n

K

j

n i

n

p x C j P C j

x j C

P Q

i

1 1

EM

) ln ( | , ). ( | )

,

| (

)

EM

(    



 

 



 

 

N

n

K

j j

j n

j i

n

K K

d x j

C P x

j C

P Q

i

1 1 2

2 EM

1 1

2 Ct ln

)

| (

ln ) ,

| (

) ,...,

; ,...,

( with

) (

EM

 

(19)

19

Optimalisatie met Lagrange vermenigvuldiger

Beperking

Lagrange vermenigvuldiger

j

j C

P ( |  ) 1

K Q j

K Q j

K j j

C P

Q

j C

P Q

Q

j j

j

,..., 1 alle

voor ) 0

~ (

,..., 1 alle

voor ) 0

~ (

,..., 1 alle

voor ) 0

| (

)

~ (

1 )

| (

) ( )

~ (

 

 

 

 

 

  

 

(20)

20

Lagrange vermenigvuldiger

Eliminatie van de Lagrange vermenigvuldiger en

schatting van de waarschijnlijkheid van ieder component

j j

C P x

j C

P

j C

P x

j C

P

j C

P

x j C

P

K j j

C P

Q

j

i

j n

i n

i n

i n

n i

i n

i

over som

)

| (

) ,

| (

termen de

van ng

herverdeli

)

| (

) ,

| (

afgeleide partiele

(*) ) 0

| (

) ,

| (

,..., 1 alle

voor ) 0

| (

)

~ (

1 1

1

1



 

 

 

 

(21)

21

Lagrange vermenigvuldiger

Vervolg

(*) in e substituti

) ,

| 1 (

)

| (

1 uitkomsten alle

over som

sommen de

van inversie

)

,

| (

1



n

i n i

n j

i n

x j C

N P j

C P

N

x j C

P

(22)

22

Lagrange vermenigvuldiger

Schatting van nieuwe s

 

 

 

  

 

n

i n n

n i i n

j

n i

j

i j n

i n j

x j C

P

x x

j C

P x x j C

P

K Q j

i

) ,

| (

) ,

| (

2 0

) (

) 2 ,

| (

,..., 1 alle

voor ) 0

~ (

1

1 2

1

1

 

(23)

23

Lagrange vermenigvuldiger

Schatting van nieuwe s

 

  

 

 

  

 

n

i n

i j n

n

i i n

j

n i

j i

j n

i j i

n j

x j C

P

x x

j C

P d

d x x

j C

P

K Q j

i

) ,

| (

) ,

| 1 (

2 0 2 .

) ,

| (

,..., 1 alle

voor ) 0

~ (

1 1 2

1 3 1

1

1

 

(24)

24

EM clustering

Initialisatie : random parameters 

0

Iteratie

Einde : wanneer parameters zijn geconvergeerd of maximum aantal iteraties is bereikt

n

i n i

n

i n n

i j n

i n i

j

n

i n n

n i n i

j

x j C N P

j C P

x j C P

x x

j C P d

x j C P

x x

j C P

) ,

| 1 (

)

| (

) ,

| (

) ,

| 1 (

) ,

| (

) ,

| (

1

1 2 1

1

(25)

25

Practische aspecten van EM clustering

K-means is een harde versie van EM met Gaussiaanse mengeling met eenheidscovariantie

Lokale minima zijn vaak een reel probleem voor EM, dus een goede initialisatie kan veel helpen

Clusters in sparse gebieden kunnen collapsen op een unieke datapunt

De variantie van de cluster gaat naar nul en de aannemelijkheid wordt oneindig

Dit is onaanvaardbaar

Te kleine clusters worden gepruned en vervangen door nieuwe random initialisatie

(26)

26

Practische aspecten van EM clustering

Na schatting van het model, kan clustering gedaan worden via “soft assignment” of “hard assignment”

Keuze van het aantal clusters is een moeilijke vraag

EM clustering mogelijk voor diagonale covariantie ; meestal onmogelijk voor volledige covariantiematrix omwille van het te groot aantal parameters

EM clustering mogelijk voor andere distributies uit de exponentiele familie

Implementaties

AutoClass

mclust

(27)

27

Baum-Welch algoritme

(28)

28

Verborgen Markov model

A .8 C 0 G 0 T .2

A 0 C .8 G .2 T 0

A .8 C .2 G 0 T 0

A 1 C 0 G 0 T 0

A 0 C 0 G .2 T .8

A 0 C .8 G .2 T 0 A .2

C .4 G .2 T .2

1.0 1.0

.6

.4

.6 .4

1.0 1.0

Sequentiescore

0472 0

8 0 1 8 0 1 1 6 0 4 0

6 0 8 0 1 8 0 1 8 0 )

(

.

. .

. .

. .

. .

P

 ACACATC 

Transitiewaarschijnlijkheden

Emissiewaarschijnlijkheden

(29)

29

Verborgen Markov model

In een verborgen Markov model, observeren wij de symboolsequentie x maar we willen de verborgen toestandsequentie (het pad ) reconstrueren

Transitiewaarschijnlijkheden

Emissiewaarschijnlijkheden

Gezamenlijke waarschijnlijkheid van sequentie en pad )

|

( l

1

k

P

a

kl

 

i

 

i

)

| (

)

( b P x b k

e

k

i

 

i

L

i

i i i

i

x a

e a

x P

1

0 1

( )

1

) ,

( 

(30)

30

Het voorwaartse algoritme

Het voorwaartse algoritme laat toe de waarschijnlijkheid P(x) van een sequentie te schatten t.o.v. van een verborgen Markov model

Dit is belangrijk voor het berekenen van posterior

waarschijnlijkheden en voor het vergelijken van Markov modellen

De som over alle paden (exponentieel veel) kan berekend worden via dynamish programmeren

Laten we fk(i) definieren als de waarschijnlijkheid van de sequentie voor de paden die in toestand k eindigen bij symbool i

Dan kunnen we deze waarschijnlijkheid recursief berekenen als

 ) , ( )

( x P x

P

) ,

,..., (

)

( i P x

1

x k

f

k

i

i

k

kl k

i l

l

i e x f i a

f ( 1 ) (

1

) ( )

(31)

31

Het achterwaartse algoritme

Het achterwaartse algoritme laat toe de waarschijnlijkheid te

berekenen van de gehele sequentie gezamenlijk met de conditie dat symbool xi in toestand k zit

Dit is belangrijk om de waarschijnlijkheid van een bepaalde toestand op symbool xi te berekenen

P(x1,...,xi,i=k) kan berekend worden via voorwaartse algoritme fk(i)

Laten we bk(i) definieren als de waarschijnlijkheid van de rest van de sequentie voor de paden die in toestand k door symbool xi passeren

)

| ,...,

( ) ,

,..., (

) ,

,...,

| ,...,

( ) ,

,..., (

) ,

(

1 1

1 1

1

k x

x P k x

x P

k x

x x

x P k x

x P k

x P

i L

i i

i

i i L

i i

i i

)

| ,...,

( )

( i P x

1

x k

b

k

i L

i

(32)

32

EM interpretatie van Baum-Welch

Wij willen de parameters van het verborgen Markov model (transitiewaarschijnlijkheden en

emissiewaarschijnlijkheden) schatten die de

aannemelijkheid van de sequentie(s) maximaliseren

Niet-geobserveerde gegevens = paden  :

EM algoritme

)

| ( max

*

arg 

 

P x

)

| , ( ln ) ,

| ( max

arg

) ( max

arg

EM EM

1 EM

x P x

P Q

i

i i

 ) , ( )

( x P x

P

(33)

33

EM interpretatie van Baum-Welch

Laten we de functie Q verder uitwerken

Het generatieve model geeft de gezamenlijke waarschijnlijkheid van de sequentie en het pad

Definieer het aantal keer een bepaalde transitie gebruikt wordt voor een gegeven pad

Definieer het aantal keer een bepaalde emissie geobserveerd wordt voor een gegeven sequentie en een gegeven pad

)

| , ( ln ) ,

| ( )

(     

P x P x

Q

i

i

) (  A

kl

)

,

( b

E

k

(34)

34

EM interpretatie van Baum-Welch

De gezamenlijke waarschijnlijkheid van sequentie en pad kan geschreven worden als

Door het logaritme te nemen wordt de functie Q

    



M

k

M

l

A kl M

k b

b E

k

b

k

a

l

e x

P

0 1

) ( 1

) ,

)

(

( )

| ,

(  

 

  

   

M

k

M

l

kl kl

M

k b

k k

i

E b e b A a

x P

Q

i

0 1 1

ln ) ( )

( ln ) , ( )

,

| ( )

(     

(35)

35

EM interpretatie van Baum-Welch

Definieer het verwachte aantal keer dat een transitie gebruikt wordt (onafhankelijk van het pad)

Definieer het verwachte aantal keer dat een emissie geobserveerd wordt (onafhankelijk van het pad)

 | , ) ( )

(

i kl

kl

P x A

A

 | , ) ( , ) (

)

( b P x E b

E

k i k

(36)

36

EM interpretatie van Baum-Welch

Voor de functie Q hebben we

Aangezien P(x,|) onafhankelijk is van k en b, kunnen we de sommen herschikken en kunnen we de definities van A

kl

en E

k

(b) gebruiken

Nu moeten wij Q maximaliseren t.o.v.  : a

kl

, e

k

(b)

 

  

   

M

k

M

l

kl kl

M

k b

k k

i

E b e b A a

x P

Q

i

0 1 1

ln ) ( )

( ln ) , ( )

,

| ( )

(     





M

k

M

l

kl kl

M

k b

k

k

b e b A a

E Q

i

0 1 1

ln )

( ln ) ( )

( 

(37)

37

EM interpretatie van Baum-Welch

Laten we kijken naar de A term

Laten we de volgende candidaat definieren voor het optimum

Laten we vergelijken met andere parameter keuzes

 

m

km kl

kl

A

a

0

A

  

  



 

 

 

M

k

M

l kl

kl kl M

m

km M

k

M

k

M

l kl

kl kl

M

l

kl kl

M

k

M

l

kl kl

a a a

A

a A a

a A

a A

0 1

0 0

1

0 0 1

0

1 0 1

0

ln ln

ln

ln

(38)

38

EM interpretatie van Baum-Welch

Laatste som heeft de vorm van een relatieve entropie en is dus altijd positief

Dus onze candidaat maximaliseert de A term

Identieke procedure voor de E term 0

ln

1

0

0

M

l kl

kl kl

a a a

 

' 0

) ' (

) ) (

(

b

k k k

b E

b b E

e

(39)

39

EM interpretatie van Baum-Welch

Baum-Welch

Expectation stap

Bereken verwacht aantal keer dat een transitie gebruikt wordt

Bereken verwacht aantal keer dat een emissie geobserveerd wordt

Gebruik hiervoor de voorwaartse en achterwaartse algoritmen

Maximization stap

Update de parameters met de genormalizeerde tellingen

 | , ) ( )

(

i kl

kl

P x A

A

 | , ) ( , ) (

)

( b P x E b

E

k i k

 

' 1

) ' (

) ) (

(

b

k i k

k

E b

b b E

e

m

km i kl

kl

A

a

1

A

(40)

40

Samenvatting

Het abstracte “Expectation-Maximization” algoritme

EM clustering

EM interpretatie van het Baum-Welch leeralgoritme voor

HMMs

Referenties

GERELATEERDE DOCUMENTEN

Solution We received solutions from Alexander van Hoorn, Thijmen Krebs and Hendrik Reu vers.. Since F 4 = is not divisible by 8, clearly the latter cannot be

Solution Hendrik Reuvers and Jaap Spies submitted partial solutions. This subring

Does there exist a k for which the students can coordinate 1 their answers such that it is guaranteed that at least one student passes the exam. Solution We received solutions from

Solution Solutions were submitted by Hans Samuels Brusse, Hendrik Reuvers and Paul Hutschemakers. The solution below is based on the solution

This Problem Section is open to everyone; everybody is encouraged to send in solutions and propose problems.. Group contributions

is it then possible to divide each single bag into proper subsets of equal weight? Again, it turns out that this is not always possible, but the simplest example that we know has

Solution We received solutions from Raymond van Bommel, Josephine Buskes, Alex Heinis, Thijmen Krebs, Hendrik Reuvers, Djurre Tijsma, Steven Troch, Traian Viteam and Robert van

Gabriele Dalla Torre Christophe Debry Jinbi Jin Marco Streng Wouter Zomervrucht Problemenrubriek NAW Mathematisch Instituut Universiteit Leiden Postbus 9512 2300 RA