Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Adaption von K-Means Algorithmen an Datenbanken

Ähnliche Präsentationen


Präsentation zum Thema: "Adaption von K-Means Algorithmen an Datenbanken"—  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: 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

4 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

5 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}

6 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

7 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}

8 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

9 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

10 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

11 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

12 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

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

15 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

16 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

17 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

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
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"

Ähnliche Präsentationen


Google-Anzeigen