7 Effiziente Algorithmen und Datenstrukturen

Ähnliche Dokumente
7 Effiziente Algorithmen und Datenstrukturen. 7 Effiziente Algorithmen und Datenstrukturen (2) Einführung. Einführung

R-Baum R + -Baum X-Baum M-Baum

4.3 R-Bäume (I) Idee. basiert auf der Technik überlappender Seitenregionen verallgemeinert die Idee des B + -Baums auf den 2-dimensionalen Raum

6 Distanzfunktionen. Quadratische Pseudo. 1. Eigenschaften und Klassifikation

6 Distanzfunktionen (2) 6 Distanzfunktionen. 6.1 Eigenschaften und Klassifikationen. Einführung

Suchbäume. Suchbäume. Einfügen in Binären Suchbäumen. Suchen in Binären Suchbäumen. Prinzip Suchbaum. Algorithmen und Datenstrukturen

R-Baum eine dynamische Index-Strukur für räumliche Suche

5. Clusteranalyse. Lernziele: Grundlegende Algorithmen der Clusteranalyse kennen, ihre Eigenschaften

5. Clusteranalyse Vorbemerkungen. 5. Clusteranalyse. Grundlegende Algorithmen der Clusteranalyse kennen, ihre Eigenschaften

ADS: Algorithmen und Datenstrukturen

Hallo Welt für Fortgeschrittene

Was bisher geschah. 1. Zerlegung in monotone Polygone 2. Triangulierung der monotonen Teilpolygone

Algorithmische Geometrie: Delaunay Triangulierung (Teil 2)

{0,1} rekursive Aufteilung des Datenraums in die Quadranten NW, NE, SW und SE feste Auflösung des Datenraums in 2 p 2 p Gitterzellen

12. Flächenrekonstruktion aus 3D-Punktwolken und generalisierte Voronoi-Diagramme

achsenparallele Stauchung und Streckung durch Gewichte :

Organisationsformen der Speicherstrukturen

Algorithmische Geometrie 3. Schnitte von Liniensegmenten

B+-Baum mit Z-Ordnung. B+-Baum mit Z-Ordnung. Anforderungen. 7.3 Räumliche Zugriffsstrukturen

IR Seminar SoSe 2012 Martin Leinberger

Mehrwegbäume Motivation

Lernmodul 7 Algorithmus von Dijkstra

Datenbanken: Indexe. Motivation und Konzepte

Grundlagen zur Delaunay-Triangulierung und zur konvexen Hülle. zum Begriff des Voronoi-Diagramms (vgl. auch Vorlesung "Algorithmische Geometrie"):

Algorithmen und Datenstrukturen 1

Datenbanksysteme II Multidimensionale Indizes (Kapitel 14) Felix Naumann

Hallo Welt für Fortgeschrittene

Kapitel 6: Algorithmen der Computer-Geometrie

Algorithmen und Datenstrukturen 1

Kollisionserkennung

Stud.-Nummer: Datenstrukturen & Algorithmen Seite 1

Geometrische Algorithmen Segmentschnitt

Geometrische Algorithmen Segmentschnitt

4.4 Quadtrees. Literatur

Übungsblatt 7 - Voronoi Diagramme

Voronoi-Diagramme. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK

Boole'sches Modell <is web>

Datenbanken. Interne Datenorganisation:

B / B* - Bäume. Guido Hildebrandt Seminar Datenbanksysteme

Algorithmische Geometrie

Geometrie II. Deniz Neufeld Deniz Neufeld Geometrie II / 39

Übungen zu Multimedia-Datenbanken Aufgabenblatt 4 - Musterlösungen

5 BINÄRE ENTSCHEIDUNGS- DIAGRAMME (BDDS)

Der Branching-Operator B

Optimierung. Optimierung. Vorlesung 2 Optimierung ohne Nebenbedingungen Gradientenverfahren Thomas Brox, Fabian Kuhn

Geometrische Algorithmen Segmentschnitt. Lernmodul 7: Geo-Algorithmen und -Datenstrukturen - Segmentschnitt

Wiederholung. Objekte) Hauptkosten beim Pathtracing Ziel: Beschleunigung durch Reduktion der Schnittpunktstestzahl. Ansätze

7. Dynamische Datenstrukturen Bäume. Informatik II für Verkehrsingenieure

Geometrische Algorithmen Einige einfache Definitionen: Ist ein Punkt in einem Polygon? Punkt-in-Polygon-Problem. Das Punkt-in-Polygon-Problem

Voronoi-Diagramme INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie

Mehrdimensionale Zugriffspfade und Dateiorganisation

a) Fügen Sie die Zahlen 39, 38, 37 und 36 in folgenden (2, 3)-Baum ein:

Datenstrukturen und Algorithmen (SS 2013)

Euklidische Distanzmatrizen. Andrei Grecu

Übung zur Vorlesung Algorithmische Geometrie

B*-BÄUME. Ein Index ist seinerseits wieder nichts anderes als eine Datei mit unpinned Records.

Vorlesung Datenstrukturen

für n-elementige Punktmenge jedenfalls Ω(n log n), da mit VD die konvexe Hülle in linearer Zeit bestimmbar.

3.2. Divide-and-Conquer-Methoden

k-nächste-nachbarn-schätzung

Das Voronoi Diagramm. 1. Definition. 2. Eigenschaften. 3. Größe und Speicherung. 4. Konstruktion. 5. Verwendung

Effizienter Planaritätstest Vorlesung am

EFM-DBSCAN EIN BAUMBASIERTER CLUSTERING- ALGORITHMUS UNTER AUSNUTZUNG ERWEITERTER LEADER-UMGEBUNGEN. Philipp Egert. 08. März 2017

Vorlesung Informatik 2 Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen

Suchstrukturen. Übersicht. 8 Suchstrukturen. Allgemeines. H. Täubig (TUM) GAD SS

Wünschenswerte Eigenschaft von Suchbäumen mit n Knoten: Suchen, Einfügen, Löschen auch im schlechtesten Fall O(log n)

8. A & D - Heapsort. Werden sehen, wie wir durch geschicktes Organsieren von Daten effiziente Algorithmen entwerfen können.

Multimedia-Datenbanken im SS 2010 Einführung in MMDB

Geometrische Algorithmen

Transkript:

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