Adaption von K-Means Algorithmen an Datenbanken

Slides:



Advertisements
Ähnliche Präsentationen
Der R-Baum Richard Göbel.
Advertisements

Grundlagen des A*-Algorithmus und Anwendung in der Routenplanung
Der k-d-Baum Richard Göbel.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (26-Graphenalgorithmen: Wiederholung und Übung) Prof. Th. Ottmann.

Zerlegung von Graphen.
SST - Sequence Search Tree
Kapitel 6: Klassifizierung von Sortiertechniken
3. Kapitel: Komplexität und Komplexitätsklassen
Wasserfall-Ansätze zur Bildsegmentierung
Genetische Algorithmen für die Variogrammanpassung
A Model of Saliency-Based Visual Attention for Rapid Scene Analysis
Übersicht DIALIGN = DIagonal ALIGNment
Sortierverfahren Richard Göbel.
FH-Hof Deadlocks Richard Göbel. FH-Hof Deadlock - Definition Menge von Prozessen ist an einem Deadlock beteiligt: wenn jeder Prozess in dieser Menge auf.
Sortierverfahren Richard Göbel.
Der R-Baum Richard Göbel.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (17 – Bäume: Grundlagen und natürliche Suchbäume) Prof. Th. Ottmann.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (21 – Kürzeste Wege) T. Lauer.
Algorithmen und Datenstrukturen
Konfidenzintervalle für Parameter
Demoprogramm: Clustering Eine graphische Demonstration verschiedener Clusteringalgorithmen anhand des Clusterings von Punkten im zweidimensionalen Raum.
R-tree, R*-tree und R+-tree
Globaler Ansatz Hough-Transformation
Algorithmen zur Unterstützung von Immersive Gaming
Minimum Spanning Tree: MST
Modellierung von Baumstrukturen mit einem einzigen Polygonnetz

Rekursion Richard Göbel.
Seminar: Informationstechnik in der Medizin Universität Dortmund Fakultät für Elektrotechnik und Informationstechnik Lehrstuhl für Kommunikationstechnik.
Christian Schulz, Marc Thielbeer, Sebastian Boldt
Self Organizing Tree Algorithm
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Abschlussvortrag zur Studienarbeit
Connectomics Patrick Stern Stephan Weinwurm.
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Globale Interpolations- und Prädiktionsverfahren
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Hartmut Klauck Universität Frankfurt SS
Shape Similarity 27. Februar 2006 Michael Keller.
Adaption von K-Means Algorithmen an Datenbanken
… oder wie finde ich den Weg
LOD Levels of Detail Oliver Gassner Christian Troger.
Informatik Datenstruktur Graph 3.3 Durchlaufen von Graphen
Statistische Methoden in der Wirtschafts- und Sozialgeographie
SOTA Andrej Gisbrecht
Das Traveling Salesman Problem (TSP)
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II 6. Sem. Vorlesung Mai 2000 Konstruktion des Voronoi-Diagramms.
Die Clusteranalyse Zielsetzung Datenreduktion: Zusammenfassung einer Vielzahl von Objekten oder Variablen zu Gruppen mit möglichst ähnlichem Informationsgehalt.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung Datenstrukturen für den Algorithmus von.
Routenplanung querfeldein - Geometric Route Planning
Christian Scheideler WS 2008
Grundlagen der Positionsbestimmung mit Partikelfiltern
- Studienarbeit - Entwurf und Umsetzung von kombinierten Anfragen für die Ähnlichkeitssuche auf digitalen Bilder auf der Basis von Regionen und Features.
Institut für Informationssysteme Technische Universität Braunschweig Institut für Informationssysteme Technische Universität Braunschweig Verdrängung von.
Effiziente und effektive Clustering-Methode: CLARANS Seminar zu Datenbanksystemen im SS 2007 Name: Chen Jin Betreuer: Christian Stahlhut 10.Juli 2007.
CL Tree MW 31.1 Business Intelligence Wintersemester 2015 / 2016 Stanislav Prokupetz.
PCA Principal Component Analysis. Gliederung PCA – Warum eigentlich? PCA – Was ist zu tun? Was passiert eigentlich? Anwendungen Zusammenfassung.
Spärliche Kodierung von Videos natürlicher Szenen Vortragender: Christian Fischer.
Rechen- und Kommunikationszentrum (RZ) Selektionsstrategien auf Graphstrukturen Sven Porsche Seminarvorträge Aachen.
Clusteranalyse Wege und Arten Entstanden im Rahmen der Seminararbeit für WS09/10 Betreuer: Prof. Jobst Hoffmann Dr. Tim Hiddemann Aachen, Januar 2010.
Dr. Wolfram Amme, Automatische Speicherverwaltung, Informatik II, FSU Jena, SS Automatische Speicherverwaltung.
 Präsentation transkript:

