SST - Sequence Search Tree

Slides:



Advertisements
Ähnliche Präsentationen
Algorithmen und Datenstrukturen
Advertisements

Fast Fourier Transformation
Punkt-in-Polygon-Verfahren III (R/R+-Baum)
Eulerscher Polyedersatz
Rekursion: Rekurrenz: Algorithmen rufen sich selbst (rekursiv) auf.
Falls Algorithmen sich selbst rekursiv aufrufen, so kann ihr Laufzeitverhalten bzw. ihr Speicherplatzbedarf in der Regel durch eine Rekursionsformel (recurrence,
Eine dynamische Menge, die diese Operationen unterstützt,
Paarweises Sequenz Alignment
Indizierung von Graphen durch häufige Subgraphen (2)
Das LCA – Problem in Suffixbäumen
FH-Hof Der B-Baum Richard Göbel. FH-Hof Wahl des Verzweigungsgrad Verzweigungsgrad kann größer als 2 sein v Nachfolger für einen Knoten v-1 Werte in einem.
B-Bäume.
Genetische Algorithmen für die Variogrammanpassung
1 Whole Genome Alignment mit Suffixbäumen Fortgeschrittene Algorithmische Bioinformatik SoSe 2005 Emre Kutbay.
Übersicht DIALIGN = DIagonal ALIGNment
Lehrstuhl Informatik III: Datenbanksysteme Achim Landschoof 28. April 2009 Strukturierte P2P Systeme 1 Achim Landschoof Betreuerin: Dipl.-Inf. Jessica.
Sortierverfahren Richard Göbel.
Effizienz: Indexstrukturen
Algorithmentheorie 04 –Hashing
Suche in Texten: Suffix-Bäume
WS Algorithmentheorie 05 - Treaps Prof. Dr. Th. Ottmann.
Dynamische Programmierung (2) Matrixkettenprodukt
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (23 – Sortieren vorsortierter Daten) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (19 - Analyse natürlicher Bäume) Prof. Th. Ottmann.
WS Algorithmentheorie 08 – Dynamische Programmierung (2) Matrixkettenprodukt Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (17 – Bäume: Grundlagen und natürliche Suchbäume) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (18 - Bäume: Durchlaufreihenfolgen, Analyse nat. Bäume) Prof. Th. Ottmann.
WS Prof. Dr. Th. Ottmann Algorithmentheorie 09 - Suche in Texten Suffix - Bäume.
Institut für Kartographie und Geoinformation Diskrete Mathematik I Vorlesung Bäume-
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II Vorlesung In welcher Masche liegt der Punkt p?
Kap. 6.2 Binäre B-Bäume Ullmann: (2, 3) - Bäume
Effiziente Suche in Bilddatenbanken
Algorithmen und Komplexität
Wir suchen ‘ mit m = m    ‘ c  ‘ mod 26
Exact String Matching II1 Exact String Matching: A Deeper Look at Classical Methods Erweiterte Anwendungen zu Boyer-Moore und Knuth-Morris-Pratt Hauptseminar.
Heute: Scherenzange zeichnen
Ralf KüstersDagstuhl 2008/11/30 2 Ralf KüstersDagstuhl 2008/11/30 3.
Self Organizing Tree Algorithm
Druckerinstallation HP1050C
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Sortieralgorithmen Sortieren von Arrays.
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II Vorlesung 7 SS 2000 Punkt-in-Polygon-Verfahren I (Trapezkarte)
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Hartmut Klauck Universität Frankfurt SS
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Polynome und schnelle Fourier-Transformation
Animation von Dijkstra
Dynamische Programmierung mit Anwendung auf Sequence Alignment Problem
Algorithmus von Dijkstra. 0 Algorithmus von Dijkstra s Priority Queue PQ: Knoten, Priorität Weglänge Kandidatenmenge.
Auslegung eines Vorschubantriebes
K-SAT: Ein heuristischer Algorithmen- Vergleich Kann man den Brute Force Search Algorithmus schlagen?
Adaption von K-Means Algorithmen an Datenbanken
… oder wie finde ich den Weg
Ganzheitliches Projekt-, Ressourcen- und Qualitätsmanagement 1 Reports und AddOns Auf den folgenden Seiten wird Ihnen die Funktionsweise der Reports und.
Jamshid Azizi: Folie Isomorphietest Jamshid Azizi
Vorlesung Datenbanksysteme vom Physische Datenorganisation
Vorlesung Mai 2000 Konstruktion des Voronoi-Diagramms II
LOD Levels of Detail Oliver Gassner Christian Troger.
Statistische Methoden in der Wirtschafts- und Sozialgeographie
Komplexität von Algorithmen
Paarweises Sequenz-Alignment
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation III Vorlesung 1 WS 2001/02 Punkt-in-Landkarte I (Streifenkarte)
Binärbäume.
CL Tree MW 31.1 Business Intelligence Wintersemester 2015 / 2016 Stanislav Prokupetz.
 Präsentation transkript:

SST - Sequence Search Tree weitere Form der Ähnlichkeitssuche Franziska Brosy Seminar - Fortgeschrittene algorithmische Bioinformatik

SST – Sequence Search Tree Themenübersicht I weitere Form der Ähnlichkeitssuche Idee von SST Grundlagen L1–Abstand k-means Clustering TSVQ – Tree-Structured Vector Quantization 15.07.2005 SST – Sequence Search Tree

SST – Sequence Search Tree Themenübersicht II SST–Algorithmus Komplexitätsziel Konstruktion des Indexbaumes Suchphase Testergebnis, Performanz Fazit 15.07.2005 SST – Sequence Search Tree

SST – Sequence Search Tree Ähnlichkeitssuche Ähnlichkeit 2er Strings per Scoringfunktion Näherung: Welche Sequenzen haben wahrscheinlich einen hohen Ähnlichkeitsscore? BLAST & Co. heuristische Algorithmen zum lokalen Alignment BLAT schnell bei sehr ähnlichen Sequenzen Wie gut ist das Ergebnis? Charakterisierung durch Precision, Recall Schwellwerte zum Steuern des Precision-Recall- Verhältnisses 15.07.2005 SST – Sequence Search Tree

weitere Form der Ähnlichkeitssuche aber SST = nur Suche, kein Alignment neu: statt Seeds, Seedverlängerung jetzt Bilden von Sequenzclustern, Erstellen tree-structured Index, Finden ähnliche Sequenzen in einem Cluster Verwendung: large-scale sequencing, Filtermethode (True Negatives) 15.07.2005 SST – Sequence Search Tree

4. SST–Algorithmus 1. weitere Form der Ähnlichkeitssuche 2. Idee von SST 3. Grundlagen L1–Abstand, k-means Clustering, TSVQ 4. SST–Algorithmus Komplexitätsziel, Baumkonstruktion, Suchphase 5. Testergebnis, Performanz 6. Fazit

SST – Sequence Search Tree SST – die Idee SST-Algorithmus durchsucht eine Datenbank (DNA-Sequenzen) nach near-exact Matches Datenbank, Anfrage in Fenster fester Länge W Fenster als 4k-dimensionale Vektoren tree-structured Index über alle Fenster suchen mit Hilfe des ts Index nach den nächsten Nachbarn der Anfragefenster 15.07.2005 SST – Sequence Search Tree

4. SST–Algorithmus 1. weitere Form der Ähnlichkeitssuche 2. Idee von SST 3. Grundlagen L1–Abstand, k-means Clustering, TSVQ 4. SST–Algorithmus Komplexitätsziel, Baumkonstruktion, Suchphase 5. Testergebnis, Performanz 6. Fazit

L1-Abstand (Manhattan-Abstand) Maß für die Ähnlichkeit zwischen zwei Objekten hier: Objekte sind Vektoren V (später) 15.07.2005 SST – Sequence Search Tree

SST – Sequence Search Tree k-means Clustering hard clustering Algorithmus Cluster-Bildung anhand des Zentrums der Mehrheit seiner Komponenten (Vektoren) zufällig gewählte Zentren, dann redefinieren Initalcluster, Iterationen 1) Vektor  Cluster, 2) Neuberechnung der Centroide Zentrum = Centroid = mean  15.07.2005 SST – Sequence Search Tree

