30
Skryté Markovove modely Andrej Lúčny Katedra aplikovanej informatiky FMFI UK [email protected] http://www.fmph.uniba.sk/~lucny

Skryt é Markovove modely

  • Upload
    lumina

  • View
    55

  • Download
    2

Embed Size (px)

DESCRIPTION

Skryt é Markovove modely. Andrej Lúčny Katedra aplikovanej informatiky FMFI UK [email protected] http://www.fmph.uniba.sk/~lucny. Motiva čná úloha. G. A. G. T. T. G. A. G. G. G. A. A. A. A. A. G. C. G. M áme jedno vlákno DNA, čo je postupnosť báz A, C, G, T - PowerPoint PPT Presentation

Citation preview

Page 1: Skryt é Markovove modely

Skryté Markovove modely

Andrej Lúčny

Katedra aplikovanej informatiky FMFI UK

[email protected]

http://www.fmph.uniba.sk/~lucny

Page 2: Skryt é Markovove modely

G A G T T G A G G G A A A A A G C G

Máme jedno vlákno DNA, čo je postupnosť báz A, C, G, T

Potrebujeme určiť, ktoré časti vlákna sú exony (E), introny (I) a gény nekódujúca DNA (N)

N N N N N N I I I I I E E E E E E N

G A G T T G A G G G A A A A A G C G

Motivačná úloha

Page 3: Skryt é Markovove modely

A

A

CG

TCC

E

E

I

N

A

A

GG

TGC

N

N

E

I

A

A

CG

TTA

I

I

E

N

Máme tri urny: E, I a N. V každej sú schované guličky A, C, G a T a na každej je ruleta, ktorej jamky sú podelené na úseky E, I a N

Markovov model DNA:

Page 4: Skryt é Markovove modely

A

A

CG

TCC

E

E

I

N

A

A

GG

TGC

N

N

E

I

A

A

CG

TTA

I

I

E

N

p(A) = 2/7p(C) = 3/7p(G) = 1/7p(T) = 1/7

p(A) = 3/7p(C) = 1/7p(G) = 1/7p(T) = 2/7

p(A) = 2/7p(C) = 1/7p(G) = 3/7p(T) = 1/7

Page 5: Skryt é Markovove modely

A

A

CG

TCC

E

E

I

N

A

A

GG

TGC

N

N

E

I

A

A

CG

TTA

I

I

E

N

6/10

2/10

2/10 2/101/10

7/10

1/10

3/10

6/10

Page 6: Skryt é Markovove modely

A

A

CG

TCC

E

E

I

N

A

A

GG

TGC

N

N

E

I

A

A

CG

TTA

I

I

E

N

1. Vytiahneme jednu guličku z urny (a vrátime ju späť)

2. Zatočíme ruletou na urne a podľa výsledku sa presunieme

Markovov proces:G

Page 7: Skryt é Markovove modely

A

A

CG

TCC

E

E

I

N

A

A

GG

TGC

N

N

E

I

A

A

CG

TTA

I

I

E

N

A

N N

G A. . . . .

Page 8: Skryt é Markovove modely

A

A

CG

TCC

E

E

I

N

A

A

GG

TGC

N

N

E

I

A

A

CG

TTA

I

I

E

N

G

N N N

G A G . . . . .

Page 9: Skryt é Markovove modely

A

A

CG

TCC

E

E

I

N

A

A

GG

TGC

N

N

E

I

A

A

CG

TTA

I

I

E

N

T

N N N N

G A G T. . . . .

Page 10: Skryt é Markovove modely

A

A

CG

TCC

E

E

I

N

A

A

GG

TGC

N

N

E

I

A

A

CG

TTA

I

I

E

N

T

N N N N N

G A G T T. . . . .

Page 11: Skryt é Markovove modely

A

A

CG

TCC

E

E

I

N

A

A

GG

TGC

N

N

E

I

A

A

CG

TTA

I

I

E

N

G

N N N N N N

G A G T T G. . . . .

Page 12: Skryt é Markovove modely

A

A

CG

TCC

E

E

I

N

A

A

GG

TGC

N

N

E

I

A

A

CG

TTA

I

I

E

N

A

N N N N N N I

G A G T T G A. . . . .

Page 13: Skryt é Markovove modely

A

A

CG

TCC

E

E

I

N

A

A

GG

TGC

N

N

E

I

A

A

CG

TTA

I

I

E

N

A

N N N N N N I I I I I

G A G T T G A G G G A. . . . .