Adaption von K-Means Algorithmen an Datenbanken Gruppe 2 Sven März Christian Bomhardt

Übersicht Hirachische und dichtebasierte Clusterverfahren Grundgedanken kMeans Birch DBScan DenClue OptiGrid Partitionierende Clusterverfahren Chain Clustering Robust Clustering (Jolion) PAM Clara Clarans Eigene Entwicklung (Varianz Cluster) Ausblick

Clusterverfahren Aufgabe: Hierachische Verfahren Bildung von homogenen Gruppen (Cluster) in einer Datenmenge Hierachische Verfahren Aufbau eines Dendogramms agglomerative Verfahren: Zusammenführen der Klassen mit dem geringsten Abstand Unterscheidung durch die Definition des Abstandes Beispiel: Single Linkage Problem: Zu viele Vergleich- und Distanzberechnungsoperationen Ziel: Effektivere Clustermethoden

Clusterverfahren für große Datenmengen Beispiel Kmeans Partitionierendes Verfahren Verfahren Vorgabe der Clusterzentren Zuweisung jedes Objektes zu einem Clusterzentrum Neuberechnung der Clusterzentren (Mittelwert) if (Neue Zentren != Alten Zentren) { neue Zuweisung } else { lokales Optimum gefunden } Vorteile einfach zu implementieren Nachteile Algorithmus findet nur lokales Optimum, abhängig von Startclustern Anzahl der Cluster muß bekannt sein Cluster nur in elliptischer Form nicht für große Datenmengen geeignet => Vergleich mit neueren Ansätzen

Clusterverfahren für große Datenmengen Beispiel BIRCH BIRCH: An Efficient Data Clustering Method for Very Large Databases 1996 Repräsentation der Klassen durch 3 Attribute kompakte Darstellung der Daten schneller Vergleich und Abstandsberechnung CF (Clustering Feature) N Anzahl der Datenpunkte im Cluster LS Lineare Summe der Datenpunkte SS Quadratsumme der Datenpunkte Aufbau einer Baumstruktur Lese Datensatz aus der Datenbank und vergleiche mit Knoten im Baum. Gehe den Pfad mit den geringsten Abständen bis zu einem Blatt if (Distanz < T) { füge Datensatz hinzu} else {Erzeuge neues Blatt}

Clusterverfahren für große Datenmengen Beispiel BIRCH BIRCH: An Efficient Data Clustering Method for Very Large Databases 1996 Clustern der Baumstruktur beliebige Clustermethode möglich Hirachisches Verfahren kann direkt aufgesetzt werden Vorteile Datenbank wird nur einmal ausgelesen geringe Datenhaltung CF Baum genau in Speichergröße Nachteile Knoten des Baumes sind spherische Cluster Probleme bei großem Rauschen Verwendungsmöglichkeiten Aufbau eines Baumes für Kmeans Repräsentation der Daten durch wenige Attribute

Clusterverfahren für große Datenmengen Beispiel DBScan A Density-Based Algorithm for Discovering Clusters in Large Spatial Databases with Noise 1996 Dichtebasiertes Verfahren Cluster sind Regionen mit hoher Dichte Anzahl der Datensätze in der Umgebung eines Punktes > vorgegebene Mindestdichte Optimierung der Umgebungsanfragen über die Verwendung einer R*-Tree Datenstruktur Repräsentation eines Objektes durch ein umschließendes Rechteck Objekte werden in größeren Rechtecken zusammengeführt Durchführung untersuche alle nicht markierten Datensätze if (Umgebungsdichte>Mindesdichte) { markiere Punkt und expandiere Cluster}