k-means Cluster mit L1-Abstand Zuordnung Vektoren zu Cluster: L1-Abstand untere Schranke für Editabstand! (Ukkonen) L1(S,Q)  edit(S,Q) mit L1(S,Q) = d ges.: Sequenz Sq, geg.: Anfragesequenz Q L1(Sq,Q) > d  edit(Sq,Q) > d  Sq verwerfen Suche im Editabstand-Raum auf Suche im L1-Abstand-Raum approximierbar 15.07.2005 SST – Sequence Search Tree

k-means Clustering am Beispiel 15.07.2005 SST – Sequence Search Tree

SST – Sequence Search Tree TSVQ I Tree-Structured Vector Quantization Algorithmus zum Erstellen des ts Index sortiert (Sequenzen) topologisch, rekursiv hier: unter Verwendung k-means, L1-Abstand 15.07.2005 SST – Sequence Search Tree

SST – Sequence Search Tree TSVQ II Art Nächste-Nachbarn-Suchalgorithmus innere Knoten = Centroide Kanten = Teilung in 2 Cluster Blätter = NN zum Eingabevektor (Anfrage) binärer Baum: binäre Tests an jedem Knoten kann NN in finden, 15.07.2005 SST – Sequence Search Tree

1. weitere Form der Ähnlichkeitssuche 2. Idee von SST 3. Grundlagen L1–Abstand, k-means Clustering, TSVQ 4. SST–Algorithmus Komplexitätsziel, Baumkonstruktion, Suchphase 5. Testergebnis, Performanz 6. Fazit

SST – Sequence Search Tree Komplexitätsziel n – Größe der Datenbank m – Länge der Anfragesequenz AVG Konstruktion Index: AVG Suche des Index: k-means nicht immer Baumtiefe nicht immer 15.07.2005 SST – Sequence Search Tree