Page 14: Skryt é Markovove modely

A

A

CG

TCC

E

E

I

N

A

A

GG

TGC

N

N

E

I

A

A

CG

TTA

I

I

E

N

C

N N N N N N I I I I I E E E E E E

G A G T T G A G G G A A A A A G C. . . . .

Page 15: Skryt é Markovove modely

A

A

CG

TCC

E

E

I

N

A

A

GG

TGC

N

N

E

I

A

A

CG

TTA

I

I

E

N

G

N N N N N N I I I I I E E E E E E N

G A G T T G A G G G A A A A A G C G

Dostávame výsledok Markovovho procesu: čo sme kedy z ktorej urny vytiahli

Page 16: Skryt é Markovove modely

A

A

CG

TCC

E

E

I

N

A

A

GG

TGC

N

N

E

I

A

A

CG

TTA

I

I

E

N

N N N N N N I I I I I E E E E E E N

G A G T T G A G G G A A A A A G C G

Skrytý Markovov proces: vidíme iba čo vyťahujeme, ale nie z ktorej urny

Page 17: Skryt é Markovove modely

A

A

CG

TCC

E

E

I

N

A

A

GG

TGC

N

N

E

I

A

A

CG

TTA

I

I

E

N

N N N N N N I I I I I E E E E E E N

G A G T T G A G G G A A A A A G C G

Pre danú postupnosť ťahov máme teraz uhádnuť z akých urien boli vytiahnuté

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

Page 18: Skryt é Markovove modely

A

A

CG

TCC

E

E

I

N

A

A

GG

TGC

N

N

E

I

A

A

CG

TTA

I

I

E

N

G A G T T G A G G G A A A A A G C G

Vieme pre nejakú hypotézu spočítať nakoľko je pravdepodobná ?

N I I I E E E I I I E E E N N I I Np( ) = ?

hypotéza

Page 19: Skryt é Markovove modely

ťah G A G T T G A

h N I I I E E E

p(tah) 3/7 3/7 1/7 2/7 1/7 1/7 2/7

p(presun) 2/10 6/10 6/10 3/10 6/10 6/10

A

A

CG

TCC

E

E

I

N

A

A

GG

TGC

N

N

E

I

A

A

CG

TTA

I

I

E

N

6/10

2/10

2/10 2/101/10

7/10

1/10

3/10

6/10

p(A) = 2/7p(C) = 3/7p(G) = 1/7p(T) = 1/7

p(A) = 3/7p(C) = 1/7p(G) = 1/7p(T) = 2/7

p(A) = 2/7p(C) = 1/7p(G) = 3/7p(T) = 1/7

. . . . .

N I I I E E E I I I E E E N N I I Np( ) = 1.6768E-19

ľahko to z markovovho

modelu spočítame ako súčin

pravdepodobností jednotlivých ťahov

a presunov

Page 20: Skryt é Markovove modely

p( ) = 8.7350E-16

ťah G A G T T G A

h N N N N N N I

p(tah) 3/7 2/7 3/7 1/7 1/7 3/7 3/7

p(presun) 7/10 7/10 7/10 7/10 7/10 2/10

A

A

CG

TCC

E

E

I

N

A

A

GG

TGC

N

N

E

I

A

A

CG

TTA

I

I

E

N

6/10

2/10

2/10 2/101/10

7/10

1/10

3/10

6/10

p(A) = 2/7p(C) = 3/7p(G) = 1/7p(T) = 1/7

p(A) = 3/7p(C) = 1/7p(G) = 1/7p(T) = 2/7

p(A) = 2/7p(C) = 1/7p(G) = 3/7p(T) = 1/7

. . . . .

N N N N N N I I I I I E E E E E E N

keď zrátame pravdepodobnosť

hypotézy rovnajúcej sa skutočnosti, je vyššia než u

náhodne zvolenej hypotézy

Page 21: Skryt é Markovove modely

G A G T T G A G G G A A A A A G C G

N I I I E E E I I I E E E N N I I Np( ) = 1.6768E-19

p( ) = 8.7350E-16N N N N N N I I I I I E E E E E E N

. . . . . . . . . .

. . . . . Stačilo by teraz prebehnúť všetky možnosti a nájsť najpravdepodobnejšiu. Asi to nebola presne tá skutočná, ale bola by snáď aspoň dostatočne podobná, aby sme sa z toho niečo dozvedeli. Tých možností je ale šialene veľa. Našťastie celkom jednoduchý (Viterbiho) algoritmus vie najpravdepodobnejšiu možnosť priamo spočítať.