Clusterverfahren für große Datenmengen Beispiel DBScan A Density-Based Algorithm for Discovering Clusters in Large Spatial Databases with Noise 1996 Vorteile findet verschieden strukturierte Cluster benötigt nur einen kompletten Scan Zugriff auf Teile der Datenbank durch R-Tree sehr schnell Nachteile Überlappende Cluster werden schnell zusammengefasst Verwendungsmöglichkeiten R-Tree für den schnellen Zugriff auf Teilstrukturen

Clusterverfahren für große Datenmengen Beispiel DENCLUE An Efficient Approach to Clustering in Large Multimedia Databases with Noise 1998 Basierend auf einer Dichtefunktion Summe der Gaussfunktion der Abstände Einteilung in Hyperräume (Rasterfeld) Dichtefunktion für jeden Raum mit einer bestimmten Dichte lokale Maxima sind Clusterzentren Objekte werden dem nächsten Clusterzentrum zugeordnet Nächstes Clusterzentrum über Gradientenverfahren Zwischenpunkte werden auch dem Clusterzentrum zugeordnet

Clusterverfahren für große Datenmengen Beispiel DENCLUE An Efficient Approach to Clustering in Large Multimedia Databases with Noise 1998 Vorteile Verschiedene Dichtefunktionen einsetzbar Vielfaches schneller als vergleichbare DBScan (45x) Zusammenhängende Cluster können getrennt werden Nachteile keine einfache Umsetzung der Dichtefunktion Probleme bei hohen Dimensionen Verwendungsmöglichkeiten Einteilung in Teilräume Lokale Maxima der Dichtefunktionen als Startlösung für Kmeans

Clusterverfahren für große Datenmengen Beispiel OptiGrid Optimal Grid-Clustering: Towards Breaking the Curse of Dimensionality in High-Dimensional Clustering 1999 Verbesserung der Rasterfeldeinteilung Hohe Dimensionen schlecht für Rasterfelder Cluster werden verschiedenen Hyperräumen zugewiesen können im Hyperraum nicht entdeckt werden 2 Bedingungen für einen Hyperraum Felder mit geringer Dichte Cluster sollen gut getrennt werden Projektionsfunktion zur Berechnung der Dichte in Räumen Ideale Dichteberechnung Trennung der Regionen mit geringer und hoher Dichte Ideale Hyperräume

Clusterverfahren für große Datenmengen Beispiel OptiGrid Optimal Grid-Clustering: Towards Breaking the Curse of Dimensionality in High-Dimensional Clustering 1999 Einsatzmöglichkeit bei Clusterverfahren die eine Rastereinteilung benötigen Vorteile Sehr gute Eigenschaften in hohen Dimensionen und bei verrauschten Daten eignet sich für verschiedene Verfahren Nachteile Hohe Kosten für den Aufbau des Rasterfeldes Keine einfache Implementierung Verwendungsmöglichkeiten Einteilung in Teilräume auch in hohen Dimensionen Mittelwert der Teilräume als Startwert für Kmeans

Clusterverfahren für große Datenmengen Beispiel Chain Clustering Verfahrensbeschreibung Algorithmus arbeitet inkrementell mit Teilmengen Naheliegende Cluster der Teilmengen werden verschmolzen Immer noch mehr Cluster als gewünscht => eliminiere kleine Cluster Vorteile Wenig Parameter schnell Nachteile: Ergebnis hängt von der Reihenfolge der Vektoren ab Weitere Details: G. Nagy, “State of the art in pattern recognition”, Proc. IEEE, vol. May, no. 5, pp. 836-861, 1968

