22
<is web> ISWeb - Information Systems & Semantic Web Marcin Grzegorzek [email protected] 1 7 Effiziente Algorithmen und Datenstrukturen 7.1 Hochdimensionale Indexstrukturen (a) Anfragearten (b) Baumverfahren (c) Komplexe Distanzfunktionen (d) Fluch der hohen Dimensionen (e) Signaturverfahren (f) Weitere Indexverfahren

ISWeb - Information Systems & Semantic Web Marcin Grzegorzek [email protected] 7 Effiziente Algorithmen und Datenstrukturen 7.1 Hochdimensionale Indexstrukturen

Embed Size (px)

Citation preview

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

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 1

7 Effiziente Algorithmen und Datenstrukturen

7.1 Hochdimensionale Indexstrukturen

(a) Anfragearten

(b) Baumverfahren

(c) Komplexe Distanzfunktionen

(d) Fluch der hohen Dimensionen

(e) Signaturverfahren

(f) Weitere Indexverfahren

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

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 3

Einführung

Algorithmen und Datenstrukturen für effiziente Ergbnisberechnung bzgl. der Anfrage

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

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 4

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

Algorithmen und Datenstrukturen für effiziente Ergbnisberechnung bzgl. der Anfrage

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

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 5

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

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

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 6

Anforderungen an hochdimensionale Datenstruktur und Algorithmen

Korrektheit und Vollständigkeit

skalierbar bzgl. Dimensionsanzahl

räumliche Ausdehnung der Objekte: 0 Dimensionen: Punkt 1 Dimension: Linie 2 Dimensionen: Fläche n Dimensionen: etwa Hyperwürfel

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

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 7

Sucheffizienz, also Anzahl Seitenzugriffe muss besser als bei sequentiellem Durchlauf sein

viele Anfragearten (siehe nächste Folie)

effiziente Update-Operationen

verschiedene Distanzfunktionen

speicherplatzsparend

Anforderungen an hochdimensionale Datenstruktur und Algorithmen (2)

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

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 8

Anfragearten

Nächste-Nachbarsuche Approximative Nächste-Nachbarsuche Reverse-Nächste-Nachbarsuche Bereichssuche Punktsuche Partial-Match-Suche Ähnlichkeitsverbund

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

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 9

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:

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

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 10

Nächste-Nachbarsuche graphisch

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

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 11

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

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

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 12

Voronoi-Zellen graphisch

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

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 13

KNN-Suche

die nächsten Nachbarn werden gesucht

bei gleichen Distanzen: nichtdeterministische Auswahl

Ergebnisobjekte werden aufsteigend ausgegeben

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

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 14

ist üblicherweise so klein, dass das Ergebnis in den Hauptspeicher passt→ Hauptspeichersortierung

ansonsten: Ergebnisobjekt sukzessive abholen (getNext-Semantik / ranking-Anfrage)

KNN-Suche (2)

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

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 15

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

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

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 17

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

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

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 18

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

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

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 19

Bereichssuche graphisch

Straßenplanung im Katasteramt:

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

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 20

Punktsuche

Suche anhand eines gegebenen Feature-Objekts

Test auf Enthaltensein (exakte Überdeckung)

Punktsuche in MMDB ist relativ selten

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

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 21

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

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

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 22

Partial-Match-Suche graphisch

Suchbereich ist senkrechte Linie (Übereinstimmung in nur einer Dimension)

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

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 23

Ähnlichkeitsverbund

Operation auf zwei Mengen von Feature-Objekten

Verbund findet Paare, deren Distanz kleiner als vorgegebener Schwellenwert ist

Selbstverbund: dieselbe Menge zweimal

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

<is web>

ISWeb - Information Systems & Semantic Web

Marcin [email protected] 24

Ähnlichkeitsverbund graphisch