Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Intelligente Suche in sehr großen Datenmengen Holger Bast Max-Planck-Institut für Informatik Saarbrücken Vortrag an der Universität Mainz 5. März 2008.

Ähnliche Präsentationen


Präsentation zum Thema: "Intelligente Suche in sehr großen Datenmengen Holger Bast Max-Planck-Institut für Informatik Saarbrücken Vortrag an der Universität Mainz 5. März 2008."—  Präsentation transkript:

1 Intelligente Suche in sehr großen Datenmengen Holger Bast Max-Planck-Institut für Informatik Saarbrücken Vortrag an der Universität Mainz 5. März 2008

2 Früher: Klassische theoretische Informatik 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 …

3 Jetzt: Angewandt auf der Basis guter Theorie 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 –Anwendung geht vor mathematische Tiefe

4 Überblick Meine Arbeitsweise –Früher: Klassische theoretische Informatik –Jetzt: Angewandt auf der Basis guter Theorie Ausgewählte Ergebnisse –Die CompleteSearch Suchmaschine ≈ 20 min –Spektrales Lernen ≈ 10 min –Kürzeste Wege in Straßennetzwerken ≈ 10 min Zusammenfassung –nach jedem Ergebnis

5 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

6 Mögliche Suchanfragen 1/2 Volltextsuche mit Autovervollständigung –traffic inter* Strukturierte Daten als künstliche Worte –venue:esa –author:elmar_schömer –year:2007 Datenbankanfragen: select, join, … –venue:esa author:* –venue:esa author:* und venue:sigir author:* und schneide die Menge der Vervollständigungen (an Stelle der Menge der Dokumente) Elmar SchömerESA2007paper #23876 Michael HemmerESA2007paper #23876 Laurent DupontESA2007paper #23876 …………

7 Mögliche Suchanfragen 2/2 Facettensuche –automatische Statistik über vordefinierte Kategorien Verwandte Worte –Suche metal, finde aluminium Fehlertolerante Suche –Suche probabilistic, finde probalistic Semantische Suche –Suche politician, finde Angela Merkel und mehr … alles mit ein- und demselben Mechanismus

8

9

10

11 D98 E B A S D98 E B A S D78 K L S D78 K L S D53 J D E A D53 J D E A Formulierung des Kernproblems D2 B F A D2 B F A D4 K L K A B D4 K L K A B D9 E E R D9 E E R D27 K L D F D27 K L D F D92 P U D E M D92 P U D E M D43 D Q D43 D Q D32 I L S D H D32 I L S D H D1 A O E W H D1 A O E W H D88 P A E G Q D88 P A E G Q D3 Q D A D3 Q D A D17 B W U K A D17 B W U K A D74 J W Q D74 J W Q D13 A O E W H D13 A O E W H D13 D17 D88 … C D E F G 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 Treffer für “traffic” Worte die mit “inter” beginnen

12 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 D13 E … D88 E … … D98 E B A S D98 E B A S D78 K L S D78 K L S D53 J D E A D53 J D E A D2 B F A D2 B F A D4 K L K A B D4 K L K A B D9 E E R D9 E E R D27 K L D F D27 K L D F D92 P U D E M D92 P U D E M D43 D Q D43 D Q D32 I L S D H D32 I L S D H D1 A O E W H D1 A O E W H D88 P A E G Q D88 P A E G Q D3 Q D A D3 Q D A D17 B W U K A D17 B W U K A D74 J W Q D74 J W Q D13 A O E W H D13 A O E W H D88 P A E G Q D88 P A E G Q D17 B W U K A D17 B W U K A D13 A O E W H D13 A O E W H D13 D17 D88 … C D E F G D88 G Formulierung des Kernproblems Kontext-sensitive Präfixsuche Treffer für “traffic” Worte die mit “inter” beginnen

13 Lösung via Invertierter Index (INV) 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 D88D88… E EG… typischerweise sehr viele Listen! Ziel: schneller ohne mehr Platz zu verbrauchen im worst case quadratische Komplexität

14 Grundlegende Idee Berechne invertierte Listen für Bereiche von Worten DACABACADAABCACA Beobachtungen –ein Präfix entspricht einem Bereich von Worten –idealerweise Liste für jeden Präfix vorberechnet –aber das kostet viel zu viel Platz –erhebliche Redundanz zwischen den Listen Liste für A-D

15 Lösung 2: AutoTree Baumartige Anordnung Theorem: –Verarbeitungszeit O(|D| + |output|) (ausgabesensitiv) –ohne mehr Platz zu verbrauchen als INV Aber –nicht IO-effizient (wegen Bitvektor Operationen) –suboptimale Kompression … … … aachen advance algol algorithm advance aachen art advance manner manning maximal maximum maple mazza middle

16 Lösung 2: AutoTree SPIRE’06 / JIR’07 Trick 1: Relative bit vectors –the i-th bit of the root node corresponds to the i-th doc –the i-th bit of any other node corresponds to the i-th set bit of its parent node aachen-zyskowski … maakeb-zyskowski … maakeb-stream … corresponds to doc 5 corresponds to doc 10

