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

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

  • Upload
    bobby

  • View
    33

  • Download
    0

Embed Size (px)

DESCRIPTION

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 …. - PowerPoint PPT Presentation

Citation preview

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

Angewandte AlgorithmikTheoretisch fundierte Lösungen

für “Real-World” Probleme

Holger BastMax-Planck-Institut für Informatik

Saarbrücken

Wissenschaftlicher Vortrag nach §6 Habilitationsordnung

Universität des Saarlandes, 9. Juli 2007

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

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.

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

Ü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

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

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 undmesse die Laufzeit auf vielen zufälligen Graphen

Theorie als Selbstzweck– schult präzises Denken / Formulieren / Methodik

– selten direkt relevant

HashingSortingSchedulingMatching…

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

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

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

Ü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

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

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

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

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, …

Gerhard Weikum SIGMOD 2005 paper #23876Surajit Chaudhuri SIGMOD 2005 paper #23876Gerhard Weikum SIGIR 2006 paper #31457… … … …

alles mit ein- und demselben Mechanismus

Page 9: Angewandte Algorithmik Theoretisch fundierte Lösungen für  “Real-World”  Probleme
Page 10: Angewandte Algorithmik Theoretisch fundierte Lösungen für  “Real-World”  Probleme
Page 11: Angewandte Algorithmik Theoretisch fundierte Lösungen für  “Real-World”  Probleme
Page 12: Angewandte Algorithmik Theoretisch fundierte Lösungen für  “Real-World”  Probleme

D98

E B A S

D98

E B A S

D78

K L S

D78

K L SD53

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 DA

D3

Q DA

D17

B WU K A

D17

B WU 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 H

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

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

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

D13E0.5 0.2 0.7

D88E

D98

E B A S

D98

E B A S

D78

K L S

D78

K L SD53

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 DA

D3

Q DA

D17

B WU K A

D17

B WU 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 WU K A

D17

B WU K A

D13

A O E W H

D13

A O E W H

D13 D17 D88 …

C D E F G H

D88G

Formulierung des Kernproblems

kontext-sensitive Präfixsuche(Nichtstandard Bereichssuche Problem)

Treffer für “traffic”

Worte die mit “inter” beginnen

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

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!

Ziel: schneller ohne mehr Platz zu verbrauchen

im worst casequadratische Komplexität

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

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

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

Neu: Halb-Invertierter Index

Listen von Dokument-Wort Paaren (sortiert nach Dok. Id)

A-D:1 3 3 5 5 6 7 8 8 9 11 11 11 12 13 15

D A C A B A C A D A A B C A C A

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)

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

Halb-Invertierter Index: Komprimierung

Dok. Ids Differenzen und Wort Ids Häufigkeitsränge

1 3 3 5 5 6 7 8 8 9 11 11 11 12 13 15D A C A B A C A D A A B C A C A

+1 +2 +0 +2 +0 +1 +1 +1 +0 +1 +2 +0 +0 +1 +1 +23rd 1st 2nd 1st 4th 1st 2nd 1st 3rd 1st 1st 4th 2nd 1st 2nd 1st

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

10 110 0 110 0 10 10 10 0 10 110 0 0 10 10 110111 0 10 0 110 0 10 0 111 0 0 110 10 0 10 0

Was schließlich gespeichert wird

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

Ergebnis Platzverbrauch

HOMEOPATHY44,015 Dok.

263,817 Wortemit 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öße 452 MB 7.4 GB 426 GB

VOLL-INV 13 MB 0.48 GB 4.6 GB

HALB-INV 14 MB 0.51 GB 4.9 GB

perfekte Übereinstimmung von Theorie und Praxis

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)

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

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

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

Ü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

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

Spektrales Lernen

1 0 1 0 01 1 0 0 01 1 1 1 00 0 0 1 1

internetwebsurfingbeach

Daten als Objekt-Feature Matrix gegeben

– Bilder, Formen, Text, …

– z.B. Objekte = Dokumente, Features = Worte

Problem:fehlende Einträge

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

Spektrales Lernen

1 0 1 0 01 1 0 0 01 1 1 1 00 0 0 1 1

internetwebsurfingbeach

0.8 0.6 0.6 0.1 -0.20.8 0.6 0.6 0.1 -0.21.2 0.9 0.9 0.8 0.3-0.1 0.0 0.0 1.1 0.9

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

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

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

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

Alternative Sicht

Betrachte die Feature-Feature Korrelations-Matrix(Objekt-Objekt Korrelations-Matrix ginge genauso gut)

