1 / 46

Angewandte Algorithmik Theoretisch fundierte Lösungen für “Real-World” Probleme

Angewandte Algorithmik Theoretisch fundierte Lösungen für “Real-World” Probleme. Wissenschaftlicher Vortrag nach §6 Habilitationsordnung Universität des Saarlandes, 9. Juli 2007. Holger Bast Max-Planck-Institut für Informatik Saarbrücken. Aus der Habilitationsordnung ….

bobby
Download Presentation

Angewandte Algorithmik Theoretisch fundierte Lösungen für “Real-World” Probleme

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Angewandte AlgorithmikTheoretisch fundierte Lösungenfür “Real-World” Probleme Wissenschaftlicher Vortrag nach §6 Habilitationsordnung Universität des Saarlandes, 9. Juli 2007 Holger Bast Max-Planck-Institut für Informatik Saarbrücken

  2. Aus der Habilitationsordnung … §6 Vortrag und Kolloquium (1) Ist der Nachweis der pädagogisch-didaktischen Eignung erbracht, so wird der Bewerberin oder dem Bewerber von der Dekanin oder dem Dekan zum wissenschaftlichen Vortrag und zum anschließenden Kolloquium geladen. Die Ladungsfrist beträgt eine Woche. (2) Wissenschaftlicher Vortrag und Kolloquium finden öffentlich in Gegenwart der Habilitationskomission statt. (3) Die Bewerberin oder der Bewerber trägt über das in §3 Abs. 3 Nr. 7 [das heißt: bei der Antragsstellung] genannte Thema vor. (4) Der Vortrag soll das Arbeitsgebiet und aktuelle Forschungsergebnisse der Bewerberin oder des Bewerbers darstellen. Der Vortrag wird nach wissenschaftlichen und didaktischen Kriterien beurteilt. (5) Das Kolloquium erstreckt sich über den Vortrag und das Arbeitsgebiet der Bewerberin oder des Bewerbers. (6) Vortrag und Kolloquium sollen eine Dauer von jeweils 45 Minuten nicht überschreiten.

  3. Überblick • Methodik • Klassische Algorithmik • Angewandte Algorithmik • Ausgewählte Ergebnisse • Informationssysteme/Datenbanken (Suchmaschine) ≈ 20min • Maschinelles Lernen (Dimensionsreduktion) ≈ 10min • Kombinatorische Optimierung (Kürzeste Wege) ≈ 10min • Zusammenfassung • nach jedem Ergebnis

  4. Klassische Algorithmik • Komponenten • feststehende und voll spezifizierte Probleme zum Beispiel:gegeben ein Graph, berechne ein maximales Matching • vollständige Theoreme zum Beispiel:für einen zufälligen Graphen, maximales Matching in erwarteter Zeit O (n log n) • eventuell Experimente zum Beispiel: implementiere den Algorithmus und messe die Laufzeit auf vielen zufälligen Graphen • Theorie als Selbstzweck • schult präzises Denken / Formulieren / Methodik • selten direkt relevant Hashing Sorting Scheduling Matching …

  5. Angewandte Algorithmik • Komponenten • Ausgangspunkt ist eine reale Anwendung entscheidend diese in ihrer Ganzheit zu verstehen • Abstraktion kritischer Teile (theoretischem Denken zugänglich machen) oft der schwierigste und kreativste Teil • Algorithmen / Datenstrukturen entwerfen und mathem. analysieren wie in der klassischen Algorithmik, aber … • Experimente + Algorithm Engineering zur Ergänzung und Bestätigung der Theorie • Bau eines (Prototyp-) Systems ultimativer Realitätstest, wichtige Inspirationsquelle • Theorie als Mittel zum Zweck • direkt anwendbare + verlässliche Lösungen • Ganzheit geht vor mathematische Tiefe

  6. Überblick • Methodik • Klassische Algorithmik • Angewandte Algorithmik • Ausgewählte Ergebnisse • Informationssysteme/Datenbanken (Suchmaschine) ≈ 20min • Maschinelles Lernen (Dimensionsreduktion) ≈ 10min • Kombinatorische Optimierung (Kürzeste Wege) ≈ 10min • Zusammenfassung • nach jedem Gebiet

  7. Die CompleteSearch Suchmaschine • Hintergrund • Suchmaschinen sind extrem schnell • auch für sehr großen Datenmengen • aber sie können nur genau eine Sache: Stichwortsuche • Ziel • komplexere Suchfunktionen • aber genauso schnell • Lösung • kontext-sensitive Präfixsuche • einerseits: sehr mächtig • andererseits: effizient berechenbar

  8. Mögliche Suchanfragen • Volltextsuche mit Autovervollständigung • traffic inter* • Strukturierte Daten als künstliche Worte • conference:sigmod • author:gerhard_weikum • year:2005 • Datenbankanfragen: select, join, … • conference:sigir author:* • conference:sigmod author:* und conference:sigir author:* und schneide die Menge der Vervollständigungen (nicht Dokumente) • Und mehr: • verwandte Worte, automatische Fehlerkorrektur, XML Suche, semantische Suche, … alles mit ein- und demselben Mechanismus

  9. Formulierung des Kernproblems D74 J W Q D3 Q DA • Daten gegeben als • Dokumente mit Worten • Dokumente haben Ids (D1, D2, …) • Worte haben Ids (A, B, C, …) • Suchanfrage • sortierte Liste von Dok. Ids • Intervall von Wort Ids D17 B WU K A D43 D Q D1 A O E W H D92 P U D E M D53 J D E A D78 K L S D27 K L D F D9 E E R D4 K L K A B D88 P A E G Q D2 B F A D32 I L S D H D98 E B A S D13 A O E W H Treffer für “traffic” D13 D17 D88 … C D E F G H Worte die mit “inter” beginnen

  10. Formulierung des Kernproblems D74 J W Q D3 Q DA • Daten gegeben als • Dokumente mit Worten • Dokumente haben Ids (D1, D2, …) • Worte haben Ids (A, B, C, …) • Suchanfrage • sortierte Liste von Dok. Ids • Intervall von Wort Ids • Antwort • alle passenden Wort-in-Dok. Paare • mit Scores D17 B WU K A D17 B WU K A D43 D Q D1 A O E W H D92 P U D E M D53 J D E A D78 K L S D27 K L D F D9 E E R D4 K L K A B D88 P A E G Q D88 P A E G Q D2 B F A D32 I L S D H D98 E B A S D13 A O E W H D13 A O E W H Treffer für “traffic” D13 D17 D88 … C D E F G H Worte die mit “inter” beginnen kontext-sensitive Präfixsuche (Nichtstandard Bereichssuche Problem)

  11. Lösung via Invertierter Index • Zum Beispiel, traffic inter* gegeben die Dokumente: D13, D17, D88, … (Treffer für traffic) und der Wortbereich: C D E F G (Ids für inter*) • Iteriere über alle Worte aus dem gegebenen Bereich C (interaction) D8, D23, D291, ... D (interesting) D24, D36, D165, ... E (interface) D13, D24, D88, ... F (interior) D56, D129, D251, ... G (internet) D3, D15, D88, ... • Schneide jede Liste mit der gegebenen und vereinige alle Schnitte D13 D88 D88 …E E G … typischerweisesehr viele Listen! im worst casequadratische Komplexität Ziel: schneller ohne mehr Platz zu verbrauchen

  12. Einschub • Der invertierte Index ist, trotz quadratischer worst-case Komplexität, in der Praxis schwer zu schlagen • sehr einfacher Code • Listen sehr gut komprimierbar • perfekte Zugriffslokalität • Anzahl der Operationen ist ein trügerisches Maß • 100 disk seeks benötigen ca. eine halbe Sekunde • in der Zeit können 200 MB Daten gelesen werden(falls komprimiert gespeichert) • Hauptspeicher: 100 nichtlokale Zugriffe 10 KB am Stück Daten

  13. Neu: Halb-Invertierter Index • Listen von Dokument-Wort Paaren (sortiert nach Dok. Id) • flache Partitionierung Alternative: hierarchisch • z.B. eine Liste für A-D, eine Liste für E-H, etc. • Eigenschaften • einfach + perfekte Lokalität + sehr gut komprimierbar(!) • Suchanfragen • bei geeigneter Partitionierung, immer genau eine Liste • extrem schnell: Ø 0.1 Sekunde/ Anfrage für TREC Terabyte (426 GB Rohdaten, 25 Millionen Dokumente)

  14. Halb-Invertierter Index: Komprimierung • Dok. Ids  Differenzen und Wort Ids  Häufigkeitsränge • Kodiere alle Zahlen universell: x  log2 x Bits +0  0+1  10+2  110 1st (A)  0 2nd (C)  10 3rd (D)  111 4th (B)  110 • Was schließlich gespeichert wird

  15. Ergebnis Platzverbrauch • Definition • empirische Entropie einer Datenstruktur = optimale Anzahl Bits die zur Kodierung benötigt werden • Theorem • empirische Entropie von HALB-INV mit Blockgröße ε∙n ist 1+ε mal die empirische Entropie von VOLL-INV • Experimente (mit konkretem Kodierungsverfahren) perfekte Übereinstimmung von Theorie und Praxis

  16. Zusammenfassung: CompleteSearch • Output • Publikationen in verschiedenen Communities SIGIR (IR), CIDR (DB), SPIRE (Theory), GWEM (KI), … • zahlreiche öffentliche Installationen DBLP • Industriekontakte • Entscheidend waren • Identifizierung und Formulierung des Präfixsuchproblems • Wahl der Analyseparameter: Lokalität, Komprimierung, etc. (und zum Beispiel hier nicht: Anzahl der Operationen) • generell: Wissen in vielen relevanten Gebieten

  17. Überblick • Methodik • Klassische Algorithmik • Angewandte Algorithmik • Ausgewählte Ergebnisse • Informationssysteme/Datenbanken (Suchmaschine) ≈ 20min • Maschinelles Lernen (Dimensionsreduktion) ≈ 10min • Kombinatorische Optimierung (Kürzeste Wege) ≈ 10min • Zusammenfassung • nach jedem Ergebnis

  18. Spektrales Lernen • Daten als Objekt-Feature Matrix gegeben • Bilder, Formen, Text, … • z.B. Objekte = Dokumente, Features = Worte Problem: fehlende Einträge

  19. Spektrales Lernen • Daten als Objekt-Feature Matrix gegeben • Bilder, Formen, Text, … • z.B. Objekte = Dokumente, Features = Worte Lösung: Rang-k Approximation Problem: fehlende Einträge (durch Eigenvektorzerlegung) die Approximation erhöht die Präzision

  20. Wann und warum funktioniert das? • Vorgängerarbeiten: Wenn die Objekte durch Kombination von k Basisobjekten generiert und leicht perturbiert werden, dann funktioniert die Rang-k Approximation • Papadimitriou, Tamaki, Raghavan, Vempala PODS 1998 • Ding SIGIR 1999 • Thomas Hofmann Machine Learning 2000 • Azar, Fiat, Karlin, McSherry, Saia STOC 2001 • und viele andere mehr … • Mathematisch interessant (Perturbationstheorie) aber … • in der Regel gibt es keine k natürlichen Basisobjekte • Verbesserung durch Approximation ist extrem intransparent

  21. Alternative Sicht • Betrachte die Feature-Feature Korrelations-Matrix(Objekt-Objekt Korrelations-Matrix ginge genauso gut) internet surfing beach web paarweise Skalarprodukte der norm. Zeilen-Vektoren beste Rang-2Approximation

  22. Alternative Sicht • Betrachte die Feature-Feature Korrelations-Matrix(Objekt-Objekt Korrelations-Matrix ginge genauso gut) internet surfing beach web paarweise Skalarprodukte der norm. Zeilen-Vektoren beste Rang-3Approximation die approximierten Korrelationen hängen stark vom Rang ab!

  23. logic / logics node / vertex logic / vertex 0 200 400 600 0 200 400 600 0 200 400 600 Rang der Approximation Rang der Approximation Rang der Approximation Zentrale Beobachtung • Abhängigkeit der Korrelation eines festen Paares vom Rang k der Approximation 0 Korrelation kein einzelner Rang ist gut für alle Paare!

  24. logic / logics node / vertex logic / vertex 0 200 400 600 0 200 400 600 0 200 400 600 Rang der Approximation Rang der Approximation Rang der Approximation Zentrale Beobachtung • Abhängigkeit der Korrelation eines festen Paares vom Rang k der Approximation 0 Korrelation kein einzelner Rang ist gut für alle Paare! aber die Form der Kurve scheint ein guter Indikator zu sein

  25. 0 200 400 600 0 0 200 200 400 400 600 600 Rang der Approximation Rang der Approximation Rang der Approximation Modellierung: Verwandte Features • Für ein idealisiertes mathematisches Modell von perfekt verwandten Features haben wir: auf halbem Wegezu einer realen Matrix beweisbare Formim idealisierten Fall beweisbar kleine Änderung nach kleiner Perturbation 0 Korellation Form für verwandte Features: hoch und wieder runter

  26. 0 0 0 200 200 200 400 400 400 600 600 600 Rang der Approximation Rang der Approximation Rang der Approximation Modellierung: Unverwandte Features • Für ein idealisiertes mathematisches Modell von perfekt unverwandten Features haben wir: auf halbem Wegezu einer realen Matrix beweisbare Formim idealisierten Fall beweisbar kleine Änderung nach kleiner Perturbation 0 Korrelation Form für unverwandte Features: Oszillation um Null

  27. Zusammenfassung: Spektrales Lernen • Ergebnisse • Einsicht: Spektrale Lernverfahren funktionieren, indem sie Paare von verwandten Features (Worte) identifizieren • Integration mit CompleteSearch • jetzt völlig transparent • mäßiger Nutzen mit sehr hohem Aufwand (Eigenvektorberechnung) • ‘‘magisches” Verfahren entzaubert durch Theorie + Applikation • From: Prabhakar Raghavan <pragh@yahoo-inc.com>Date: [after my SIGIR’05 talk] • Subject: Very clear talkThank you – it‘s too easy to make this stuff mystical and you did the opposite

  28. Überblick • Methodik • Klassische Algorithmik • Angewandte Algorithmik • Ausgewählte Ergebnisse • Informationssysteme/Datenbanken (Suchmaschine) ≈ 20min • Maschinelles Lernen (Dimensionsreduktion) ≈ 10min • Kombinatorische Optimierung (Kürzeste Wege) ≈ 10min • Zusammenfassung • nach jedem Ergebnis

  29. Problemstellung • Kürzeste (schnellste) Wege in Straßennetzwerken • von einem Start zu einem Ziel (point-to-point) • (un)gerichteter Graph, Kantenkosten = Reisezeiten

  30. Stand der Kunst 24 Millionen Knoten 58 Millionen Kanten Dijkstra '59 • Dijkstra's Algorithmus ≈ 1 Sekunde pro Anfrage, USA Straßennetzwerk • Für wesentlich schnellere Zeiten … muss das Netzwerk vorverarbeitet werden spezielle Eigenschaften von Straßennetzwerken • Das bisher beste Verfahren ≈ 1 Millisekunde pro Anfrage, USA Netzwerk • Unsere Arbeit zuerst: theoretisch sehr schöner Algorithmus aber: konnten die 1 Millisekunde nicht schlagen dann radikal neuer Ansatz: Transitknoten ≈ 10 Mikrosekunden pro Anfrage, USA Straßennetzwerk Luby and Ragde '85 . . . Thorup and Zwick '01 Gutman '04 Goldberg et al '05/06 Sanders et al '04/05/06 Lauther et al '04 Möhring et al '05 Wagner et al '05/06 . . .

  31. Zusammenfassung: Kürzeste Wege • Output • Publikationen: DIMACS’06, ALENEX’07, Science 07 • Großes Presseecho: c‘t, connect, Süddeutsche, Welt, … • Patent (Verfahren läuft) • Charakteristik • Standardproblem (eher klassisch) • praktische Relevanz noch unklar • theoretisch schöner Algorithmus nicht praktikabel • einfache Idee, enorme Verbesserung • beweisbar korrekte Lösung, aber kein Theorem über Effizienz

  32. Transitknoten • Vorberechnung weniger Transitknoten • mit der Eigenschaft, dass jeder kürzeste Pfad über eine gewisse Mindestdistanz durch einen Transitknoten geht • Vorberechnung der nächsten Transitknotenfür jeden Knoten • mit der Eigenschaft, dass jeder kürzeste Pfad über eine gewisse Mindestdistanz von diesem Knoten aus durch eine dieser nächsten Transitknoten geht • Vorberechnung aller Distanzen • zwischen allen Paaren von Transitknoten undvon jedem Knoten zu seinen nächsten Transitknoten • Suchanfrage = wenige table lookups !

  33. Neu: der halb-invertierte Index sortiert nach Dok. Id • Blöcke von Dokument-Wort Paaren • Aufteilung in Blöcke, Variante 1 (AutoTree) • ein Block pro möglicher Präfix • viel Redundanz  baumförmige Anordnung • theoretisch schön, aber schlechte Lokalität • Aufteilung in Blöcke, Variante 2 (HYB) • flache Partitionierung in Blöcke der Größe B • kurzer Präfix -> merge, langer Präfix -> filter

  34. Conclusions • Context-sensitive prefix search and completion • is a fundamental operation • supports autocompletion search, semantic search, faceted search, DB-style selects and joins, ontology search, … • efficient support via HYB index • very good compression properties • perfect locality of access • Some open issues • integrate top-k query processing • what else can we do with it? • very short prefixes

  35. Anwendung • Integration in CompleteSearch DEMO • jetzt völlig transparent wie / ob es funktioniert • und man sieht, dass es nicht wirklich nützlich ist (unverhältnismäßig aufwändig) • E-Mail nach meinem Vortrag bei SIGIR‘07 From: Prabhakar Raghavan <pragh@yahoo-inc.com>Subject: Very clear talkThank you – it‘s too easy to make this stuff mystical and you did the opposite […]

  36. User interfaces  Detailansicht Bahnhof/HaltestelleDatumAnk.Abf.GleisProdukteBemerkungen Universität Campus, Saarbrücken 06.07.07  00:41   S+B 101 Bus SaarBahn+Bus Richtung: Saarcenter   Johanneskirche, Saarbrücken   00:52    Johanneskirche, Saarbrücken        Fußweg 2 Min. Rathaus, SaarbrückenRathaus, Saarbrücken    04:45   S+B 102 Bus SaarBahn+Bus Richtung: Dudweiler Dudoplatz Ilseplatz, Saarbrücken   04:52    Dauer: 4:11; fährt Mo - Fr, nicht 15. Aug, 3. Okt, 1. Nov Hinweis: Längerer Aufenthalt

More Related