17 Lösung 2: AutoTree SPIRE’06 / JIR’07 Tricks 2: Push up the words –For each node, by each set bit, store the leftmost word of that doc that is not already stored by a parent node … … … aachen advance algol algorithm advance aachen art advance manner manning maximal maximum maple mazza middle D= 5, 7, 10 W= max* D = 5, 10 ( → 2, 5) report: maximum D = 5 report: Ø → STOP

18 Lösung 2: AutoTree SPIRE’06 / JIR’07 Tricks 3: divide into blocks –and build a tree over each block as shown before

19 Lösung 2: AutoTree SPIRE’06 / JIR’07 Tricks 3: divide into blocks –and build a tree over each block as shown before

20 Solution 2: AutoTree SPIRE’06 / JIR’07 Tricks 3: divide into blocks –and build a tree over each block as shown before Theorem: –query processing time O(|D| + |output|) –uses no more space than an inverted index AutoTree Summary: + output-sensitive –not IO-efficient (heavy use of bit-rank operations) –compression not optimal

21 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 schlechte Lokalität Lokalität + Kompression entscheidend bei sehr großen Datenmengen

22 Lösung 3: Hybrider Index (HYB) Flache Aufteilung des Vokabulars in Blöcke DACABACADAABCACA Liste für A-D EFGJHIIEFGHJI Liste für E-J LNMNNKLMNMKLMKL Liste für K-N Gute Lokalität, aber was ist mit Kompression?

23 Lösung 3: Hybrider Index (HYB) Flache Aufteilung des Vokabulars in Blöcke Dok. Ids  Differenzen und Wort Ids  Häufigkeitsränge DACABACADAABCACA rd 1 st 2 nd 1 st 4 th 1 st 2 nd 1 st 3 rd 1 st 4 th 2 nd 1 st 2 nd 1 st Kodiere alle Zahlen universell: x  log 2 x Bits +0  0 +1   st (A)  0 2 nd (C)  10 3 rd (D)  th (B)  Was schließlich gespeichert wird

24 Definition: Empirische Entropie Empirische Entropie –… formalisiert die optimale Anzahl Bits die zur Kodierung einer Sequenz benötigt werden –… für eine Multi-Teilmenge der Größe m aus einem Universum der Größe n m ∙ log (1 + n / m) + n ∙ log (1 + m / n) –… für eine Folge von n Elementen aus einem Universum der Größe k, mit n i Vorkommen des i-ten Elements n 1 ∙ log (n / n 1 ) + ∙∙∙ + n k ∙ log (n / n k ) –usw …

25 Platzverbrauch: INV gegen HYB Theorem: Die empirische Entropie des INV Index ist Σ n i ∙ ( 1/ln 2 + log 2 (n/n i ) ) Theorem: Die empirische Entropie des HYB Index ist Σ n i ∙ ( (1+ε)/ln 2 + log 2 (n/n i ) ) n i = number of documents containing i-th word, n = number of documents, ε = 0.1 MEDBOOKS 44,015 Dok. 263,817 Worte mit Positionen WIKIPEDIA 2,866,503 Dok. 6,700,119 Worte mit Positionen TREC.GOV 25,204,013 Dok. 25,263,176 Worte ohne Positionen Orig.größe452 MB 7.4 GB426 GB VOLL-INV 13 MB0.48 GB 4.6 GB HALB-INV 14 MB0.51 GB 4.9 GB perfekte Übereinstimmung von Theorie und Praxis … und HYB etwa 10 mal schneller als INV

26 Zusammenfassung: CompleteSearch Output –Publikationen in verschiedenen Communities SIGIR (IR), CIDR (DB), SPIRE (Theorie), GWEM (KI), … –zahlreiche Industriekontakte, Vortrag bei Google –zahlreiche Installationen, auch kommerzielle DBLP –DFG Projekt im SPP Algorithm Engineering –Dr. Meyer Struckmann Wissenschaftspreis 2007 ( €) Entscheidend waren –Identifizierung und Formulierung des Präfixsuchproblems –Wahl der Analyseparameter: Lokalität, Komprimierung, etc. (und zum Beispiel hier nicht: Anzahl der Operationen) –Experimente, Software Engineering, Prototyp –generell: Wissen in vielen relevanten Gebieten (z.B. Ontologien)

27

28 Ausblick: Suche Sehr viele theoretisch interessante + praktisch relevante Probleme im Rahmen von Suche –effiziente(re) Facettensuche, semantische Suche, etc. –fehlertolerante Suche –Indexkonstruktion –effiziente Erzeugung von „result snippets” –… Übertragung auf Nicht-Text Retrieval –3D shape retrieval –Suche in Bildern und Videos –…

29 Überblick Meine Arbeitsweise –Früher: Klassische theoretische Informatik –Jetzt: Angewandt auf der Basis guter Theorie Ausgewählte Ergebnisse –Die CompleteSearch Suchmaschine ≈ 20 min –Spektrales Lernen ≈ 10 min –Kürzeste Wege in Straßennetzwerken ≈ 10 min Zusammenfassung –nach jedem Ergebnis

