ISWeb - Information Systems & Semantic Web Marcin Grzegorzek [email protected] Komplexe...

45
<is web> ISWeb - Information Systems & Semantic Web Marcin Grzegorzek [email protected] 1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen 7.1 Hochdimensionale Indexstrukturen 7.1.1 Anfragearten 7.1.2 Baumverfahren 7.1.3 Komplexe Distanzfunktionen 7.1.4 Fluch der hohen Dimensionen

Transcript of ISWeb - Information Systems & Semantic Web Marcin Grzegorzek [email protected] Komplexe...

Page 1: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 1

Komplexe Distanzfunktionen

7. Effiziente Algorithmen und Datenstrukturen

7.1 Hochdimensionale Indexstrukturen

7.1.1 Anfragearten

7.1.2 Baumverfahren

7.1.3 Komplexe Distanzfunktionen

7.1.4 Fluch der hohen Dimensionen

Page 2: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 2

Substitution komplexer Distanzfunktionen

bisherige Baumverfahren und Algorithmen basieren hauptsächlich auf euklidischer Distanz

hier Diskussion der Verfahren für komplexe Distanzfunktionen: keine euklidische Distanzfunktion aufwändig zu berechnen

(siehe etwa quadratische Distanzfunktionen)

Grundidee: Substitution der komplexen Distanzfunktion (meist euklidische Distanzfunktion)Anwendung der einfachen Distanzfunktion als Filter

Problem: unterschiedliche Distanzwerte erzeugen Verfälschungen→ nach Filtern ist Kontrolle mit richtiger Distanzfunktion erforderlich

Page 3: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 3

Algorithmus nach Korn

Korn, Sidiropoulos, Faloutsos, Siegel, Protopapas 1996

so genanntes GEMINI-Verfahren (Generic Multimedia object Indexing)

folgende Probleme bei Verwendung komplexer Distanzfunktionen werden behoben:

1. aufwändige Berechnung der Distanzen

2. keine effizienten Suchalgorithmen verfügbar

3. Feature-Objekte sind nicht immer Vektoren

Page 4: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 4

Substitution durch einfache Distanzfunktion

gegeben: komplexe Distanzfunktionfür beliebige Objektmenge

Substitution mittels Funktion auf Objekten aus (etwa Dimensionsreduzierung) und einfache Distanzfunktion

Page 5: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 5

folgende lower-bound-Bedingung muss erfüllt sein:

(garantiert korrekten Ausschluss von Objekten)

Substitution durch einfache Distanzfunktion (2)

Page 6: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 6

Entwurf der Substitution

Entwurfsziele:

1.effiziente Berechnung wird ermöglicht, etwa RKV-Algorithmus im Baumindex

2. Erfüllung lower-bound-Bedingung

3. minimale Verfälschung

Page 7: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 7

Substitutionsbeispiel

Messung Unähnlichkeit von Zeitreihen anhand euklidscher Distanzfunktion→ aufwändig durch hohe Anzahl von Messwerten

Dimensionsreduzierung durch DFT-Transformation (Kompaktheit)

Substitution durch euklidische Distanz auf kompakten Fourier-Koeffizienten

Page 8: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 8

aufgrund Parseval-Theorem und Wegfallen nichtnegativer Summanden ist lower-bound-Bedingung erfüllt

Substitutionsbeispiel (2)

Page 9: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 9

Algorithmus für Bereichsanfrage nach Korn

einfache Distanzfunktion und komplexe Distanzfunktion

Transformationsfunktion

Anfragepunkt und Radius

Wurzelknoten des Indexbaums

Page 10: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 10

Algorithmus für Bereichsanfrage graphisch

Page 11: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 11

Algorithmus für knn-Anfrage nach Korn

Page 12: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 12

Algorithmus für knn-Anfrage graphisch

Page 13: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 13

Verbesserung des knn-Algorithmus

Seidl, Kriegel 1998

kritischer Parameter ist max-Wert→ erzeugt u.U. hohe Anzahl von Kandidaten

Idee: max-Wert dynamisch ermitteln→ Verschränkung der Zeilen 3 bis 8 und Einsatz von getNext-Anfrage

Page 14: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 14

