Phylogenie, Ultrametriken, Additive Bäume

Werbung
Bioinformatik
Einführung in die Phylogenie
(lat.: phylum = Stamm)
Distanzbasierte phylogenetische Algorithmen
Ulf Leser
Wissensmanagement in der
Bioinformatik
CLUSTAL W: Grundaufbau
• Gegeben k Sequenzen
• Drei Schritte
– Berechne alle paarweisen Alignmentscores
– Konstruiere einen „Guide Tree“ durch hierarchisches Clustering
– Berechne Teil-MSA und verschmelze sie gemäß dem Guide Tree
• Idee dahinter
– Aligniere erst sehr ähnliche Sequenzen – Signale werden verstärkt
– Werden z.B. zwei sehr verschiedene Cluster von Sequenzen
betrachtet, berechnet CLUSTAL automatisch erst zwei (homogene)
MSA und verschmilzt diese am Ende
• Hohe Chance, dass konservierte Blöcke erhalten bleiben
– Außenseiter kommen erst spät dazu und können die Blockstruktur
nicht mehr stören
– Orientierung an der „tatsächlichen“ Entstehungsgeschichte, dem
phylogenetischen Baum
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
2
Konstruktion des Guide Trees
A
A
B
C
D
E
A
17
59
59
77
B
37
61
53
C
13
41
D
21
E
B
C
D
A
A
A
B
E
CD
17
77
59
53
49
C
31
D
B
E
B
E
E
E
CD
CD
31
AB
65
54
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
A
A
B
B
C
C
D
D
E
E
3
Schritt 3: Progressive MSA Generierung
• Berechnung paarweiser Alignments in der Reihenfolge des
Guide Trees
• Alignment einer Sequenz/MSA A1 mit einem MSA A2
– Dynamische Programmierung mit linearem Gapscore
– Wert eines Mismatches/Matches ist der Durchschnittsscore aller
Paare mit einer Aminosäure aus A1 und der anderen aus A2
– Gaps werden mit dem schlechtesten Score der verwendeten
Substitutionsmatrix bestraft
– Bei k Sequenzen sind das maximal k/2*k/2 = O(k2) Scores
• Beispiel
A
B
C
…P…
…G…
…P…
D
E
F
…A…
…A…
…Y…
• Score
– (2*s(P,A)+s(P,Y)+
2*s(G,A)+s(G,Y)+
2*s(P,A)+s(P,Y) )/9
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
4
Iterative Verfahren
• CLUSTAL W ist „greedy“
– Ergebnis abhängig von der Reihenfolge des Hinzunehmens von Sequenzen
– Der Guide Tree kann (evolutionär) falsch sein oder wenig Aussagekraft
haben, wenn Unterschiede nur sehr klein sind
– Was am Anfang schief läuft, ist besonders schlimm
• „Once a gap, always a gap“
• Einmal getroffene Alignments werden nie mehr korrigiert, nur „gestreckt“
– Gefahr eines lokalen Minimums ist immer gegeben
• Was kann man tun?
– Vieles ausprobieren und Ergebnisse vergleichen
• Verschiedene Reihenfolgen
• Sampling – verschiedene Sequenzmengen
– Iterative Verfahren – sukzessive Verbesserung des (progressiv gefundenen
Alignments)
• Jede Sequenz einmal entfernen und neu alignen
• Solange bis Konvergenz
• Weitere Iterationsstrategien bekannt
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
5
Aktuelles
•
•
•
•
•
21.10.2004. Kleinstes Wirbeltiergenom birgt Erkenntnisse für Menschwerdung
Paris/London (dpa) - Französische Forscher haben das kleinste bekannte Erbgut eines
Wirbeltiers entziffert und damit auch neue Einblicke in die Entwicklung des Menschen
ermöglicht.
Die Entzifferung der 21 Chromosomen des Grünen Kugelfischs (Tetraodon nigroviridis)
mit mehr als 300 Millionen «DNA-Buchstaben» erlaube Rückschlüsse auf das menschliche
Erbgut, schreibt die Gruppe unter der Leitung von Hughes Roest Crollius vom
französischen Forschungszentrum CNRS im Fachjournal «Nature» (Bd. 431, S. 946).
Die oft als Zierfische gehaltenen Allesfresser enthielten zahlreiche «Schlüsselgene», die
bisher bei Fischen unbekannt waren, und 900 zuvor unerkannte menschliche Gene. Für
die meisten menschlichen Gene gebe es zwei Gegenstücke im Genom des Grünen
Kugelfischs, heißt es. Bei den Vorfahren des Fischs habe es also einmal eine
Genverdoppelung gegeben. Die Erkenntnisse ließen darauf schließen, dass der
gemeinsame Vorfahr des Grünen Kugelfischs und des Menschen - ein Knochenfisch, der
vor mehr als 400 Millionen Jahren lebte - zwölf Chromosomenpaare besessen habe.
Das Genom des Grünen Kugelfisches ist nur ein Achtel so umfangreich wie das in
menschlichen Zellen. Bestimmte Sequenzen sind verkleinert. In den vergangenen 400
Millionen Jahren sei das Genom des Grünen Kugelfischs nur zehn Mal in größerem Maße
verändert worden, sehr viel seltener als das des Menschen, hieß es. Die 8 bis 17
Zentimer langen Tropenfische bevorzugen Brackwasser und leben in Flüssen und
Sümpfen sowie küstennahen Meeren Süd- und Ostasiens.
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
6
Inhalt dieser Vorlesung
• Phylogenetische Bäume
• Entstehung von Stammbäumen: Evolution
• Distanzbasierte Algorithmen zur Berechnung von
Stammbäumen
– Ultrametriken und additive Bäume
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
7
Phylogenetische Bäume
Stammbaum (Phylogenetic Tree)
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
8
Stammbäume versus Klassifikation
• Zuerst war die Klassifikation
– Carl Linnaeus, ca. 1740: Systema Naturae
– Annahme: Arten verändern sich nicht (Prä-Darwin)
– Einteilung der Lebewesen in
• Kingdoms - classes – orders –families – genera- species
• SKOFGA (Stamm, Klasse, Ordnung, Familie, Gattung, Art)
– Innere Knoten einer Klassifikation sind abstrakt
• Stammbäume
– Ergeben sich aus der Annahme der Evolution
– Auch Stammbäume wurden lange aus
morphologischen Eigenschaften abgeleitet
– Jeder Knoten in einem Stammbaum hat einmal als Art
existiert
– Knoten im Baum (also Spezies) heißen taxa
• Was definiert eine Spezies?
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
9
Klassifikation
•
•
•
•
•
•
•
•
•
•
•
•
•
Eukaryoten
Tiere
diverse Zwischenstufen
Chraniata (Schädelknochen)
Vertebraten (Wirbeltier)
Viele Zwischenstufen
Mammals (Säugetiere)
Eutheria (Placenta)
Primaten (Affen)
Catarrhini
Hominidae (Mensch, Schimpanse, OrangUtan, Gorilla)
Homo (erectus, sapiens ...)
Homo Sapiens
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
10
„Homo floresiensis“ (Hobbit?)
H. sapiens
H. habilis
Homo (humans)
H. ergaster
H. rudolfensis
H. erectus
H. Floresiensis ?
• Entdeckung 2003
• Lebte vermutlich vor 95 000 bis vor 12 000 Jahren auf der
indonesischen Insel Flores
• Körperhöhe nur ca. 100 cm
• Gehirnvolumen nur 380 cm3
– Homo erectus: 600-1200, h. sapiens: 1400
• Rückentwicklung? Vorläufer?
Quelle:
Brown, P. et al. Nature 431, 1055-1061 (2004).
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
11
Evolutionsgeschichte neu geschrieben
• Stammbaum – welche Art geht aus welcher hervor?
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
12
Charles Darwin
„The origin of species“ (1859)
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
13
Bsp.: The Computer Tree
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
14
Moderne Stammbaumberechnung
• Molecular phylogeny
• „Berechnung“ von Stammbäumen aus molekularen
Eigenschaften seit Mitte der 60ziger Jahre
– Zuckerkandl und Pauling, 1965
• Berechnung aufgrund von
DNA oder Proteinsequenzen
• Annahme: Evolution verläuft
in kleinen Schritten
• Wenn sich also Sequenzen
ähnlich sind, sind die Spezies
evolutionär eng verwandt
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
15
Wozu?
• Aufklärung der evolutionären Verhältnisse
• Aufklärung von familiären Verhältnissen
– Wenn genügend Sequenzen vorhanden
• Aufklärung von Infektionswegen
– Bei schnell mutierenden Viren (z.B. HIV)
– Varianten werden in verschiedenen Personen gefunden
– Herausrechnen des Verbreitungsweges anhand der
Abstammungsverhältnisse
• Phylogenetic Inference
– Wenn alle nahe verwandten Spezies ein bestimmtes
Gen haben, dann sollte ich das auch haben
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
16
Evolutionsmodell
• Alles Leben stammt von einem Vorfahren ab
• Dieser und seine Nachkommen vermehren sich durch
Kopie
• Beim Kopieren treten Fehler auf (Mutationen)
– Nachfahren sind mehr oder weniger überlebensfähig
• Selektion – „Survival of the fittest“
– Fatale Mutationen lassen Nachkommen gar nicht erst entstehen
– Einschränkungen der Überlebensfähigkeit führen zur schnellen
Ausrottung
– Verlust der Fortpflanzungsfähigkeit führt zur Ausrottung nach einer
Generation
• Unterschiedliche Mutationen sind in unterschiedlichen
Lebensräumen unterschiedlich vorteilhaft
– Anpassung an ökologische Nischen
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
17
Artenbildung
• Arten entstehen durch Veränderungen aus einer
anderen Art
Vorfahr
Gorilla
Humanoide
Fische
Reptilien
H erectus
H sapiens
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
Amphibien
18
Beobachtungen
• Beobachten können wir immer nur die Mutationen, die sich
durchgesetzt haben
– Das können natürlich verschiedene Varianten sein
– Wir können i.A. Mehrfachmutationen an einer Position nicht erkennen
• Damit ist nicht alles festgelegt
– Sind alle Mutationen gleich wahrscheinlich?
• Substitutionsmatrizen
– Treten Mutationen in gleicher Frequenz auf?
• Gibt es Zeiten erhöhter Mutationshäufigkeit?
– Bzw. – in denen Mutationen besonders häufig überleben
– Sonneneruptionen, Dinosauriersterben, Klimaverschiebungen
• Gibt es Lebewesen / Teilbäume, die schneller mutieren?
– Abhängig vom Anpassungsdruck oder der Güte der Reparaturmechanismen
• Gibt es Sequenzabschnitte, die unterschiedlich schnell mutieren?
– Coding versus non-coding Regions
• Annahme der Molecular Clock
– Mutationen setzen sich bzgl. der Zeit immer mit gleicher Häufigkeit durch
– Das heißt auch, dass alle Spezies die gleiche Mutationsrate haben
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
19
Daten
• Messen kann man nur die DNA existierender Arten
– Ur-DNA ist nicht bekannt
– Vom Stammbaum kennt man also nur die Blätter
• Zwei mögliche Ziele
– Rekonstruktion des wahrscheinlichsten Stammbaums der Arten
– Rekonstruktion der wahrscheinlichsten Ur-DNA und aller Zwischenstufen
• Den tatsächlichen Stammbaum kann man nicht berechnen
– Man kennt die ausgestorbenen Arten nicht
– Man kann ausgestorbene Mutationen nicht erkennen
– Man kann Doppelmutationen nicht erkennen
Bekannt
AGGTAGCT
Bekannt
Identisch!
AGGTTGCT
AGGTAGCT
AGGTTGCT
AGGTTTCT
Unbekannt
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
AGGTTGCT
Bekannt
20
Ein Baum?
• Wir wollen Bäume für Spezies, aber Messen nur die DNA
von Individuen
• Stammbäume kann man unmittelbar berechnen für
– Ein Gen innerhalb einer Art
• Wunderbar zur Abstammungsbestimmung (Vaterschaftstest)
– Ein Gen in verschiedenen Spezies
• Damit erhält man einen Gen/Artenstammbaum
• Den Artenstammbaum berechnet man als „Mittelwert“ aus
den Stammbäumen vieler genspezifischer Stammbäume
• Wir beschäftigen uns nur mit genspezifischen
Stammbäumen
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
21
Probleme mit dem Modell
•
Gene Fusion
•
Paralogs
•
Horizontal gene transfer
•
Evolutionsereignisse sind nicht nur Mutationen
•
Homoplasy
– Gene in einem Genom können verschmelzen
– Die haben dann tatsächlich zwei Vorfahren im Genom des Vorfahrens
–
–
–
–
Gene duplizieren sich innerhalb eines Genoms und divergieren durch Mutationen
Ortholog – Ähnliches Gen in anderer Art (mit wahrscheinlich gleicher Funktion)
Paralog – Ähnliches Gen in gleicher Art (mit eventuell anderer Funktion)
Man darf nur orthologe Gene miteinander vergleichen, sonst werden
Voraussetzungen verletzt
– Gerade im Viren / Bakterienbereich bekannt
– Auch in höheren Lebewesen schon beobachtet (vermittelt durch Bakterien)
– Rekombination bei geschlechtlicher Fortpflanzung
– Verschieben / Löschen von ganzen Sequenzblöcken
– Sequenzen, die sich ähnlich sind aber nicht miteinander verwandt sind
– „Convergent evolution“ – Arten entwickeln Fähigkeiten oft unabhängig voneinander
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
22
Bäume
•
Knoten = Arten
•
Blätter = Lebende Arten?
•
Kanten
•
•
Jeder Knoten hat exakt einen Vater
Wurzel
•
Unser Bäume sind alle binär
•
Es gibt viele Visualisierungsvarianten
– Lebend oder ausgestorben
– Die Sequenz der Blätter kennt man, die
von inneren Knoten nicht
– Endpunkte einer bekannten Entwicklung
– Symbolisieren Mutationen
– Länge kann (muss nicht) mit zeitlicher
Entfernung korrelieren (Scaled trees)
– I.A. muss ein Baum keine Wurzel haben
– Bei Stammbäumen ist die Wurzel u.U.
nicht ohne weiteres berechenbar (siehe
Maximum Parsimony)
– Jeder Knoten hat exakt zwei Kinder
– Reihenfolge der Kinder ist egal
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
23
Wie schwierig wird das?
Wie viele binäre, ungeordnete Bäume für n Spezies gibt es?
A
A
B
B
A
C
A
A
B
B
D
A
C
C
B
D
C
A
A
C
B
D
B
B
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
D
A
C
B
A
B
C
C
C
24
D
Von Blättern zu inneren Knoten
• Aus einem binären Baum mit n Blättern und k Kanten
können k+1 binäre Bäume mit n+1 Blättern hervorgehen
• Wie viele Kanten hat ein binärer Baum?
– Jeder Knoten außer der Wurzel hat genau eine eingehende Kante
– Also sind es „Anz. Blätter“ + „Anz. innere Knoten“ -1 (Wurzel)
• Wie viele innere Knoten k hat ein binärer Baum mit n
Blättern?
• Umgedreht: Wie viele Blätter (n) hat ein binärer Baum mit k inneren
Knoten?
– Induktionsanfang: Für k=1 ist n=2; n(1)=2=k+1
– Sei n(k) bekannt. Wo können wir neue innere Knoten hinzufügen? An
jeder Kante. Der neue Knoten teilt die Kante und muss als Kind den alten
Teilbaum und ein neues Blatt haben. Also gilt: k
n(k + 1) = n(k ) + 1 = n(k − 1) + 1 + 1 = ... = ∑1 + 1 = k + 1
i =1
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
25
Von Knoten zu Bäumen
• Für die Anzahl innerer Knoten k (inkl. Wurzel) eines
binären Baums mit n Blättern gilt: n=k+1; also k=n-1
• Ein binärer Baum mit n Blättern hat damit
n+(n-1)-1=2n-2 Kanten
• Also
– Aus einem Baum mit 2 Blättern können (2*2-1)=3 Bäume mit 3
Blättern hervorgehen
– Aus einem Baum mit 3 Blättern können (2*3-1)=5 Bäume mit 4
Blättern hervorgehen
– ...
– Aus einem Baum mit n Blättern können (2*n-1) Bäume mit n+1
Blättern hervorgehen
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
26
Ergebnis
• Sei t(n) die Zahl binärer
Bäume mit n Blättern
t (n) = t (2) * t (3) * t (4) * ... * t (n − 1) =
= 1* 3 * 5 * ... * (2(n − 1) − 1) =
=
=
=
=
(2n − 3)!
=
2 * 4 * 6 * ... * (2n − 4)
(2n − 3)!
=
 2n − 4 
 2  4  6
