7 Effiziente Algorithmen und Datenstrukturen 1. Hochdimensionale Indexstrukturen (a) Anfragearten (b) Baumverfahren (c) Komplexe Distanzfunktionen (d) Fluch der hohen Dimensionen (e) Signaturverfahren (f) Weitere Indexverfahren 1
7 Effiziente Algorithmen und Datenstrukturen (2) 2. Algorithmen zur Aggregation von Ähnlichkeitswerten (a) Container Algorithmen (b) Kondensator Algorithmus (c) Indexaggregation 2
Einführung Algorithmen und Datenstrukturen für effiziente Ergbnisberechnung bzgl. der Anfrage 3
Einführung Erweiterung von Verfahren klassischer DBMSe um Behandlung von Ähnlichkeits bzw. Unähnlichkeitswerten Übergang von Mengensemantik zu Listensemantik hochdimensionale Indexstrukturen zur effizienten Suche im hochdimensionalen Raum Aggregation von Ähnlichkeitswerten: für komplexe Anfragen 4
7.1 Hochdimensionale Indexstrukturen Strukturierung der Daten zur Unterstützung einer effizienten Suche klassische Datenstrukturen in DBMS: B Baum und dessen Varianten exakte Suche mit logarithmischem Aufwand aber Einschränkung auf eine Dimension ungeeignet zur Ähnlichkeitssuche im hochdimensionalen Raum 5
Anforderungen an hochdimensionale Datenstruktur und Algorithmen Korrektheit und Vollständigkeit skalierbar bzgl. Dimensionsanzahl räumliche Audsehnung der Objekte: 0 Dimensionen: Punkt 1 Dimension: Linie 2 Dimensionen: Fläche n Dimensionen: etwa Hyperwürfel 6
Anforderungen an hochdimensionale Datenstruktur und Algorithmen (2) Sucheffizienz, also Anzahl Seitenzugriffe muss besser als bei sequentiellem Durchlauf sein viele Anfragearten (siehe nächste Folie) effiziente Update Operationen verschiedene Distanzfunktionen speicherplatzsparend 7
Anfragearten Nächste Nachbarsuche Approximative Nächste Nachbarsuche Reverse Nächste Nachbarsuche Bereichssuche Punktsuche Partial Match Suche Ähnlichkeitsverbund 8
Nächste Nachbarsuche Feature Daten eines Anfrageobjekts: Menge von Feature Daten: binäre Distanzfunktion Finden des ähnlichsten Medienobjekts (das nächste Feature Objekt) mehrere nächste Nachbarn möglich: 9
Nächste Nachbarsuche graphisch 10
Zweidimensionale Voronoi Zellen NN Suche auf punktförmigen Feature Daten ist äquivalent zum Enthaltenseinstest in Voronoi Zelle jedem Feature Objekt ist eigene Voronoi Zelle zugewiesen Voronoi Zelle enthält alle Raumpunkte, die nächste Nachbarn des entsprechenden Feature Objekts sind Idee: Vorausberechnung aller Voronoi Zellen und anschließend Enthaltenseinstest Problem: Berechnungskomplexität für Enthaltenseinstest 11
Voronoi Zellen graphisch 12
KNN Suche die nächsten Nachbarn werden gesucht bei gleichen Distanzen: nichtdeterministische Auswahl Ergebnisobjekte werden aufsteigend ausgegeben 13
KNN Suche (2) ist üblicherweise so klein, dass das Ergebnis in den Hauptspeicher passt Hauptspeichersortierung ansonsten: Ergebnisobjekt sukzessive abholen (getnext Semantik / ranking Anfrage) 14
Approximative Nächste Nachbarsuche Effizienzgewinn bzgl. NN Anfragen, wenn kleine Ungenauigkeiten tolerierbar als Maß der Ungenauigkeit mehrere Feature Objekte können Bedingung erfüllen nichtdeterministische Auswahl Vorsicht: Ergebnis muss nicht in Nähe des Ergebnisses liegen 15
PAC NN Suche (probably approximative correct) weitere Abschwächung einer ANN Suche Forderung: Wahrscheinlichkeit der Abweichung von Bedingung muss vorgebbaren Mindestwert überschreiten ermögliche effizientere Suche 16
Reverse Nächste Nachbarsuche Suche nach Feature Objekten, deren nächster Nachbar der Anfragepunkt ist (etwa Suche nach bestem Ort für neuen Einkaufsmarkt) Achtung: Ergebnis oft anders als bei NN Suche, da Nächste Nachbarrelation nicht symmetrisch ist 17
Bereichssuche Anfrage definiert einen Bereich (Region) im hochdimensionalen Raum Ergebnis sind alle Feature Objekte, die Anfragebereich schneiden Varianten begrenzte versus unbegrenzte Bereiche Spezialfall Hyperkugen und Hyperrechteck 18
Bereichssuche graphisch Straßenplanung im Katasteramt: 19
Punktsuche Suche anhand eines gegebenen Feature Objekts Test auf Enthaltensein (exakte Überdeckung) Punktsuche in MMDB ist relativ selten 20
Partial Match Suche Punktsuche kann als Complete Match Suche aufgefasst werden bei Partial Match Suche Übereinstimmung nur in einigen Dimensionen (restliche Dimensionen werden ignoriert) ist Spezialfall der Bereichsanfrage mit teilweise unbegrentzem Bereich 21
Partial Match Suche graphisch Suchbereich ist senkrechte Linie (Übereinstimmung in nur einer Dimension) 22
Ähnlichkeitsverbund Operation auf zwei Mengen von Feature Objekten Verbund findet Paare, deren Distanz kleiner als vorgegebener Schwellenwert ist Selbstverbund: dieselbe Menge zweimal 23
Ähnlichkeitsverbund graphisch 24
Baumverfahren Ausgangspunkt: punktförmige hochdimensionale Feature Objekte B Baum eindimensional Abbildung eines mehrdimensionalen Raums auf eine Dimension im Allgemeinen nicht distanzerhaltend möglich Simplex mit n+1 Punkten im n dimensionalen Raum) Fazit: mehrdimensionale Indexverfahren nötig 25
Baumverfahren (2) Grundidee hierarchischer Indexierungsverfahren: Beschreiben von Punktmengen durch geometrische, umschreibende Regionen (Cluster) bei der Suche Test und evtl. Ausschluss von Clustern Cluster können sich gegenseitig enthalten Halbordnung und daher Hierarchie (Hasse Diagramm) oder Baum 26
Unterscheidungskriterien von Baumstrukturen 27
Suchalgorithmen in Bäumen Algorithmen zur Berechnung des nächsten Niveaus Anfragepunkt Existenz zweier Distanzfunktionen Distanz zwischen zwei Punkten minimale Distanz zwischen und potentiellem Clusterpunkt eines Clusters 28
Branch und Bound Algorithmus geht von Objektspeicherung in Blättern aus realisiert Tiefensuche verwendet dynamisch angepasste Distanz oberegrenze zu NN Kandidat 29
Branch and Bound Algorithmus (2) 30
RKV Algorithmus Roussopoulos/Kelly/Vincent 1995 spezieller Branch and Bound Algorithmus zur Nächste Nachbarsuche Feature Objekte als hochdimensionale Objekte für Baum mit lokal gruppierenden Hyperquadern und Feature Objekten in den Blättern Hyperquader als MBR (engl. minimum bounding rectangle) jede Hyperfläche berührt mind. ein Feature Objekt von außen MBR wird durch zwei Punkte (innerste und äußerste Ecke) identifiziert 31
MIN Distanz MIN Distanz: minimal mögliche Distanz zwischen Anfragepunkt und MBR mit 32
MINMAX Distanz MINMAX Distanz: maximal möglicher Abstand zum nächsten Nachbarn in Ausnutzen der Minimaleigenschaft eines MBR mit: 33
MIN und MINMAX Distanzen graphisch 34
Reduzierung des Suchaufwands Sortierung der Kindsknoten anhand MIN Distanz (optimistisch) oder MINMAX Distanz (pessimistisch) 35
Reduzierung des Suchaufwands (2) 3 Strategien zur Suchaufwandreduzierung (oberegrenze ist Distanz zum NN Kandidaten) 1. MBR braucht nicht aufgesucht zu werden 2. 3. MBR braucht nicht aufgesucht zu werden ISWeb Informationssysteme & Semantic 36
Reduzierung des Suchaufwands (2) 3 Strategien zur Suchaufwandreduzierung (oberegrenze ist Distanz zum NN Kandidaten) 1. MBR braucht nicht aufgesucht zu werden 2. 3. MBR braucht nicht aufgesucht zu werden ISWeb Informationssysteme & Semantic 37
Reduzierung des Suchaufwands (2) 3 Strategien zur Suchaufwandreduzierung (oberegrenze ist Distanz zum NN Kandidaten) 2. 38
Reduzierung des Suchaufwands (2) 3 Strategien zur Suchaufwandreduzierung (oberegrenze ist Distanz zum NN Kandidaten) 3. MBR braucht nicht aufgesucht zu werden 39
Reduzierung des Suchaufwands graphisch 40
RKV Algorithmus 41
knn Anfragen mit RKV Algorithmus Modifikation des Algorithmus: sortierte Warteschlange zur Verwaltung der Nächste Nachbarschaftskandidaten oberegrenze ist Distanz zum letzten Kandidat 42
Bewertung RKV Algorithmus getnext Anfragen werden nicht unterstützt (Problem aufgrund der Tiefensuche) ursprünglich für euklidsche Distanz entwickelt; funktioniert auch auf anderen Distanzfunktionen, so lange MIN und MINMAX Distanzen berechnet werden können Einschränkung auf MBRs als Clustergeometrien ansonsten statt MINMAX die MAX Distanz verwenden 43
HS Algorithmus Hanrich/Hjaltason/Samet Algorithmus für getnext Anfragen statt Tiefensuche Verwendung einer global sortierten Warteschlange: enthält Knoten, Blätter und Feature Objekte mit minimalen Distanzen lb zum Anfragepunkt legt Abarbeitungsreihenfolge aufgrund aufsteigender Distanz fest nur Kopfelemente werden entnommen 44
HS Algorithmus (2) Initialisierung mit Wurzelelementen wenn entnommenes Kopfelement Knoten, dann werden Kinder eingefügt wenn entnommenes Kopfelement Blatt, dann werden Feature Objekte eingefügt wenn entnommenes Kopfelement Feature Objekt Ausgabe 45
HS Algorithmus (3) 46
HS Algorithmus graphisch 47
Bewertung HS Algorithmus gut geeignet für getnext Anfragen unabhängig von Cluster Geometrie Problem: Warteschlange kann zu groß für Hauptspeicher werden aufwändige Auslagerung auf Festplatte notwendig Navigation springt wegen Warteschlangen sortierung; keine Tiefen/Breitensuche teure Festplattenzugriffe 48
R Baum und Varianten R Baum R+ Baum X Baum M Baum 49
R Baum R Baum: Guttman 1984 Erweiterung B Baum um mehrere Dimensionen Standardbaum zur Indexierung im niedrigdimensionalen Raum Einsatz etwa in GIS Feature Objekte können beliebige Ausdehnung haben 50
R Baum (2) Cluster Bildung: lokale Gruppierung durch MBRs (Überlappungen erlaubt) balanciert und Feature Objekte in den Blättern Mehrwegbaum Anzahl Kindknoten pro Knoten durch vordefinierten Minimal bzw. Maximalwert eingeschränkt (Anpassung an Seitengröße) 51
R Baum (3) MBR eines Knoten umfasst minimal alle MBR der Kindknoten Blatter enthalten pro Feature Objekt entspechende Pointer und MBR Suchaufwand wächst mit Grad der Überlappung Ziel: minimale Überlappung bei Baumkonstruktion 52
R Baum graphisch 53
Einfügen eines neuen Feature Objekts Finden eines geeigneten Blatts Suche beginnt an der Wurzel Navigation zum Kindknoten, dessen erforderliches Erweiterungsvolumen minimal ist wenn Auswahlkriterium nicht eindeutig, dann Kindknoten mit minimalen Volumen bevorzugen Blatt gefunden und Objekt eingefügt Anpassung der MBRs der Vaterknoten 54
Überlaufproblem wenn Knoten zu viele Einträge besitzt Zerlegung MBR in zwei MBRs Ziel: Minimierung der Volumensumme der neuen MBR Minimierung der Überlappungswahrscheinlichkeit Zerlegung nach Idee aus R* Baum Ansatz: Zerlegung in genau einer Dimension Aufwand zum Finden bester Zerlegung: erschöpfende Suche Punktanzahl * Dimensionsanzahl 55
Suche im R Baum HS und RKV Algorithmus einsetzbar bei Bereichsanfragen: Navigation in jeden Unterbaum, dessen MBR den Suchbaum schneidet NN Suche ist effizient wenn Anzahl Dimensionen klein (etwa < 10) bei vielen Dimensionen viele MBR Überlappungen Ausschließen von Teilbäumen von Suche wird extrem unwahrscheinlich Suchaufwand höher als bei sequentieller Suche viele Varianten des R Baums versuchen Problem zu lösen, können es aber nur verringern ( curse of 56 dimensionality )
R Baum + Sellig/Roussopolous/Faloutsos 1987 Grundidee: Verbieten von Überlappungen neuer Einfügealgorithmus Forderung ist allerdings nur schwer erfüllbar Einfügung kann Anpassung mehrerer Blätter erfordern Anpassung kann Zerlegung in kleinere MBR ohne vorherigem Überlauf bedeuten Knoten mit geringer Auslastung viele Knoten (Entartung) Feature Objekte mit räumlicher Ausdehnung: u.u. kann kein umfassender MBR gefunden werden Mehrfacheinträge nötig 57
Probleme des R Baum graphisch + 58
X Baum Brechthold, Keim, Kriegel 1996 Idee basiert auf zwei Beobachtungen: 1.Effizienzprobleme im hochdimensionalen Raum aufgrund steigender Überlappungen sequentieller Durchlauf ist effizienter als Baumdurchlauf 2.Zerlegung sollte an einer bestimmten Dimension erfolgen 59
Superknoten Einführung von Superknoten Superknoten umfasst beliebig viele Datenbankseiten (keine Einschränkung bzgl. Anzahl) Suche im Superknoten erfolgt sequentiell Superknoten werden dynamisch angelegt, wenn Grad an Überlappung zu hoch Fazit: X Baum als dynamische Hybridstruktur zwischen eindimensionalem Array und R Baum 60
X Baum graphisch 61
Knotenüberlauf Split Historie wird für jeden MBR verwaltet enthält alle bereits verwendeten Zerlegungsdimensionen bei Überlauf 1.Anwendung der herkömmlichen, topologischen Zerlegung 2.wenn vordefinierter Überlappungsgrad überschritten Auswahl der Zerlegungsdimension anhand Split Historie 3.wenn Verletzung der Balance Erzeuge Superknoten 62
M Baum Ciaccia, Patella, Zezula 1997 Annahme bei Bäumen bis jetzt: Feature Objekte sind Elemente des euklidschen Vektorraums Problem: Annahme gilt nicht immer 63
M Baum (2) M Baum setzt nur Metrik voraus: Menge von Feature Objekten (müssen keine Vektoren sein!) Distanzfunktionen (muss nicht eukl. Distanz sein, z.b. Editdistanz zwischen Wörtern) M Baum nutzt Dreiecksungleichung zum Ausschluss von Teilbäumen von der Suche 64
M Baum (3) Charakteristik: Cluster Bildung: lokale Gruppierung Cluster können sich überlappen Balance: M Baum ist balanciert Objektspeicherung: Verweise auf Feature Objekte in den Blättern Geometrie: festgelegt durch Feature Objekt (Zentrum) und Distanz (Radius) (entspricht Kugel im euklidischen Raum) 65
Datenstuktur eines inneren Knotens innerer Knoten: durch vordefinierte Maximalanzahl an Seitengröße angepasst jeder Eintrag hat folgende Datenstruktur: Zeiger zum Kindknoten routing objekt : Feature Objekt als Kugelzentrum des entspr. Kind Clusters Radius : maximal erlaubte Distanz vom routing object zu Feature Objekten des Kind Clusters Distanz zum Vaterknoten: Distanz zwischen und routing object des Vaters 66
Datenstruktur eines Blattknotens Blattknoten: Verweis auf Feature Objekt Distanz des Feature Objekts zum routing object des Vaterknotens 67
Suche im M Baum Bereichssuche und Nächste Nachbarsuche entsprechen den eingeführten Algorithmen Ausschlussbedingung anhand zweier Distanzen, welche minimale Distanz eines Clusters mit routing object, routing object des Vaters und Radius zu Feature Objekt berechnen 68
Suche im M Baum (2) 1. angenäherte minmale Distanz (kann sehr schnell ermittelt werden): 2. minimale Distanz: maximale Distanz: 69
Distanzberechnung graphisch es gilt aufgrund Dreiecksungleichung: 70
Suche im M Baum (3) Verwendung der angenäherten minimalen Distanz als schneller Filter Ausschlussbedingung für Cluster: Ausnutzung der minimalen Distanz und der Dreiecksungleichung (siehe Zeilen 18 und 19 des Branch and Bound Algorithmus) 71
Einfügen eines neuen Feature Objekts Beginn bei der Wurzel Navigation zum geeigneten Blatt anhand folgender Regeln: Vermeidung der Vergrößerung der Radien wenn mehrere Kinder ohne erforderliche Vergrößerung: Auswahl des nächsten routing objects falls alle Kinder Vergrößerung benötigen: Auswahl Kind mit minimaler Vergrößerung nach Einfügung im Blatt: Anpassung der Radien anhand Pfad zur Wurzel 72
Überlaufbehandlung Zerlegung des Clusters in zwei neue Cluster zwei neue routing objects müssen gefunden werden grundsätzlich sind routing objects immer Feature Objekte 73
Überlaufbehandlung (2) verschiedene Strategien zum Finden neuer routing objects Ziel: Minimierung Clustervolumen und Überlappungsvolumen nachdem neue routing objects gefunden, abwechselnde Zuordnung der jeweils nächsten Feature Objekte 74
Überlaufbehandlung (3) fünf Strategien zum Finden neuer routing objects: erschöpfende Suche und Radiensumme: Suche Objektpaar mit minimaler Radiensumme erschöpfende Suche und Radienmaxima: Suche Objektpaar mit minimalen Maximalradien am weitesten entfernte Objekte nichtdeterministische Strategie (Zufall) sampling: Auswahl Objektpaar mit minimalen Maximalradien aus Stichprobe 75
Komplexe Distanzfunktionen 1.Algorithmus nach Korn (2. Fastmap Algorithmus) 76
Substitution komplexer Distanzfunktionen bisherige Baumverfahren und Algorithmen basieren hauptsächlich auf euklidscher Distanz hier Diskussion der Verfahren für komplexe Distanzfunktionen: keine euklidsche Distanzfunktion aufwändig zu berechnen (siehe etwa quadratische Distanzfunktionen) 77
Substitution komplexer Distanzfunktionen (2) Grundidee: Substitution der komplexen Distanzfunktion (meist euklidsche Distanzfunktion) Anwendung der einfachen Distanzfunktion als Filter Problem: unterschiedliche Distanzwerte erzeugen Verfälschungen nach Filtern ist Kontrolle mit richtiger Distanzfunktion erforderlich 78
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ängige Berechnung der Distanzen 2.keine effizienten Suchalgorithmen verfügbar 3.Feature Objekte sind nicht immer Vektoren 79
Substitution durch einfache Distanzfunktion gegeben: komplexe Distanzfunktion für beliebige Objektmenge Substitution mittels Funktion auf Objekten aus (etwa Dimensionsredu zierung) und einfache Distanzfunktion 80
Substitution durch einfache Distanzfunktion (2) folgende lower bound Bedingung muss erfüllt sein: (garantiert korrekten Ausschluss von Objekten) 81
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 82
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 83
Substitutionsbeispiel (2) aufgrund Parseval Theorem und Wegfallen nichtnegativer Summanden ist lower bound Bedingung erfüllt 84
Algorithmus für Bereichsanfrage nach Korn einfache Distanzfunktion und komplexe Distanzfunktion Transformationsfunktion Anfragepunkt und Radius Wurzelknoten des Indexbaums 85
Algorithmus für Bereichsanfrage nach Korn (2) 86
Algorithmus für Bereichsanfrage graphisch 87
Algorithmus für knn Anfrage nach Korn 88
Algorithmus für knn Anfrage graphisch 89
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 90
Verbesserung des knn Algorithmus 91
FastMap Verfahren Faloutsos, Lin 1995 approximative Abbildung einer Metrik (Objekte und Distanzen) auf k Dimensionale Punkte und euklidsche Distanzfunktionen Beispiel: Abbildung Menge von Wörtern und Editierdistanz auf mehrdimensionale Punkte 92
FastMap Verfahren (2) 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 93
Anwendung des FastMap Verfahrens Anwendungen: Substitution komplexer Distanzfunktionen durch indexierbare Distanzfunktion und Punkte 2D oder 3D Visualisierung (k=2 oder k=3) einer Metrik Dimensionsreduzierung 94
Ziele Entwurfsziele waren: effiziente Abbildung (möglichst linearer Aufwand bzgl. Objektanzahl) distanzapproximierend effiziente Abbildung neuer Objekte (unabhängig von Objektanzahl) 95
Idee Grundidee: Objekte liegen bereits (idealisiert) im euklidschen Vektorraum Koordinaten sind jedoch unbekannt Ziel: Finden orthogonaler Koordinatenachsen und Ermitteln der entsprechenden Werte durch Projektion auf Achsen 96
Ermitteln der Koordinatenwerte Achse ist durch Objektpaar (Pivotpunkte) festgelegt und Anwendung Kosinussatz: (1) 97
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) 98
Anpassung der Distanzen (2) 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 99
Finden der Pivotpunkte Ziel: Einfluss der Achsendimension soll mit jeder neu gefundenen Achse abnehmen daher: Finder der am weitesten auseinander liegenden Objekte Problem: quadratischer Aufwand Lösung: Einsatz eines heuristischen Algorithmus mit linearem Aufwand 100
Heuristischer Ansatz zum Finden der Pivotpunkte oa, ob sind Ausgabeparameter! Bemerkung: Schritte 4 und 5 werden üblicherweise mehrfach durchlaufen 101
FastMap Algorithmus 102
Beispiel Editierdatensatz Wörter: Medium (W1), Datenbank (W2), Multimedia (W3), System (W4), Objekt (W5) 103
Beispiel Editierdistanz (2) Ergebnis des FastMap Algorithmus: 104
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 105
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 106
Fluch der hohen Dimensionen (2) tritt im Wesentlichen bei Verwendung der euklidschen Distanzfunktion auf Fluch ergibt sich aus der Distanzverteilung Frage: gilt der Fluch für alle Baumsuchverfahren? 107
Quadrierte Distanzverteilung zweier gleichverteilter Werte Wahrscheinlichkeitsverteilung von Distanzen: Erwartungswert beträgt 1/6 und Varianz beträgt 7/180 108
Quadrierte Distanzverteilung zweier gleichverteilter Punkte Wahrscheinlichkeitsverteilung der quadrierten eukl. Distanzen nach Anwendung des zentralen Grenzwertsatzes: Annäherung an Normalverteilung Erwartungswert Varianz 109
Verteilung der eukl. Distanz zweier gleichverteilter Punkte Wurzelberechnung führt zu Erwartungswert strebt gegen Wert mit steigender Dimension Standardabweichung ist konstant ( 0,24) 110
Verteilung der eukl. Distanz zweier gleichverteilter Punkte (2) Fazit: im Gegensatz zur Standardabweichung steigt Erwartungswert mit Dimensionszahl (gilt auch für viele Realdatenverteilungen) 111
Distanzverteilung im hochdimen sionalen Raum graphisch 10 Dimensionen: 100 Dimensionen: 112
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 113
Annäherung der Distanzen in hochdim. Raum graphisch 114
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 115
Approximationsfehler bei der Cluster Bildung (2) 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) 116
Approximationsfehler bei der Cluster Bildung (3) 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 117
Extremfälle graphisch Extremfall 1: Extremfall 2: 118
Ineffiziente Suche in hoch dimensionalen Indexbäumen Ausschluss eines Teilbaums durch Vergleich von Clusterdistanz mit NN Kandidatendistanz zum Anfragepunkt 119
Ineffiziente Suche in hoch dimensionalen Indexbäumen (2) 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 120
Optimaler Suchalgorithmus graphisch 121
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 122
Optimaler Suchalgorithmus im hochdimensionalen Raum (2) Fazit: ab bestimmter Dimensionsanzahl ist NN Suche anhand euklidscher Distanzen mit Baumindexen nicht effizient (mindestens sequentieller Aufwand erforderlich) Bemerkung: Problem gilt auch für Metrik Bäume wie den M Baum 123
Fluch der hohen Dimensionen graphisch 124