Verfahrensbeschreibung Clusterverfahren für große Datenmengen Beispiel Robust Clustering mit MVE (Jolion-Algo) Verfahrensbeschreibung Algorithmus sucht Cluster mit größter Datendichte für verschiedene Clustergrößen Der Cluster mit dem größten Signifikanz-Level wird übernommen Breche ab, sobald der kleinste Cluster größer als die verbliebene Datenbasis ist Vorteile: Die Anzahl der Cluster wird nicht benötigt Robust gegen verrauschte Daten Nachteile: Sehr rechenaufwändig A priori-Wissen über die Clusterform ist notwendig Weitere Details: J. M. Jolion, P. Meer and S. Bataouche, “Robust clustering with applications in computer vision”, IEEE Trans. Patt. Anal. and Machie Intell. vol. 13, no. 8, pp. 791-801, 1999

Verfahrensbeschreibung Clusterverfahren für große Datenmengen Beispiel PAM(Partitioning Around Medoids) Verfahrensbeschreibung PAM sucht für jeden Cluster einen Repräsentanten (Medoid) Medoid soll zentral im Cluster liegen Verfahren startet mit willkürlichen Medoiden Mit Signifikanz-Fkt wird geprüft, wie stark ein Tauschen eines Medoids die Clusterqualität verbessert Vorteile Unempfindlich gegenüber Ausreißern Das Ergebnis hängt nicht von der Reihenfolge der Datensätze der Datenbasis ab findet globales Maximum Nachteile Umständlich zu Implementieren Für große Datenmengen mit vielen Clustern zu langsam Weitere Details: L. Kaufman and P.J. Rousseeuw. (1990) Finding Groups in Data: an Introduction to Cluster Analysis, John Wiley & Sohns

Verfahrensbeschreibung Clusterverfahren für große Datenmengen Beispiel CLARA(Clustering Large Applications) Verfahrensbeschreibung Verfahren wendet PAM 5 mal auf kleinen Samples an Berechnet die Clustergüte der gefundenen Klassifizierung über allen Datensätzen Beste Klassifizierung ist Ergebnis Vorteile: Algorithmus ist auch für große Datenmengen geeignet Nachteile: schwierig zu implementieren Neues Problem: Wie werden „gute“ Datensamples gezogen Weitere Details: L. Kaufman and P.J. Rousseeuw. (1990) Finding Groups in Data: an Introduction to Cluster Analysis, John Wiley & Sohns

Verfahrensbeschreibung Clusterverfahren für große Datenmengen Beispiel CLARANS(RANdomized search) Verfahrensbeschreibung Verfahren konstruiert Graph mit möglichen Clustern Zwei Knoten sind Nachbarn, wenn sie sich in nur einem Objekt unterscheiden Für einen Startknoten(=Cluster) wird die Güte ausgerechnet Mit einem Branch & Bound-ähnlichen Verfahren wird der Graph nach dem Optimum durchsucht (Gütefkt wird maximiert) Vorteile: Algorithmus ist für große Datenmengen geeignet findet globales Optimum Nachteile: CLARA manchmal schneller (kleines k, großes n) Weitere Details: L. Kaufman and P.J. Rousseeuw. (1990) Finding Groups in Data: an Introduction to Cluster Analysis, John Wiley & Sohns

Clusterverfahren für große Datenmengen Beispiel Varianz-Cluster Verfahrensbeschreibung verdichtet alle Werte eines Objektes auf einen Gesamtparameter Je größer die Varianz eines Wertes, desto größer das Gewicht Unterteilt die Daten nach dem Gesamtparameter in Cluster Vorteile: Anzahl der Cluster muß nicht vorgegeben werden Einfach zu implementieren Auch für große Datenmengen anwendbar Ergebnis unabhängig von Reihenfolge der Datensätze Nachteile: Verfahren ist noch nicht getestet, nur Idee Weitere Details: Christian Bomhardt, Varianz-Cluster

Clusterverfahren für große Datenmengen Ausblick Implementieren von kMeans mit Cursor-Interface Implementieren von kMeans mit SQL-Befehlen Implementieren von kMeans mit UDF-Befehlen Vergleichen der Perfomance der verschiedenen Varianten