Page 22: Skryt é Markovove modely

Zamerajme sa na samotnú hodnotu pravdepodobnosti najpravdepodobnejšej postupnosti urien.

Počítajme pravdepodobnosti čiastočných postupností tvorených prvými n členmi postupnosti urien, ktoré končia urnou E, I a N

Predstavme si, že ich vieme pre určité n. Ako ich získame pre n+1 ?

... A G G G A A A ...

n = 9

E

I

N

I

E

N

I

E

N

I

E

N

E

E

E

I

I

I

N

N

N

GE

GI

GN

pE

pI

pN

pE’ = pEG.max( pE.pEE, pI.pIE, pN.pNE )

pI’ = pIG.max( pE.pEI, pI.pII, pN.pNI )

pN’ = pNG.max( pE.pEN, pI.pIN, pN.pNN )

n = 10

Viterbiho algoritmus

Page 23: Skryt é Markovove modely

Zvyšok je aplikovanie indukcie. Viterbiho algoritmus

n = 1

E

I

N

pE = pEG

pI = pIG

pN = pNG

G A G ..... G C G

E

I

N

n = L

p = max( pE, pI, pN )

Page 24: Skryt é Markovove modely

Treba samozrejme vypočítať nielen pravdepodobnosť ale aj postupnosť.

Na to stačí ísť spätne vždy po tej vetve ktorá bola najpravdepodobnejšia

Viterbiho algoritmus

E

I

N

I

E

N

I

E

N

I

E

N

E

E

E

I

I

I

N

N

N

GE

GI

GN

pE’ = pEG.max( pE.pEE, pI.pIE, pN.pNE )

pI’ = pIG.max( pE.pEI, pI.pII, pN.pNI )

pN’ = pNG.max( pE.pEN, pI.pIN, pN.pNN )

max

max

max

... A G G G A A A ...

n = 9 n = 10

ak hľadaná postupnosť má na pozícii 10 E, potom na

pozícií 9 má N

Page 25: Skryt é Markovove modely

Týmto spôsobom môžeme pre náš prípad odhadnúť, že postupnosť urien bola nasledovná:

A

A

CG

TCC

E

E

I

N

A

A

GG

TGC

N

N

E

I

A

A

CG

TTA

I

I

E

N

N N N N N N I I I I I E E E E E E N

G A G T T G A G G G A A A A A G C G

N N N N I I I I N E E E E E E N N N

Page 26: Skryt é Markovove modely

Nájdená postupnosť síce nemusí nezodpovedať skutočnosti, ale je najpravdepodobnejšou možnosťou

A

A

CG

TCC

E

E

I

N

A

A

GG

TGC

N

N

E

I

A

A

CG

TTA

I

I

E

N

N N N N N N I I I I I E E E E E E N

G A G T T G A G G G A A A A A G C G

N N N N I I I I N E E E E E E N N N

Page 27: Skryt é Markovove modely

A

A

CG

TCC

E

E

I

N

A

A

GG

TGC

N

N

E

I

A

A

CG

TTA

I

I

E

N

6/10

2/10

2/10 2/101/10

7/10

1/10

3/10

6/10

p(A) = 2/7p(C) = 3/7p(G) = 1/7p(T) = 1/7

p(A) = 3/7p(C) = 1/7p(G) = 1/7p(T) = 2/7

p(A) = 2/7p(C) = 1/7p(G) = 3/7p(T) = 1/7

Ale ako vôbec získame Markovov model ?

Nuž z malej vzorky dát a predpokladáme, že je to dobrý odhad

Napr. ručne určíme 1% DNA a zvyšok spočítame

Page 28: Skryt é Markovove modely

HMM ako Bayesova sieť

HMM je založený na zjednodušení, že viditeľná manifestácia ako i zmena skrytého stavu systému sú závislé iba na jeho aktuálnej hodnote (a nie napr. na predchádzajúcich hodnotách)

EINt EINt+1EINt-1

ACGTt-1 ACGTt ACGTt+1

Page 29: Skryt é Markovove modely

HMM rozšírenia

• závislosť od predchádzajúcich N hodnôt

• automatické generovanie vnútorných stavov

• spojité HMM

Page 30: Skryt é Markovove modely

Skryté Markovove modely

Andrej Lúčny

KAI FMFI Bratislava

[email protected]

http://www.fmph.uniba.sk/~lucny

Ďakujem za pozornosť !