750 likes | 872 Views
Alignments mit Hidden Markov Modellen. Wofür sind HMM‘s gut?. Gehört eine Sequenz zu einer bestimmten Familie? Falls eine Sequenz aus einer Familie stammt, was kann man über ihre interne Struktur sagen?. Markov Kette. Modell zum Generieren von Sequenzen
E N D
Wofür sind HMM‘s gut? • Gehört eine Sequenz zu einer bestimmten Familie? • Falls eine Sequenz aus einer Familie stammt, was kann man über ihre interne Struktur sagen?
Markov Kette • Modell zum Generieren von Sequenzen • Die Wahrscheinlichkeit für das Auftreten eines Symbols hängt nur vom Vorgängersymbol ab • Wie wahrscheinlich ist eine Sequenz / Nukleotidfolge
Markov Kette Beispiel für DNA:
Markov Kette Transitionswahrscheinlichkeit: rst = P(xi = t | xi-1 = s) Wahrscheinlichkeit einer Sequenz: P(x) = P(xL | xL-1)*P(xL-1 | xL-2)* .. *P(x2 | x1)*P(x1) = P(x1)Пi=2rxi-1xi
Markov Kette Beginzustand x0 = B mit: P(x1 = s) = rBs Endzustand xL+1 = E mit: P(E | xL = t) = rtE
Hidden Markov Model • Keine 1 zu 1 Übereinstimmung von Zuständen und generierten Symbolen • Einbettung von Markov Ketten in die Zustände • Es gibt bestimmte vordefinierte Wahrscheinlichkeiten, dass ein Zustandübergang erfolgt • Sei ek(b) = P(xi = b | πi-1 = k) die WK, dass Symbol b im Zustand k auftritt (wobei π die Zustandsequenz ist)
HMM Beispiel: unfaires Casino:
HMM Beispiel: unfaires Casino: Problem: Wie findet man die richtige (wahrscheinlichste) Zustandssequenz, die der vorliegenden Symbolsequenz zugrunde liegt?
Viterbi Algorithmus Beispiel: CpG - Inseln • Das Auftreten einer bestimmten Base (A, T, G, C) an einer bestimmten Stelle ist nicht gleich wahrscheinlich • In bestimmten DNA-Bereichen: Hohe Wahrscheinlichkeit, dass C zu einem T mutiert • Somit kleinere Wahrscheinlichkeit, dass ein C vor einem G steht • Es gibt allerdings Regione in welchen die Mutationswahrscheinlichket (von C zu T) deutlich kleiner ist (zum Beispiel bei den Startregionen diverser Gene)
Viterbi Algorithmus Beispiel: CpG - Inseln Markov Kette
Viterbi Algorithmus Beispiel: CpG - Inseln • Verschiedene Wahrscheinlichkeiten für das Auftreten eines Symbols (A, T, G, C), je nach dem ob es innerhalb (+ Modell) oder ausserhalb (- Modell) der CpG – Inseln stattfindet • Daraus leitet sich die WK rst für jedes dieser beiden Modelle: rst+ = cst+/∑t`cst`+ rst- = cst-/∑t`cst`- (wobei cst die Anzahl der Fälle in welchen Symbol t Symbol s folgte ist) • rst+ undrst- statistisch ermittelbar
Viterbi Algorithmus Beispiel: CpG – Inseln HMM
Viterbi Algorithmus • Ein rekursiver Algorithmus zum Finden des wahrscheinlichsten Pfades π* (mit π* = argmaxP(x, π)) • Sei vk(i) die WK eines wahrscheinlichsten Pfades, der in Zustand k endet mit Beobachtung i • Sei vk(i) bekannt für alle i, dann für i+1 gilt: vl(i+1) = el(xi+1)max(vk(i)rkl)
Viterbi Algorithmus 0.63
Viterbi Algorithmus 0.63*0.6 ≈ 0.378
Viterbi Algorithmus 0.63*0.6 ≈ 0.378
Viterbi Algorithmus 0.17*0.25
Viterbi Algorithmus 0.17*0.25 ≈ 0.042
Viterbi Algorithmus 0.2*0.05 ≈ 0.010
Viterbi Algorithmus 0.378
Viterbi Algorithmus 0.378*0.500
Viterbi Algorithmus 0.378*0.500*0.15
Viterbi Algorithmus 0.378*0.500*0.15 ≈ 0.028
Viterbi Algorithmus 0.042
Viterbi Algorithmus 0.042*0.375
Viterbi Algorithmus 0.042*0.375*0,15 ≈ 0.002
Viterbi Algorithmus 0.010*0.125*0.15 ≈ 0.0001
Viterbi Algorithmus Max(0.028, 0.002, 0.0001) = 0.028
Viterbi Algorithmus Max(0.028, 0.002, 0.0001) = 0.028
Viterbi Algorithmus 0.378*0.25*0.25 ≈ 0.023
Viterbi Algorithmus 0.042*0.125*0.25 ≈ 0.001
Viterbi Algorithmus 0.010*0.675*0.25 ≈ 0.001
Viterbi Algorithmus Max(0.023, 0.001, 0.001) = 0.023
Viterbi Algorithmus 0.378+0.028+0.0007 ≈ 0.407