Verbesserung des knn-Algorithmus

Page 15: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 15

FastMap-Verfahren

Faloutsos, Lin 1995

approximative Abbildung einer Metrik (Objekte und Distanzen) auf k-Dimensionale Punkte und euklidische Distanzfunktionen

Beispiel: Abbildung Menge von Wörtern und Editierdistanz auf mehrdimensionale Punkte

Page 16: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 16

Distanzwerte liegen explizit vor

Parameter k kann frei vordefiniert werden je höher, desto genauer die Approximation je höher, desto mehr Werte pro Objekt

FastMap-Verfahren (2)

Page 17: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 17

Anwendung des FastMap-Verfahrens

Anwendungen:

Substitution komplexer Distanzfunktionen durch indizierbare Distanzfunktion und Punkte

2D- oder 3D-Visualisierung (k=2 oder k=3) einer Metrik

Dimensionsreduzierung

Page 18: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 18

Ziele

Entwurfsziele sind: effiziente Abbildung

möglichst linearer Aufwand bzgl. Objektanzahl distanzapproximierend effiziente Abbildung neuer Objekte

(unabhängig von Objektanzahl)

Page 19: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 19

Idee

Grundidee: Objekte liegen bereits (idealisiert) im euklidischen

Vektorraum Koordinaten sind jedoch unbekannt

Ziel: Finden orthogonaler Koordinatenachsen und Ermitteln der entsprechenden Werte durch Projektion auf Achsen

Page 20: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 20

Ermitteln der Koordinatenwerte

Achse ist durch Objektpaar und (Pivotpunkte) festgelegt

Anwendung Kosinussatz:

(1)

Page 21: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 21

Anpassung der Distanzen

nach Finden der Koordinatenwerte einer Achse müssen Distanzen entsprechend reduziert werden

also Entfernen des entsprechenden Terms aus der euklidschen Distanzfunktion:

(2)

Page 22: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 22

Distanzen werden also kleiner – Problem: negative Werte können auftreten

nach Anpassung Ermitteln der Koordinatenwerte der nächsten Achse,

Wiederholung bis k Achsen gefunden wurden

Anpassung der Distanzen (2)

Page 23: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 23

Finden der Pivotpunkte

Ziel: Einfluss der Achsendimension soll mit jeder neu gefundenen Achse abnehmen

daher: Finde die am weitesten auseinander liegenden Objekte

Problem: quadratischer Aufwand

Lösung: Einsatz eines heuristischen Algorithmus mit linearem Aufwand

Page 24: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 24

Heuristischer Ansatz zum Finden der Pivotpunkte

oa, ob sind Ausgabeparameter!

Bemerkung: Schritte 4 und 5 werden üblicherweise mehrfach durchlaufen

Page 25: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 25

FastMap-Algorithmus

Page 26: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 26

Beispiel Editierdatensatz

Wörter: Medium (W1), Datenbank (W2), Multimedia (W3), System (W4), Objekt (W5)

Page 27: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 27

Beispiel Editierdistanz (2)

Ergebnis des FastMap-Algorithmus:

Page 28: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 28

Problem mit FastMap-Algorithmus

Annahme: Punkte liegen im (unbekannten) Vektorraum

Annahme nicht immer erfüllt, da nicht jede Distanzfunktion entsprechend einbettbar ist

Problem bei der Distanzanpassung: Wurzel aus negativen Werten

Page 29: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 29

Fluch der hohen Dimensionen

Experimente zeigen: Nächste-Nachbarsuche in Indexbäumen versagt ab etwa 20 Dimensionen

Problem: Ausschluss von Teilbäumen von der Suche nicht möglich→ Gesamtbaumdurchlauf aufwändiger als sequentieller Durchlauf

Phänomen wird Fluch der hohen Dimensionen genannt

Page 30: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 30

tritt im Wesentlichen bei Verwendung der euklidschen Distanzfunktion auf

Fluch ergibt sich aus der Distanzverteilung

Frage: gilt der Fluch für alle Baumsuchverfahren?

Fluch der hohen Dimensionen (2)

Page 31: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 31

Quadrierte Distanzverteilung zweier gleichverteilter Werte

