870 likes | 990 Views
Baysian Estimation of the Number of Inversions in the History of Two Chromosomes T. L. York, R. Durrett and R. Nielsen Baysian Estimation of Genomic Distance T. L. York, R. Durrett and R. Nielsen. Allgemein evolvieren Genome durch: Translocations Fusions Fisions Inversions.
E N D
Baysian Estimation of the Number of Inversions in the History of Two Chromosomes T. L. York, R. Durrett and R. Nielsen Baysian Estimation of Genomic Distance T. L. York, R. Durrett and R. Nielsen
Allgemein evolvieren Genome durch: Translocations Fusions Fisions Inversions
Ist es sinnvoll nur Inversionen zu betrachten? Ja, für bestimmte Datensätze: mitochondriale und Chloroplasten DNA Gonosomen DNA von Drosophila spec.
Wie werden die Chromosomen in den Datensätzen repräsentiert? Über sog. „Marker“ werden spezifische Gene, die auf beiden Chromosomen auftauchen, lokalisiert. Marker können 2 Orientierungen besitzen ( + , - ) Ist sowohl die Markerordnung als auch die Orientierung identisch, gelten auch die Chromosomen als identisch. Repräsentation also „nur“ über einen Satz von Markern.
Frühere Ansätze zur Bestimmung der Verwandtschaft über Inversionen: 1. Bestimmung der „Inversions Distanz“: Idee: Kleinst mögliche Zahl an Inversionen, die nötig sind, um Chromosom 1 in Chromosom 2 zu überführen.~ „Sorting by Reversals“ NP- Hard aber branch-and-bound Methode verfügbar. Problem: Keine Garantie, dass Minimum Anzahl = wahre Anzahl an Inversion ist
Frühere Ansätze zur Bestimmung der Verwandtschaft über Inversionen: 2. Schätzung der wahren Anzahl von Inversionen per "break points“ Break points: Anzahl an adjazenten Marken in einem Chromosom, die in dem anderen nicht adjazent sind Idee: Die Inversions Distanz ist mindestens ½ mal die Anzahl von break points.~ Problem: Diese Grenze ist sehr grob geschätzt.
Der „break point“ – Graph • Der Schlüssel zum Ermitteln der Inversions Distanz ist der break point graph von Hannenhalli & Pevzner, 1995 • 1.Fall: Markerorientierung ist bekannt ( „signed permutation“ ) • Jeder Marker kann sich mit „Startpunkt“ und „Endpunkt“ vorgestellt werden. • Der Graph einer orientierten Permutation von N Markern, pa, relativ zu einem anderen, pb, hat 2N+2 Knoten, für jedes Ende eines Markers jeweils einen, plus jeweils einen für die Enden des Chromosoms.
Der break point Graph - signed, ein Beispiel: Der Datensatz des ersten Chromosoms (a) ist (+2,-3,+1,+4)~ Der „Startpunkt“ des Markers k wird jetzt zu 2k-1 und der „Endpunkt“ zu 2k 3:4, 6:5,1:2,7:8 Anfügen von 0 links und 2N+1 = 9 rechts führt zu (2,-3,1,4) (0,3:4, 6:5,1:2,7:8,9). Die mit „:“ getrennten Paare sind jeweils die Enden eines Markers => Sie bleiben in jeder Permutation adjazent
Der break point Graph - signed, ein Beispiel: • Der Datensatz des zweiten Chromosoms (b) ist (-1,-4,2,3) ~ • (-1,-4,2,3) (0,2:1, 8:7,3:4,5:6,9). Aus beiden Sätzen kann man dann den Break point graph pa relativ zu pb erzeugen: Jeder, in dieser Permutation adjazente Marker aus Pa (Pb) ist durch eine „black Edge“ ( „grey Edge“ ) verbunden. Die verbundenen Marker bilden eine cycle decomposition
Der break point – Graph - signed Sei die Anzahl an Zykeln in der Zykel-Dekomposition c(pa,pb). Eine Inversion I auf pa verursacht den Bruch zweier „black edges“ und erzeugt zwei neue. 3 mögliche Effekte auf die Zykel Dekomposition: 1. Ein Zykel wird in zwei neue aufgespalten 2. Zwei Zykel werden zu einem vereint 3. Veränderung der Knoten Reihenfolge innerhalb eines Zykels c = c(I pa,pb)- c(pa,pb) = +1, -1 or 0
Der break point Graph - signed Wenn pa = pb dann ist die Anzahl der Zykel = N+1 pa = pb = (2,-3,1,4) (0,3:4, 6:5,1:2,7:8,9) Da eine Inversion maximal 1 zusätzlichen Zykel erzeugt braucht man mindestens N+1-c Inversionenum pa in pb zu überführen.
Komplikationen im break point Graph - signed 1. Hurdles: Angenommen pa = (3,2,1) und pb = ( 1,2,3 ) keine Inversion kann die Anzahl der Zykel erhöhen => Wenn h(pa, pb)die Anzahl der Hurdles ist, dann ist n + 1- c + h eine untere Grenze für die Inversions Distanz 2. Fortress Eine bestimmte Anordnung von Hurdles erzeugt eine Fortress ein weiterer Schritt notwendig Sei f (pa, pb)=1 wenn der Graph eine Fortress ist und 0 sonst
Der break point Graph - signed Formel für die untere Grenze der Inversions Distanz im Graph ist also: d (pa, pb)= n+1-c+h+f Hannenhalli und Pevzner haben gezeigt, dass man für orientierte Permutationen, die Distanz in polynomieller Zeit berechnen kann. Algorithmus liefert gute Ergebnisse für signed Permutations.
Der break point Graph - unsigned 2. Fall: Markerorientierung ist nicht bekannt. ( „ unsigned permuation, partially signed permutation „) Realistischer Fall, da genomic Data in Form von comperative Maps meist unsigned oder nur partiell orientiert vorliegt
1,2,3,4,5 +1 7,8 +3 6 ?2 9 ?4 11,10 -5 14,13,12 -6
Der break point Graph - unsigned +1, +3, ?2, ?4, -5, -6 Mit wenig Aufwand kann man die 4 Möglichkeiten ausprobieren, und kommt zu der signed permutation +1, +3, -2, +4, -5, -6 mit der minimalen Distanz 4. In den meisten Fällen ist durchprobieren nicht möglich. Beim Vergleich von D. melanogaster und D. repleta müsste man 260 > 1018 Möglichkeiten durchprobieren...
A Baysian Approach – Modell Annahmen • Umordnung geschieht nur infolge von Inversionen • Das Auftreten einer Inversion ist ein Poisson Prozess mit unbekannten Mittelwert ; Die Wahrscheinlichkeit von exakt L aufgetreten Inversionen ist: P(L| )=e-L/L! L = 1, 2, ... • Wir nehmen a priori eine Gleichverteilung für an: P() = 1/ max für 0 < <= max • Die Anzahl der verglichenen Marker auf beiden Chromosomen ist N. Dabei ist es egal ob wir die Orientierung eines Markers kennen oder nicht. Ist die Orientierung bekannt ( nicht bekannt ) repräsentieren wir die Daten D als ein Paar von signed ( unsigned ) Permutationen pa, pb. • Wir unterscheiden N(N+1)/2 mögliche Inversionen. • Jede der N(N+1)/2 möglichen Inversionen hat die gleiche Wahrscheinlichkeit
A Baysian Approach Es gibt insgesamt (N(N+1)/2)Lx gleichwahrscheinliche Inversionssequenzen X der Länge Lx 4(4+1)/2 = 10 mögliche Inversionen +1 +2 +3 +4 P4 P6 P2I3I4 P5I5 P1I1I2 P3 105 mögliche Inversionssequenzen 5X der Länge 5
A Baysian Approach Sei die Menge aller möglichen Inversionssequenzen, dann ist die Wahrscheinlichkeit für jedes X geben P(X| ) = (e-Lx/Lx!)(N(N+1)/2)-Lx Ws für das Auftreten von Genau L Inversionen Ws für genau eine Sequenz der Länge L aus allen möglichen
A Baysian Approach- MCMC Ziel ist es die postiori Ws von X und zu erhalten. P(X|D) und P (|D). Erzeugen einer Markov Kette mit dem Zustandsraum: x R+ und stationärer Verteilung P(X, |D), X , R+ Anzahl der Inversionen Rate der Inversionen
A Baysian Approach- MCMC Idee: Samplen der Werte von und X wenn die Markov Kette in ihrer stationären Verteilung ist. Gibt nicht nur den wahrscheinlichsten Zustand aus, sondern eine Menge wahrscheinlicher Zustände, die für die gegeben Daten als „typisch“ bezeichnet werden können ABER: Wie kommt man in die stationäre Verteilung?
A Baysian Approach- Metropolis Hasting Algorithmus y* Qyx x Qxy y*Qyx xQxy min 1, x y Qxy „proposal step“ Qyx
A Baysian Approach Bayes Theorem: P(X|Y) =P(Y|X)*P(X) P(Y) Stationäre Verteilung P(X, |D) = P(D| X, )P(X,)/P(D) = P(D| X, )P(X|)P( )/P(D) P(X,Y)=P(X|Y)*P(Y) 1 max /P(D) = 1 (e-Lx/Lx!)(N(N+1)/2)-Lx y* Qyx x Qxy
A Baysian Approach – Updating X PaI1 I2 I3 I4I5 I6 pb I7 X kann man sich als ein „Inversionspfad“ vorstellen, der Sequenzen von Permutationen, p0 = pa, p1,... pL = pb und von Inversionen I1,I2, ... IL mit pi = Iipi-1, i = 1, 2, ... L umfasst. Der neue vorgeschlagene Pfad, Y, wird wie folgt konstruiert:
A Baysian Approach – Updating X PaI1 I2 I3 I4I5 I6 pb I7 1. Wähle einen zu ersetzenden Bereich von X. Wähle mit Ws qL(l,j), eine Länge,l ,(0 <l< L) und eine Startpermutation, pj, ( 0 < j < L-l ). Der Subpfad von p= pj zu p = pj+l wird in Y von einem neuen ersetzt. p p 2. Generiere einen neuen Subpfad. Verwende den breakpoint Graph von p relativezu p, wähle eine Inversion, I1‘, zufällig, aber c = 1 mit hoher Ws. Dann fahre in gleicher Weise fort, wähle I2‘, unter Betrachtung von I1‘p relativ zu p, und so weiter bis I1‘, I2‘... Il‘‘p = p.
A Baysian Approach – Updating X in Detail 1. Wähle einen Bereich von X, der ersetzt werden soll Wähle die Länge l des zu ersetzenden Teilstückes durch das sampeln aus einer Verteilung q(l) Wähle j gleichverteilt zufällig aus 0, 1, ... Li- l mit = 8 und = 0.65 lN Q(l) 1- tanh - 1
A Baysian Approach – Updating X in Detail 2. Erzeugung eines neuen Subpfades Start: p = pj End: p = pj+1 Wir suchen eine Sequenz von Inversionen I1‘, I2‘, ... Il‘ und dazwischenliegenden Permutationen p0‘ = p, p1‘, p2‘... pl‘‘= pmit pi‘ = Ii‘pi-1, i = 1,2,...l‘. Wir betrachten dazu den breakpoint Graph von pi-1‘ relativ zu p
A Baysian Approach – Updating X in Detail 2. Erzeugung eines neuen Subpfades Klassifiziere alle Inversionen nach c = +1, 0, -1 Erinnerung: pa = pb wenn Anzahl der Zykel = n+1 Wähle I so, dass mit hoher Ws c = +1 => Ein Schritt „vorwärts“ Man nimmt also an, dass kurze Pfade wahrscheinlicher sind als lange.
A Baysian Approach – Updating X in Detail 2. Erzeugung eines neuen Subpfades Wenn N+1, N0 und N-1 die Anzahl der Inversionen ist für c = +1, 0, -1 dann ist die relative Ws für eines davon 1, 1, 2. Nach der Auswahl ziehen wir gleichverteilt eine der N Inversionen => Ws für ein c = +1 = 1/((1+1+ 2)N+1)
A Baysian Approach – Updating X in Detail 2. Erzeugung eines neuen Subpfades Wenn N+1 = N0 = 0 sind die Permutationen gleich ~ Mit Ws 1- 3 stoppen wir hier bzw. mit Ws 3 fahren wir mit c = -1 fort.
A Baysian Approach – Updating X in Detail 2. Erzeugung eines neuen Subpfades Die Ws qnew für den neuen Subpfad der Länge l‘ ist das Produkt von l‘ +1 Faktoren Einen pro Inversion + Ws für das Stoppen wenn man pb erreicht Die Länge des vorgeschlagenen Pfades ist L‘ = L+ l‘-l
A Baysian Approach – Updating X in Detail 3. Errechnen der „ forward proposal probabiltiy“ Q(Y|X) = Q(XY) = qL(l,j) qnew 4. Errechnen der „ acceptance probabiltiy“ Q(X|Y) = Q(YX) = qL‘(l‘,j) qold
A Baysian Approach – Updating X in Detail ( unsigned ) Anstatt die Markerorientierung zu berechnen verwendet man einfach orientierte Permutationen Man lässt die Startpermutation über die 2N orientierten Permutationen laufen. Update also sowohl für die Markerorientierung als auch für die Inversionen
A Baysian Approach – Updating X in Detail ( unsigned ) Pa F Fpa F Palpha F Fpalpha 1. Wähle eine Subpfad genau wie im Signed case. 2. Wende den Flip Operator F an Pa an und lasse die Inversionen bis Palpha gleich. 3. Erzeuge den neuen Pfad genau wie Im signed case Wieso kann man das machen?
A Baysian Approach – Updating X in Detail ( unsigned ) Pa F Fpa F Palpha F Fpalpha Das Durchführen eines Flips ist eine Inversion eines einzelnen Markers. Inversionen kann man über c bewerten! Führe Flips mit c = -1 mit Ws 4, 0,5 für c = 0 oder c = 1 durch.
A Baysian Approach – Updating Ein Gibbs Schritt wird verwendet, um zu aktualisieren D.h. wird zufällig gemäß der Ws von gegeben die Anzahl der Inversionen und der Daten aktualisiert P(|X,D) P(X|)P() e- LxP()
A Baysian Approach – convergence monitoring Methode von Gelman und Rubin: Man brauch mindestens 2 Chains für die gleichen Daten Definiere eine „between chain variance“ B und eine „within chain variance“ W. Konvergenz ist erreicht wenn R0,5 = ((n-1)/n+B/W)0,5 sich 1 nähert. Hier verwendet: 5 – 10 Ketten, Burn In Phase bis R0,5 1.1
A Baysian Approach – improving convergence Das Update Schema hat viele Parameter, die die Konvergenz der Ketten beinflussen: und : kontrollieren die Länge des zu ersetzenden Teilstücks 1, 2. 3 : kontrollieren die Erzeugung des neuen Subpfades ( kurze vs. Lange Pfade 4 : kontrolliert die Bevorzugung für c = +1 Markerflips
A Baysian Approach – improving convergence Durch Läufe mit simulierten Daten ist man zu folgenden Ergebnissen gekommen: : 8 : 0.65 1: 0.03 2 : 1/2 3: 12 4 : 0.025
A Baysian Approach – Applications to Real Data 1. Human-cattle data 14 unsigned Markers 8 simultane Ketten Startzustände werden mit verschiedenen 1 erzeugt. 815.104 Iterationen Konvergenz nach 8.192 Iterationen Danach über jede Iteration gemittelt Laufzeit: 254 Sekunden Athlon 1,2 GHz Prozessor
A Baysian Approach – Applications to Real Data 1. Human-cattle data Ergebnisse: Wahrscheinlichster Wert für L = dem parsimony Wert: 4 Aber es ist wahrscheinlich, das die Anzahl der wahren Inversionen höher als 4 ist: 95% credible set für L ( 4 L 9 ) => die Erwartete Anzahl an Inversion ist wesentlich höher als 4
A Baysian Approach – Applications to Real Data 1. Human-cattle data
A Baysian Approach – Applications to Real Data 2. D. melanogaster und D. repleta Daten 79 unsigned Markers 6 simultane Ketten Startzustände werden mit verschiedenen 1 erzeugt. 43 mio Iterationen Konvergenz 1,7 mio Iterationen Danach über jede Iteration gemittelt Laufzeit: 3,456 x105 sec 4 Tage Athlon 1,2 GHz Prozessor
A Baysian Approach – Applications to Real Data 2. D. melanogaster und D. repleta Daten Ergebnisse: Wahrscheinlichster Wert für L = 87 Erwartungswert: 92 Inversionen 95% credible set für L: ( 71 L 118) Parsemony Wert: 53 95% credible set für : (64.14 125.00 )
A Baysian Approach – Conclusion • Lösung des Problems durch einen voll probabilistischen Ansatz machbar • Für große Datensätze versagen die Parsemony Methoden • Im Gegensatz zu den Parsymony Ansätzen ermöglicht der Bayes Ansatz zusätzlich die Beantwortung von folgenden Fragen: Treten alle Inversionen mit der gleichen Rate auf? Sind Inversionsraten über Abstammungslinien konstant • Ziele Einbinden von Translokationen, Chromosomenbrüchen und Fusionen Erweiterung auf komplette Genome i.d „Genomic Distance“