0.8 0.1 0.6 0.1

0.1 1.1 0.9 0.1

0.6 0.9 1.1 0.7

0.1 0.1 0.7 2.0

paarweise Skalarprodukteder norm. Zeilen-Vektoren

beste Rang-2Approximation

inte

rnet

web

surfi

ng

beac

h

internetwebsurfingbeach

0.3 0.4 0.3 -0.1

0.4 0.4 0.3 -0.2

0.3 0.3 0.4 0.3

-0.1 -0.2 0.3 0.8

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

0.8 0.1 0.6 0.1

0.1 1.1 0.9 0.1

0.6 0.9 1.1 0.7

0.1 0.1 0.7 2.0

die approximierten Korrelationen hängen stark vom Rang ab!

inte

rnet

web

surfi

ng

beac

h

internetwebsurfingbeach

0.9 -0.1 0.2 -0.1

-0.1 0.8 0.3 -0.2

0.2 0.3 0.4 0.3

-0.1 -0.2 0.3 0.8

Alternative Sicht

paarweise Skalarprodukteder norm. Zeilen-Vektoren

beste Rang-3Approximation

Betrachte die Feature-Feature Korrelations-Matrix(Objekt-Objekt Korrelations-Matrix ginge genauso gut)

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

Zentrale Beobachtung

Abhängigkeit der Korrelation eines festen Paares vom Rang k der Approximation

node / vertex

200 400 6000Rang der Approximation

logic / logics

200 400 6000Rang der Approximation

logic / vertex

200 400 6000Rang der Approximation

Korr

ela

tion

0

kein einzelner Rang ist gut für alle Paare!

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

Zentrale Beobachtung

Abhängigkeit der Korrelation eines festen Paares vom Rang k der Approximation

node / vertex

200 400 6000Rang der Approximation

logic / logics

200 400 6000Rang der Approximation

logic / vertex

200 400 6000Rang der Approximation

Korr

ela

tion

0

kein einzelner Rang ist gut für alle Paare!

aber die Form der Kurve scheint ein guter Indikator zu sein

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

Modellierung: Verwandte Features

200

400

600

0Rang der Approximation

200

400

600

0Rang der Approximation

200

400

600

0Rang der Approximation

Kore

llati

on

beweisbare Formim idealisierten Fall

beweisbar kleine Änderung nach kleiner

Perturbation

auf halbem Wegezu einer realen Matrix

0

Für ein idealisiertes mathematisches Modell von perfekt verwandten Features haben wir:

Form für verwandte Features: hoch und wieder runter

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

Form für unverwandte Features: Oszillation um Null

200

400

600

0Rang der Approximation

200

400

600

0Rang der Approximation

200

400

600

0Rang der Approximation

Korr

ela

tion

0

Für ein idealisiertes mathematisches Modell von perfekt unverwandten Features haben wir:

Modellierung: Unverwandte Features

beweisbare Formim idealisierten Fall

beweisbar kleine Änderung nach kleiner

Perturbation

auf halbem Wegezu einer realen Matrix

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

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 <[email protected]>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

Page 32: Angewandte Algorithmik Theoretisch fundierte Lösungen für  “Real-World”  Probleme
Page 33: Angewandte Algorithmik Theoretisch fundierte Lösungen für  “Real-World”  Probleme
Page 34: Angewandte Algorithmik Theoretisch fundierte Lösungen für  “Real-World”  Probleme

Ü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

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

Problemstellung

Kürzeste (schnellste) Wege in Straßennetzwerken

– von einem Start zu einem Ziel (point-to-point)

– (un)gerichteter Graph, Kantenkosten = Reisezeiten

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

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 '01

...

24 Millionen Knoten58 Millionen Kanten

...

Page 37: Angewandte Algorithmik Theoretisch fundierte Lösungen für  “Real-World”  Probleme
Page 38: Angewandte Algorithmik Theoretisch fundierte Lösungen für  “Real-World”  Probleme
Page 39: Angewandte Algorithmik Theoretisch fundierte Lösungen für  “Real-World”  Probleme

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

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

Transitknoten

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 !

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

Neu: der halb-invertierte Index

Blöcke von Dokument-Wort Paaren

1 3 3 5 5 6 7 8 8 9 11 11 11 12 13 15D A C A B A C A D A A B C A C A

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

sortiert nach Dok. Id

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

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

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

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 <[email protected]>Subject: Very clear talk

Thank you – it‘s too easy to make this stuff mystical and you did the opposite

[…]

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

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ücken        Rathaus, 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

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