Wahrscheinlichkeitsverteilung von Distanzen:

Erwartungswert beträgt 1/6 und Varianz beträgt 7/180

Page 32: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 32

Quadrierte Distanzverteilung zweier gleichverteilter Punkte

Wahrscheinlichkeitsverteilung der quadrierten eukl. Distanzen nach Anwendung des zentralen Grenzwertsatzes: Annäherung an Normalverteilung

Erwartungswert

Varianz

Page 33: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 33

Verteilung der eukl. Distanz zweier gleichverteilter Punkte

Wurzelberechnung führt zu

Erwartungswert strebt gegen Wert mit steigender Dimension

Standardabweichung ist konstant (≈0,24)

Page 34: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 34

Fazit: im Gegensatz zur Standardabweichung steigt Erwartungswert mit Dimensionszahl (gilt auch für viele Realdatenverteilungen)

Verteilung der euklidischen Distanz zweier gleichverteilter Punkte (2)

Page 35: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 35

Distanzverteilung im hochdimensionalen Raum graphisch

10 Dimensionen:

100 Dimensionen:

Page 36: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 36

Annäherung der Distanzen im hochdimensionalen Raum

steigender Erwartungswert und konstante Standardabweichung führen zu:

Distanzen nähern sich also einander an→ Clusterung ergibt aufgrund fehlender Lokalität wenig Sinn

Page 37: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 37

Annäherung der Distanzen in hochdim. Raum graphisch

Page 38: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 38

Approximationsfehler bei der Cluster-Bildung

Suchbäume clustern mehrere Feature-Objekte anhand einer geometrischen Figur (etwa MBR)

minimale Distanz zu eingeschlossenem Feature-Objekt darf nicht kleiner als zum Cluster sein

Approximationsfehler: durchschnittliche Differenz zwischen Distanz vom Anfragepunkt zum nächsten Feature-Objekt und zum dazugehörigen Cluster

Ziel der Clusterung: Minimierung des Approximationsfehlers durch minimale geometrische Figur (etwa MBR)

Page 39: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 39

Approximationsfehler steigt linear mit Erwartungswert der Distanzverteilung

Nachweis am minimalen konvexen Cluster: konvexe Hülle zwischen zwei Punkten→ also Linie

Extremfall: Anfragepunkt auf der Linie

Extremfall: Anfragepunkt als Punkt auf Simplex

Approximationsfehler bei der Cluster-Bildung (2)

Page 40: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 40

Extremfälle graphisch

Extremfall 1:

Extremfall 2:

Page 41: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 41

Ineffiziente Suche in hochdimensionalen Indexbäumen

Ausschluss eines Teilbaums durch Vergleich von Clusterdistanz mit NN-Kandidatendistanz zum Anfragepunkt

optimaler (aber nicht realisierbarer) Suchalgorithmus: Annahme: Distanz zum nächsten Nachbar sei schon bekannt alle Cluster, deren Minimaldistanz kleiner als NN-Distanz ist,

werden durchsucht

Optimaler Suchalgorithmus dient zur Abschätzung der minimal möglichen Suchkosten

Page 42: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 42

Optimaler Suchalgorithmus graphisch

Page 43: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 43

Optimaler Suchalgorithmus im hochdimensionalen Raum

wenn Dimensionszahl steigt: steigender Approximationsfehler und konstanter Abstand

zwischen größter und kleinster Distanz Folge: selbst bei optimalem Suchalgorithmus können keine

Cluster von Suche ausgeschlossen werden

Page 44: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 44

Fazit: ab bestimmter Dimensionsanzahl ist NN-Suche anhand euklidscher Distanzen mit Baumindizes nicht effizient (mindestens sequentieller Aufwand erforderlich)

Bemerkung: Problem gilt auch für Metrik-Bäume wie den M-Baum

Optimaler Suchalgorithmus im hochdimensionalen Raum (2)

Page 45: ISWeb - Information Systems & Semantic Web Marcin Grzegorzek marcin@uni-koblenz.de1 Komplexe Distanzfunktionen 7. Effiziente Algorithmen und Datenstrukturen.

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 45

Fluch der hohen Dimensionen graphisch