2  * 2  * 2  * ... * 2

2
2
2
2


     
(2n − 3)!
=
2 * (1) * 2 * (2) * 2 * (3) * ... * 2(n − 2)
(2n − 3)!
2 n − 2 * (n − 2)!
1
1
2
1
3
3
4
15
5
105
6
945
7
10.395
8
135.135
9
2.027.025
10
34.459.425
11
654.729.075
12
13.749.310.575
13
316.234.143.225
14
7.905.853.580.625
15
213.458.046.676.875
16
6.190.283.353.629.370
17
191.898.783.962.511.000
18
6.332.659.870.762.850.000
19
221.643.095.476.700.000.000
20
8.200.794.532.637.890.000.000
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
27
• Ultrametrische Bäume
• Additive Bäume
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
28
Ultrametriken
100 Millionen Jahre
80 Millionen Jahre
30 Millionen Jahre
A
D
B
C
• Stammbaum enthält die „branch points“ der Arten
• Wenn man den Baum und die Zeitpunkte weiß, dann gilt
– Alle Zahlen auf einem Pfad von der Wurzel zu einem beliebigen
Blatt nehmen strikt ab
– Wir können den Zeitpunkt der Aufsplitting als Abstandsmaß für
zwei Arten (Blätter) benutzen
• Für Blätter X, Y sei d(X,Y) das Label des kleinsten gemeinsamen
Vorfahren
• Im Beispiel: d(A,B)=80, d(B,C)=100, d(A,D)=80
– Das ist eine Metrik
• d(X,X)=0, d(X,Y)=d(Y,X), und d(X,Y)≤d(X,Z)+d(Z,Y)
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
29
Alles ganz einfach?
• Schreibt man diese Abstände in eine Ähnlichkeitsmatrix,
hat diese bestimme Eigenschaften (Ultrametrik)
• Jede Matrix mit diesen Eigenschaften entspricht genau
einem Baum und umgekehrt
• Den Baum kann man aus der Matrix effizient berechnen
– Siehe gleich
• Also ist das Phylogenie-Problem überhaupt kein Problem?
• Doch – denn wir wissen die Zeitpunkte nicht
– Wir approximieren sie durch „irgendwelche“ Abstandsmasse (EditDistanz, Hamming-Abstand, ...)
– Diese (gemessenen) Abstände müssen nicht die UltrametrikEigenschaften erfüllen (und tun es in der realen Welt auch nicht)
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
30
Ultrametrische Bäume
• Definition
Sei T ein Baum und D eine symmetrische Matrix mit n
Zeilen und n Spalten. T heißt ultrametrischer Baum für D
wenn gilt:
– T hat n Blätter, beschriftet mit den Zeilen von D
– Jeder innere Knoten von T hat zwei Kinder und ist mit einem Wert
aus D beschriftet
– Auf jedem Pfad von der Wurzel zu einem Blatt in T sind die Zahlen
strikt abnehmend
– Für alle Blätter i,j mit i≠j gilt: der kleinste gemeinsame Vorfahr von
i und j ist mit D(i,j) beschriftet
• Bemerkung
– Jeder echte Stammbaum ist ultrametrisch für die Abstandsmatrix
mit den Aufsplittzeitpunkten als Abstandsmaß
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
31
Beispiel
8
A
A
B
C
D
E
8
8
5
3
3
8
8
8
8
B
C
D
5
3
3
5
A
E
E
D
B
C
Das geht nicht immer!
A
A
B
B
8
C
3/8 ?
5/8 ?
5/3 ?
5
3
A
B
C
A
C
C
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
B
A
B
C
32
Überlegungen
• Das kann auch nicht immer gehen
– Matrix hat (n2-n)/2 relevante Zellen
– Baum hat nur n-1 innere Knoten
– Eine Matrix, zu der man einen ultrametrischen Baum konstruieren kann,
muss also Duplikate enthalten
• Definition
Eine symmetrische Matrix D mit n Spalten und Zeilen ist ultrametrisch,
wenn für beliebige Zeilen i, j, k gilt, dass das Maximum von D(i,j),
D(j,k) und D(i,k) genau zweimal vorkommt
• Bemerkung
– Sprich: Entweder
• D(i,j)=D(j,k) und D(i,j)>D(i,k)
• D(i,j)=D(i,k) und D(i,j)>D(j,k)
• ...
– Begriff: Eine Ultrametrik ist eine Metrik mit der zusätzlichen Bedingung
d(a,c)≤max(d(a,b), d(b,c))
• Für Metriken gilt nur d(a,c) ≤ d(a,b)+d(b,c)
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
33
Von der Matrix zum Baum und zurück
• Theorem
Eine symmetrische Matrix D hat einen ultrametrischen
Baum dann und nur dann wenn D selber ultrametrisch ist
• Beweis
– (1) Nehmen wir erst an, dass zu D ein ultrametrischer Baum T
existiert. Nehmen wir an, dass i, j, k wie folgt liegen (alle anderen
Knoten können wir ignorieren)
i
j
k
– Dann gilt offensichtlich D(i,k)=D(j,k) und D(i,k)>D(i,j)
– Dito kann man für die zwei anderen Varianten der möglichen Lage
von i, j, k verfahren
– Also ist D ultrametrisch
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
34
Beweis Gegenrichtung
• (2) Nehmen wir an, dass D ultrametrisch ist. Wir
konstruieren einen ultrametrischen Baum T aus D
– Betrachten wir eine beliebige Zeile i. Diese entspricht einem Blatt i
in T
– i hat n-1 kleinste gemeinsame Vorfahren (mit den n-1 anderen
Blättern), die beschriftet werden müssen mit den Werten D(i,x),
x≠i. Und das in sortierte Reihenfolge
– Der Pfad von i zur Wurzel muss nicht n-1 Knoten enthalten, denn
Werte können doppelt vorkommen. Nehmen wir an, dass es auf
dem Pfad d verschiedene Werte gibt (d≤n-1)
...
d Knoten
......
i
......
...
...
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
35
Beweis Gegenrichtung -2• Die Menge aller Blätter (ohne i) zerfällt also in d Klassen
– Alle Knoten einer Klasse befinden sich in einem Teilunterbaum bzgl.
des Pfades von i zur Wurzel
– Alle Knoten einer Klasse haben den selben Abstand zu i
• Wir basteln jetzt aus jeder Klasse einen Baum, dessen
Wurzel der Knoten auf dem Pfad von i zur Wurzel ist
• Betrachten wir ein Blatt j≠i und ein beliebiges anderes Blatt
k≠i. Drei Möglichkeiten
– k liegt in der selben Klasse wie j
– k liegt in einer Klasse „links“ von j
– k liegt in einer Klasse „rechts“ von j
...
...
i
...,k?,...
...,k?,...
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
...,k?,...
...,k?,...
...,j,...,k?,...
...,j,...,k?,...
36
Beweis Gegenrichtung -3• Fall 1: j und k in derselben Klasse
– Es folgt: D(i,j)=D(i,k) und D(j,k)<D(i,j)
• Fall 2: k liegt links von j
– Es folgt: D(i,j)=D(k,j) und D(i,k)<D)i,j)
• Fall 3: k liegt rechts von j
– Es folgt: D(i,k)=D(j,k) und D(i,j)<D(j,k)
• Da j und k beliebig waren, ist die Bedingung für ultrametrische
Matrizen für alle Tripel mit i erfüllt
• Nun kann man den Teilbaum für die Klasse bauen, die j enthält
• Und so weiter ....
• qed.
...
...
i
...,k?,...
...,k?,...
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
...,k?,...
...,k?,...
...,j,...,k?,...
...,j,...,k?,...
37
Folgerung
• Der Beweis ist konstruktiv; man kann genau auf
diese Weise einen ultrametrischen Baum bauen
• Theorem
Sei D eine ultrametrische Matrix. Dann gibt es
genau einen ultrametrischen Baum T für D.
• Beweis
– Offensichtlich durch Konstruktion (siehe Gusfield, p453)
• Kann in O(n2) implementiert werden
– Ist also effizient lösbar
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
38
Aber Vorsicht
• Reale Sequenzdaten sind selten ultrametrisch
– Unterschiedlicher Selektionsdruck auf den Codon Positionen auf DNA
Ebene
– Unterschiedlicher Selektionsdruck auf verschiedenen Aminosäuren eines
Proteins und auf unterschiedlichen Proteinen
– Mehrfachmutationen erzeugen zu geringe Abstände
• Wenn wir nur ein Gen betrachten und das alles nicht passieren würde
(bzw. wir annehmen, dass das alles nicht passiert – Molecular Clock),
dann sollte der Editabstand eine Ultrametrik ergeben
• Beispiel: Keine Ultrametrik
1 Mutation
1
1
B
5
A
1
A
C
A
B
5
D
C
B
6
C
D
8
12
4
8
6
D
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
39
UPGMA - Hierarchisches Clustering
• UPGMA
– „Unweighted pair group method with arithmetic mean“
– Anderer Name: Hierarchisches Clustering
• Sehr allgemeines Verfahren, kann bei allen möglichen
Problemen angewandt werden
• Sehr einfach, mit schönen Eigenschaften
– Wenn eine Matrix ultrametrisch ist, dann findet UPGMA den
richtigen Baum
– Alle UPGMA Bäume sind binär
• UPGMA nimmt die Molecular Clock an – alle Pfade von
einem Blatt zur Wurzel haben am Ende die selbe Länge
• Achtung: UPGMA konstruiert immer einen Baum
– Auch wenn die Matrix nicht ultrametrisch ist
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
40
UPGMA Verfahren
• Gegeben: Distanzmatrix D
• Erzeuge ein „Baumgerüst“ mit n Blättern
• Wähle den kleinsten D(i,j) Wert der Matrix und verbinde
die Knoten i und j durch einen neuen Knoten (ij) mit
Beschriftung D(i,j) und Kanten zu i und zu j
– Anfangs sind i und j Blätter, später können es auch innere Knoten
sein
• Lösche Zeilen und Spalten i und j aus M
• Füge in D eine Zeile und eine Spalte (ij) hinzu mit D(ij,k) =
(D(i,k)+D(j,k))/2
• Wiederhole, bis D leer ist
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
41
Beispiel
A
B
C
D
E
8
8
5
3
3
8
8
8
8
B
C
D
3
BC
B
C
A
D
E
5
A
BC
D
E
8
5
3
8
8
BC
D
3
B
5
C
AE
BC
D
8
5
3
A
D
5
BC
3
AE
BC
E
AED
AE
BC
3
8
B
C
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
D
A
E
42
Beispiel
5
AE
AE
BC
D
8
5
BC
3
AED
AE
BC
3
8
B
C
8
D
A
E
AEDBC
Kontrolle
5
AED
BC
AED
8
3
A
AE
BC
3
B
C
D
B
C
D
A
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
B
C
D
E
8
8
5
3
3
8
8
8
8
5
E
43
Wo UPGMA irrt
1
A
Der echte Baum
B
B
C
D
6
8
12
4
8
C
1
B
A
D
6
8
12
4
8
B
4
6
C
5
B
A
BC
BC
D
7
12
7
A
BCD
D
BC
C
D
9.5
A
ABCD
7
A
C
A
Was UPGMA erzeugt
C
1
5
6
D
B
1
9.5
4
BCD
BC
B
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
C
D
A
44
Wo UPGMA (hoffentlich) nicht irrt
• Sequenzierung der mitochondrialer DNA (16 KB) von 86 geographisch
verteilt lebenden Personen
• Ergebnis: Mitochondriale DNA scheint nach einer molekularen Uhr
abzulaufen; Divergenz ist ca. 1,7E-8 pro Base und Jahr
Quelle:
Ingman, M., Kaessmann, H., Pääbo, S. & Gyllensten, U. (2000)
Nature 408: 708-713
Quelle:
http://www.genpat.uu.se/mtDB/sequences.html
Methode: UPGMA
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
45
Komplexität
• n Durchläufe
– In jedem Durchlauf wird die Matrix um eine Zeile/Spalte kleiner
• n+2 Berechnungen
– 2 Kantenlängen
– O(n) neue Einträge in der Matrix
• Also O(n2)?
• So nicht
– Es bleibt das Problem, den größten Eintrag in der Matrix zu finden
– Damit sind wir bei O(n*(n*log(n)+n)) = O(n2log(n))
• Es gibt aber O(n2) Algorithmen
– Siehe Gusfield, Errata Webseite
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
46
Additive Bäume
• Abschwächung der Kriterien für Bäume
– Additivität statt Ultrametriken
• Definition
Sei D eine symmetrische Matrix mit n Spalten und Zeilen
(und nur positiven Werten; D(i,i)=0). Ein Baum T mit
Kantengewichten heißt additiver Baum für D, wenn gilt
– T hat n Blätter, beschriftet mit den Zeilen von D
– Für jedes Paar i,j ist D(i,j) gleich der Summe der Kantengewichte
auf dem (eindeutigen) Pfad von i nach j
• Bemerkung
– Die Kantengewichte gilt es natürlich zu bestimmen
– T muss keine Wurzel haben
• Dem „rooten“ eines Baumes werden wir uns später widmen
– Jede ultrametrische Matrix besitzt einen additiven Baum (nämlich
den ultrametrischen), aber nicht umgekehrt
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
47
Voraussetzungen
• Fragen
– Existiert zu jeder Matrix ein additiver Baum?
– Wie findet man einen additiven Baum zu einer gegebenen Matrix?
• Theorem
Eine Matrix D hat einen additiven Baum gdw für alle Zeilen
i, j, k, l ein Baum wie unten angegeben konstruiert werden
kann, so dass die 4-Punkt Bedingung gilt:
D(i,k)+D(j,l) ≤ D(i,j)+D(k,l) = D(i,l)+D(k,j)
i
b
a
k
j
m
c
e
n
f
l
• Bemerkung
– 4-Punkt Bedingung heißt, das
Knoten Nachbarn haben, zu denen
Sie näher sind als zu NichtNachbarn
(a+b) + (e+f) ≤ (b+c+e) + (a+c+f)
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
48
Gegenbeispiel
• Nicht alle Matrizen haben additive Bäume
A
A
B
B
2
C
D
2
2
2
2
C
A
1
1
3
D
C
B
0,5
0,5
0,5 oder 2,5?
D
• Beweis des Theorems
• Siehe Literatur
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
49
Neighbor-Joining
• Matrizen, Eigenschaften, Bäume, Algorithmen
– Ultrametrische Daten – UPGMA
– Additive Daten – Neighbor Joining
• Hierarchisches Clusterverfahren (wie UPGMA)
– Erzeugt einen binären Baum ohne Wurzel
– Grundaufbau wie UPGMA
•
•
•
•
Beginne mit so vielen Clustern wie Blättern
Wähle nach bestimmtem Kriterium zwei Cluster
Verschmelze die zwei Cluster und verbinde Knoten im Baum
Iteriere, bis nur noch ein Cluster vorhanden ist
• Unterschiede
– UPGMA
• wählt Cluster zur Verschmelzung nach Nähe zueinander
• Erzeugt inhärent eine Wurzel (durch wachsenden Abstand)
– Neighbor Joining
• Wählt Cluster nach der Nähe zueinander und dem Abstand zu anderen Clustern
– Sucht (und findet) die nächsten, echten, nahesten Nachbarn
• Erzeugt einen Baum ohne Wurzel
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
50
Verfahren
•
•
Bilde aus jeder Zeile einen Cluster
Berechne für jeden Cluster i den Abstand ui zu allen anderen Clustern
ui = ∑
k ≠i
•
•
•
D (i, k )
n−2
Suche das Clusterpaar (i,j), für das gilt
– Bemerkung:
!
• Wenn die Matrix einen additiven Baum hat, findet man damit die engsten Nachbarn;
Beweis in der Literatur
Erzeuge Cluster ij mit Kanten zu i und j mit Kantenlängen
D(i, j ) + ui − u j
D (i, j ) + u j − ui
d (i, ij ) =
d ( j , ij ) =
2
2
Erzeuge neuen Clusterknoten mit Abständen zu anderen Clustern
D (k , ij ) =
•
•
D (i, j ) − ui − u j = min
D (i, k ) + D ( j , k ) − D (i, j )
2
Lösche Cluster i und j
Iteriere, solange mehr als ein Cluster existiert
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
51
Beispiel (hier scheiterte UPGMA)
A
C
B
D
NJ-Abstände der Clusterpaare
A
A
B
C
D
6
8
12
4
8
B
C
6
ui
13
9
A
A
9
13
B
CD
6
7
B
ui
13
9
A
B
C
D
-16
-14
-14
-14
-14
B
C
A
1
CD
-16
3
A
10
B
B
CD
-16
-16
A
5
B
D
A
C
CDB 2
-16
1
1
B
A
C
CD
A
BCD
D
5
5
C
CDBA 2
B
1
5
1
1
CD
1
1
5
D
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
B
5
A
1
C
5
52D
Rooting eines Baumes
A
CDBA
B
C
5
1
2
CDBA
A
1
CD
CD
B
5
D
C
D
CDBA
• NJ berechnet nur Abstände zueinander
• Eine zeitliche Reihenfolge der Knoten kommt
nicht heraus
• Ein Wurzelknoten kann prinzipiell auf jeder
Kante platziert werden
• Wie findet man die echte Wurzel?
– Externe Datierung einzelner Knoten, z.B. durch
Fossilienfunde und C14-Methode
– Benutzung einer „Outgroup“
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
CD
B
A
D
C
CD
D
CDBA
C
A
B
53
Outgroups
• Eine Outgroup ist ein Taxa, das weiter von allen anderen
Taxa entfernt ist also diese untereinander
– Beispiel: Menschen, Mäuse, Ratten, Schweine – Wale
• Was passiert mit der Outgroup?
– NJ ordnet sie im Baum ein
– Offensichtlich muss die Kante, die zu der Outgroup führt, den
zeitlich korrekten Wurzelknoten enthalten
• Beispiel
2
1
A
B
C
B
5
D
1
A
CD
1
1
CBDAO
O
1
CDBA
5
D
C
5
1
CDBA
15
1
C
5
1
1
5
A
B
1
CD
5
1
D
1
CBDAO
12
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
O
O
54
Wenn die Daten nun ...
• Weder ultrametrisch noch additiv sind?
• Approximieren; z.B. durch
– Sei D(i,j) der beobachtete Abstandswert
– Wähle eine Baumtopologie T und berechne die tatsächlichen
Abstände im Baum d(i,j) so, dass der Fehler minimiert wird
 n
2

error (t ) = min ∑∑ (D(i, j ) − d (i, j ) ) 
d
 i =1 j ≠ j

– Für gegebene Topologie T ist das effizient lösbar, aber ...
– Man muss alle Topologien ausprobieren
– Damit ist das Problem NP-vollständig
• Oder man versucht Heuristiken: UPGMA, Neighbor Joining
• Oder ganz anders aufgebaute Methoden: Maximum
Parsimony, Maximum Likelihood
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
55
Literatur
• Eine gute Einleitung zu den Problemen (sehr praktisch
orientiert)
– Baldauf, S. L. (2003). "Phylogeny for the faint of heart: a tutorial."
Trends Genet 19(6): 345-51.
• Schöne, ausführliche Übersicht (weniger über die
Algorithmen)
– Morrison „Phylogenetic Tree Building“, Int J of Parasitology, 1996
• Ultrametriken und Additivität
– Gusfield (Kapitel 17 )
• UPGMA und Neighbor Joining
– Oft beschrieben, z.B. im Script von Ron Shamir, University Tel Aviv
– http://www.math.tau.ac.il/~rshamir/algmb/98/scribe/ps/lec09.ps
Ulf Leser: Algorithmische Bioinformatik, Wintersemester 2004/2005
56
Herunterladen