Konstruktion Indexbaum 3 Schritte, einmalig pro Datenbank (DB) 1) DB-Partionierung mit Sliding Windows 2) Abbilden der Fenster im Vektorraum 3) Bilden tree-structured Index für DB-Fenster anschließend: Suchphase 15.07.2005 SST – Sequence Search Tree

DB-Partionierung mit Sliding Windows alle DB-Sequenzen in überlappende Fenster feste Fensterlänge W typische Werte 25  W  1000 Überlappung durch Parameter  typische Werte 5    W/2 Fensterposition Start: Ende: 15.07.2005 SST – Sequence Search Tree

DB-Partionierung am Beispiel Fensterlänge W = 6 Überlappungen  = 2 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 j Start Ende 0 0 5 1 2 7 2 4 9 A A C C G G T T A C G T A C G T 15.07.2005 SST – Sequence Search Tree

Abbilden der Fenster im Vektorraum I pro Fenster/Sequenz ein Vektor mit: #Vorkommen jedes k-Tupels in der Sequenz zuerst Wahl Tupelgröße k (meist 2  k  10) DNA, 4 Elemente  4k Nukleotidentupel Vektordimensionen 4k 15.07.2005 SST – Sequence Search Tree

Abbilden der Fenster im Vektorraum II Integerwert für alle k-Tupel 15.07.2005 SST – Sequence Search Tree

tree-structured Index für die DB-Fenster jetzt nur noch: Finden nächste Nachbarn im Vektorraum dazu: Konstruktion ts Index im Vektorraum indem: rekursive binäre Partionierung mittels: k-means Clustering, TSVQ folglich: nächste Nachbarn als Set im Blatt WENN: Baum balanciert, k-means O(n) DANN: AVG Komplexität Baumkonstruktion O(n*log(n)) , n = Größe der DB 15.07.2005 SST – Sequence Search Tree

tree-structured Index für die DB-Fenster jetzt nur noch: Finden nächste Nachbarn im Vektorraum dazu: Konstruktion ts Index im Vektorraum indem: rekursive binäre Partionierung mittels: k-means Clustering, TSVQ folglich: nächste Nachbarn als Set im Blatt WENN: Baum balanciert, k-means O(n) DANN: AVG Komplexität Baumkonstruktion O(n*log(n)) , n = Größe der DB 15.07.2005 SST – Sequence Search Tree

tree-structured Index für die DB-Fenster jetzt nur noch: Finden nächste Nachbarn im Vektorraum dazu: Konstruktion ts Index im Vektorraum indem: rekursive binäre Partionierung mittels: k-means Clustering, TSVQ folglich: nächste Nachbarn als Set im Blatt WENN: Baum balanciert, k-means O(n) DANN: AVG Komplexität Baumkonstruktion O(n*log(n)) , n = Größe der DB 15.07.2005 SST – Sequence Search Tree

SST – Sequence Search Tree Suchphase Anfrage in Fenster zerlegen, Vektoren berechnen Suche über ts Index (Baum binär) Beginn bei root innere Knoten, root: je 2 Verzweigungen Wahl: Zweig, dessen Centroid geringeren Abstand vom Anfragevektor hat solange bis Blatt erreicht Vektoren im Blatt = potentielles Ergebnis für die Anfrage 15.07.2005 SST – Sequence Search Tree

1. weitere Form der Ähnlichkeitssuche 2. Idee von SST 3. Grundlagen L1–Abstand, k-means Clustering, TSVQ 4. SST–Algorithmus Komplexitätsziel, Baumkonstruktion, Suchphase 5. Testergebnis, Performanz 6. Fazit

SST – Sequence Search Tree Testergebnis am Bsp.: Finden von Überlappungen bei Shotgun Assembling (1.5 MBasen) nahezu 100%ige Spezifität bei günstigen k, W, T (T - tolerierter Abstand (I,D,R))  keine Aussage über FN, Sensitivität?? 15.07.2005 SST – Sequence Search Tree

SST – Sequence Search Tree Performanz Vergleich mit BLAST am Bsp. mit 120 000 Sequenzen nach Statistik: SST 9.3 bis 27 mal schneller als BLAST verschieden Werte: je nach Anfragefenster, Überlappungen/Nichtüberlappungen ohne Aussage über Konfiguration von BLAST BLAST = Suche + Alignment, SST = nur Suche 15.07.2005 SST – Sequence Search Tree

1. weitere Form der Ähnlichkeitssuche 2. Idee von SST 3. Grundlagen L1–Abstand, k-means Clustering, TSVQ 4. SST–Algorithmus Komplexitätsziel, Baumkonstruktion, Suchphase 5. Testergebnis, Performanz 6. Fazit

SST – Sequence Search Tree Fazit SST findet recht viele nächste Nachbarn zu einer Anfragesequenz gutes Herausfiltern von TN Sequenzen nahe an Clustergrenze evtl. FN FN ‘vermutlich‘ gering (Verwendung k-means), somit ‘geringe‘ Einbußen bei Sensitivität schnelle Suche, bei günstiger Konfiguration evtl. sogar in kein Alignment 15.07.2005 SST – Sequence Search Tree