30 Spektrales Lernen internet web surfing beach Daten als Objekt-Feature Matrix gegeben –Bilder, Formen, Text, … –z.B. Objekte = Dokumente, Features = Worte Problem: fehlende Einträge

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

32 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

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

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

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

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

37 Kurven für verwandte Terme ·····1100 ·····0011 ····· Wir nennen zwei Terme perfekt verwandt wenn sie mit exakt den gleichen Termen vorkommen Charakteristische Form: hoch und wieder runter Die Stelle des Abfalls ist für jedes Term-Paar anders! Term 1 Term 2 0 beweisbare Form im idealisierten Fall beweisbar kleine Änderung nach kleiner Perturbation auf halbem Wege zu einer realen Matrix Korrelation Rang der Approximation

38 Kurven für nicht-verwandte Terme Ko-Okkurrenz Graph: –Knoten = Terme –Kanten = zwei Terme kommen zusammen vor perfekt unverwandt = kein Pfad Rang der Approximation Rang der Approximation Rang der Approximation Korrelation 0 beweisbare Form im idealisierten Fall beweisbar kleine Änderung nach kleiner Perturbation auf halbem Wege zu einer realen Matrix Charakteristische Form: Oszillation um Null

39 Ein einfacher Algorithmus 1. Normalisiere die Term-Dokument Matrix, so dass der theoretische Abfallpunkt für alle Termpaare gleich ist 2. Für jedes Termpaar: falls die Kurve je negativ ist vor diesem Punkt, setze Korrelation auf 1, sonst auf einfache 0-1 Klassifikation, keine fraktionalen Einträge setze auf 1 setze auf 0 0 Korrelation Rang der Approximation

40 Zusammenfassung: Spektrales Lernen Ergebnisse –Einsicht: Spektrale Lernverfahren funktionieren, indem sie Paare von verwandten Features (Terme) identifizieren –Integration mit CompleteSearch (inspirierte weitere Forschung) –dadurch erstmalig transparent –„magisches” Verfahren entzaubert durch Theorie + Empirik From: Prabhakar Raghavan Date: [after my SIGIR’05 talk] Subject: Very clear talk Thank you – it’s too easy to make this stuff mystical and you did the opposite

41

42

43 Ausblick: Maschinelles Lernen Spektralzerlegung in diesem Fall nicht praktikabel –hoher Berechnungsaufwand (Spektralzerlegung) –relativ geringer Nutzen (findet verwandte Paare) Effizientes Maschinelles Lernen –Entitätenerkennung auf sehr großen Datenmengen –Fehlerkorrektur auf sehr großen Datenmengen –…

44 Überblick Meine Arbeitsweise –Früher: Klassische theoretische Informatik –Jetzt: Angewandt auf der Basis guter Theorie Ausgewählte Ergebnisse –Die CompleteSearch Suchmaschine ≈ 20 min –Spektrales Lernen ≈ 10 min –Kürzeste Wege in Straßennetzwerken ≈ 10 min Zusammenfassung –nach jedem Ergebnis

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

46 Stand der Kunst 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 Sanders et al '04/05/06 Dijkstra '59 Luby and Ragde '85 Gutman '04 Goldberg et al '05/06 Möhring et al '05 Lauther et al '04 Wagner et al '05/06 Thorup and Zwick ' Millionen Knoten 58 Millionen Kanten...

47

48

49 Die Transitknoten Idee 1. Vorberechnung weniger Transitknoten mit der Eigenschaft, dass jeder kürzeste Pfad über eine gewisse Mindestdistanz durch einen Transitknoten geht 2. Vorberechnung der nächsten Transitknoten fü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 3. Vorberechnung aller Distanzen zwischen allen Paaren von Transitknoten und von jedem Knoten zu seinen nächsten Transitknoten ð Suchanfrage = wenige table lookups !

50 Vorberechnung der Transitknoten Von Distanzen zu Pfaden 24 min 20 min 23 min StartZiel

51 Zusammenfassung: Kürzeste Wege Output –Publikationen: DIMACS’06, ALENEX’07, Science 07 –Großes Presseecho: Süddeutsche, Welt, c’t, Chip, … –Patent + zahlreiche Firmenkontakte + … –Heinz Billing Preis für wiss. Rechnen 2007 (mit S. Funke) –Scientific American 50 Award 2007 Charakteristik –Klassisches Problem, aber auf echten Daten –theoretisch schönerer Algorithmus war nicht praktikabel –einfache aber radikal neue Idee, enorme Verbesserung –Verständnis der Besonderheit der Daten entscheidend

52 Ausblick: Kürzeste Wege Theoretische Untermauerung –wir haben schon: beweisbar korrekt –aber für genau welche Graphen: beweisbar effizient? Erweiterungen –dynamische Änderungen (Staus) –tageszeitabhängige Kantenkosten (rush hour) –Periodische Abfahrts/Ankunftszeiten (Bahn, Bus, etc.) –…

53


Herunterladen ppt "Intelligente Suche in sehr großen Datenmengen Holger Bast Max-Planck-Institut für Informatik Saarbrücken Vortrag an der Universität Mainz 5. März 2008."

Ähnliche Präsentationen


Google-Anzeigen