Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

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

Ähnliche Präsentationen


Präsentation zum Thema: "Adaption von K-Means Algorithmen an Datenbanken Gruppe 2 Sven März Christian Bomhardt."—  Präsentation transkript:

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

2 Ü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

3 Clusterverfahren Aufgabe: –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

4 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 Kmeans

5 Clusterverfahren für große Datenmengen Beispiel BIRCH 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} BIRCH: An Efficient Data Clustering Method for Very Large Databases 1996

6 Clusterverfahren für große Datenmengen Beispiel BIRCH 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 BIRCH: An Efficient Data Clustering Method for Very Large Databases 1996

7 Clusterverfahren für große Datenmengen Beispiel DBScan 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} A Density-Based Algorithm for Discovering Clusters in Large Spatial Databases with Noise 1996

8 Clusterverfahren für große Datenmengen Beispiel DBScan 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 A Density-Based Algorithm for Discovering Clusters in Large Spatial Databases with Noise 1996

9 Clusterverfahren für große Datenmengen Beispiel DENCLUE 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 An Efficient Approach to Clustering in Large Multimedia Databases with Noise 1998

10 Clusterverfahren für große Datenmengen Beispiel DENCLUE 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 An Efficient Approach to Clustering in Large Multimedia Databases with Noise 1998

11 Clusterverfahren für große Datenmengen Beispiel OptiGrid 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 Optimal Grid-Clustering: Towards Breaking the Curse of Dimensionality in High-Dimensional Clustering 1999

12 Clusterverfahren für große Datenmengen Beispiel OptiGrid 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 Optimal Grid-Clustering: Towards Breaking the Curse of Dimensionality in High-Dimensional Clustering 1999

13 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 , 1968

14 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 , 1999

15 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

16 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

17 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

18 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

19 Clusterverfahren für große Datenmengen Ausblick 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


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

Ähnliche Präsentationen


Google-Anzeigen