Clusteranalyse

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
QS-Informatik

Dieser Artikel wurde wegen inhaltlicher Mängel auf der Qualitätssicherungsseite der Redaktion Informatik eingetragen. Dies geschieht, um die Qualität der Artikel aus dem Themengebiet Informatik auf ein akzeptables Niveau zu bringen. Hilf mit, die inhaltlichen Mängel dieses Artikels zu beseitigen, und beteilige dich an der Diskussion! (+)

Unter Clusteranalyse (Clustering-Algorithmus, gelegentlich auch: Ballungsanalyse) versteht man Verfahren zur Entdeckung von Ähnlichkeitsstrukturen in (großen) Datenbeständen. Die so gefundenen Gruppen von „ähnlichen“ Objekten werden als Cluster bezeichnet, die Gruppenzuordnung als Clustering. Die gefundenen Ähnlichkeitsgruppen können graphentheoretisch, hierarchisch, partitionierend oder optimierend sein. Die Clusteranalyse ist eine wichtige Disziplin des Data-Mining, dem Analyseschritt des Knowledge Discovery in Databases Prozesses.

Bei der Clusteranalyse ist das Ziel neue Gruppen in den Daten zu identifizieren (im Gegensatz zur Klassifikation, bei der Daten bestehenden Klassen zugeordnet werden). Man spricht von einem „uninformierten Verfahren“, da es nicht auf Klassen-Vorwissen angewiesen ist. Diese neuen Gruppen können anschließend beispielsweise zur automatisierten Klassifizierung, zur Erkennung von Mustern in der Bildverarbeitung oder zur Marktsegmentierung eingesetzt werden (oder in beliebigen anderen Verfahren, die auf ein derartiges Vorwissen angewiesen sind).

Die zahlreichen Algorithmen unterscheiden sich vor allem in ihrem Ähnlichkeits- und Gruppenbegriff, ihrem Cluster-Modell, ihrem algorithmischen Vorgehen (und damit ihrer Komplexität) und der Toleranz gegenüber Störungen in den Daten. Ob das von einem solchen Algorithmus generierte „Wissen“ nützlich ist, kann jedoch in der Regel nur ein Experte beurteilen. Ein Clusteringalgorithmus kann unter Umständen vorhandenes Wissen reproduzieren (beispielsweise Personendaten in die bekannten Gruppen „männlich“ und „weiblich“ unterteilen), oder auch für den Anwendungszweck nicht hilfreiche Gruppen generieren. Die gefundenen Gruppen lassen sich oft auch nicht verbal beschreiben (z. B. „männliche Personen“), gemeinsame Eigenschaften werden in der Regel erst durch eine nachträgliche Analyse identifiziert. Bei der Anwendung von Clusteranalyse ist es daher oft notwendig, verschiedene Verfahren und verschiedene Parameter zu probieren, die Daten vorzuverarbeiten und beispielsweise Attribute auszuwählen oder wegzulassen.

Beispiel[Bearbeiten]

Dieser Artikel oder Abschnitt bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf mit, ihn zu verbessern, und entferne anschließend diese Markierung.

Angewendet auf einen Datensatz von Fahrzeugen könnte ein Clustering-Algorithmus (und eine nachträgliche Analyse der gefundenen Gruppen) beispielsweise folgende Struktur liefern:

 
 
 
 
 
 
 
Fahrzeuge
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Fahrräder
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
LKW
 
PKW
 
Rikschas
 
Rollermobile
 

Dabei ist Folgendes zu beachten:

  • Der Algorithmus selbst liefert keine Interpretation („LKW“) der gefundenen Gruppen. Hierzu ist eine separate Analyse der Gruppen notwendig.
  • Ein Mensch würde eine Fahrradrikscha als Untergruppe der Fahrräder ansehen. Für einen Clusteringalgorithmus aber sind 3 Räder oft ein signifikanter Unterschied, den sie mit einem Dreirad-Rollermobil teilen.
  • Die Gruppen sind oftmals nicht „rein“, es können also beispielsweise kleine LKW in der Gruppe der PKW sein.
  • Es treten oft zusätzliche Gruppen auf, die nicht erwartet wurden („Polizeiautos“, „Cabrios“, „rote Autos“, „Autos mit Xenon-Scheinwerfern“).
  • Manche Gruppen werden nicht gefunden, beispielsweise „Motorräder“ oder „Liegeräder“.
  • Welche Gruppen gefunden werden, hängt stark vom verwendeten Algorithmus, Parametern und verwendeten Objekt-Attributen ab.
  • Oft wird auch nichts (sinnvolles) gefunden.
  • In diesem Beispiel wurde nur bekanntes Wissen (wieder-)gefunden – als Verfahren zur „Wissensentdeckung“ ist die Clusteranalyse hier also gescheitert.

Geschichte[Bearbeiten]

Historisch gesehen stammt das Verfahren aus der Taxonomie in der Biologie, wo über eine Clusterung von verwandten Arten eine Ordnung der Lebewesen ermittelt wird. Allerdings wurden dort ursprünglich keine automatischen Berechnungsverfahren eingesetzt. Inzwischen können zur Bestimmung der Verwandtschaft von Organismen unter anderem ihre Gensequenzen verglichen werden. Siehe auch: Kladistik

Prinzip/Funktionsweise[Bearbeiten]

Mathematische Modellierung[Bearbeiten]

Die Eigenschaften der zu untersuchenden Objekte werden mathematisch als Zufallsvariablen aufgefasst. Sie werden in der Regel in Form von Vektoren als Punkte in einem Vektorraum dargestellt, deren Dimensionen die Eigenschaftsausprägungen des Objekts bilden. Bereiche, in denen sich Punkte anhäufen (Punktwolke), werden Cluster genannt. Bei Streudiagrammen dienen die Abstände der Punkte zueinander oder die Varianz innerhalb eines Clusters als sogenannte Proximitätsmaße, welche die Ähnlichkeit bzw. Unterschiedlichkeit zwischen den Objekten zum Ausdruck bringen.

Ein Cluster kann auch als eine Gruppe von Objekten definiert werden, die in Bezug auf einen berechneten Schwerpunkt eine minimale Abstandssumme haben. Dazu ist die Wahl eines Distanzmaßes erforderlich. In bestimmten Fällen sind die Abstände (bzw. umgekehrt die Ähnlichkeiten) der Objekte untereinander direkt bekannt, so dass sie nicht aus der Darstellung im Vektorraum ermittelt werden müssen.

Grundsätzliche Vorgehensweise[Bearbeiten]

In einer Gesamtmenge/gruppe mit unterschiedlichen Objekten, werden die Objekte, die sich ähnlich sind, zu Gruppen (Clustern) zusammengefasst.

Als Beispiel sei folgende Musikanalyse gegeben. Die Werte ergeben sich aus dem Anteil der Musikstücke, die der Nutzer pro Monat online kauft.

Person 1 Person 2 Person 3
Pop 2 1 8
Rock 10 8 1
Jazz 3 3 1

In diesem Beispiel würde man die Personen intuitiv in zwei Gruppen einteilen. Gruppe1 besteht aus Person 1&2 und Gruppe 2 besteht aus Person 3. Das würden auch die meisten Clusteralgorithmen machen. Dieses Beispiel ist lediglich aufgrund der gewählten Werte so eindeutig, spätestens mit näher zusammenliegenden Werten und mehr Variablen (hier Musikrichtungen) und Objekten (hier Personen), ist leicht vorstellbar, dass die Einteilung in Gruppen nicht mehr so trivial ist.

Etwas genauer und abstrakter ausgedrückt: Die Objekte einer heterogenen (beschrieben durch unterschiedliche Werte ihrer Variablen) Gesamtmenge werden mit Hilfe der Clusteranalyse zu Teilgruppen (Cluster/Segmente) zusammengefasst, die in sich möglichst homogen (die Unterschiede der Variablen möglichst gering) sind. In unserem Musikbeispiel kann die Gruppe aller Musikhörer (eine sehr heterogene Gruppe) in die Gruppen der Jazzhörer, Rockhörer, Pophörer, etc. (jeweils relativ homogen) unterteilt werden bzw. werden die Hörer mit ähnlichen Präferenzen zu der entsprechende Gruppe zusammengefasst.

Eine Clusteranalyse (z. B. bei der Marktsegmentierung) erfolgt dabei in folgenden Schritten:

Schritte zur Clusterbildung:

  1. Variablenauswahl: Auswahl (und Erhebung) der für die Untersuchung geeigneten Variablen. Sofern die Variablen der Objekte/Elemente noch nicht bekannt/vorgegeben sind, müssen alle für die Untersuchung wichtigen Variablen bestimmt und anschließend ermittelt werden.
  2. Proximitätsbestimmung: Wahl des Proximitätsmaßes und Bestimmung der Distanz- bzw. Ähnlichkeitswerte (je nach Proximitätsmaß) zwischen den Objekten über ein geeignetes Proximitätsmaß. Abhängig von der Art der Variablen bzw. der Skalenart der Variablen wird eine entsprechende Distanzfunktion zur Bestimmung des Abstandes (Distanz) zweier Elemente oder eine Ähnlichkeitsfunktion zur Bestimmung der Ähnlichkeit verwendet. Die Variablen werden zunächst einzeln verglichen und aus der Distanz der einzelnen Variablen die Gesamtdistanz (oder Ähnlichkeit) berechnet. Die Funktion zur Bestimmung von Distanz oder Ähnlichkeit wird auch Proximitätsmaß genannt. Der durch ein Proximitätsmaß ermittelte Distanz- bzw. Ähnlichkeitwert nennt sich Proximität. Werden alle Objekte miteinander verglichen, ergibt sich eine Proximitätsmatrix, welche jeweils zwei Objekten eine Proximität zuweist.
  3. Clusterbildung: Bestimmung und Durchführung eines/der geeigneten Clusterverfahrens, um anschließend mit Hilfe des/dieser Verfahrens Gruppen/Cluster bilden zu können (die Proximitätsmatrix wird hierdurch reduziert). Im Regelfall werden hierbei mehrere Verfahren kombiniert, z. B.:
  • Finden von Ausreißern durch das Single-Linkage Verfahren (hierarchisches Verfahren)
  • Bestimmung der Clusterzahl durch das Ward-Verfahren (hierarchisches Verfahren)
  • Bestimmung der Clusterzusammensetzung durch das Austauschverfahren (partitionierendes Verfahren)

Weitere Schritte der Clusteranalyse:

  1. Bestimmung der Clusterzahl durch Betrachtung der Varianz innerhalb und zwischen den Gruppen. Hier wird bestimmt, wie viele Gruppen tatsächlich gebildet werden, denn bei der Clusterung selbst ist keine Abbruchbedingung vorgegeben. z. B. wird bei einem agglomerativen Verfahren folglich so lange fusioniert, bis nur noch eine Gesamtgruppe vorhanden ist.
  2. Interpretation der Cluster (abhängig von den inhaltlichen Ergebnissen, z. B. durch t-Wert)
  3. Beurteilung der Güte der Clusterlösung (Bestimmung der Trennschärfe der Variablen, Gruppenstabilität)

Unterschiedliche Proximitätsmaße/Skalen[Bearbeiten]

Die Skalen bezeichnen den Wertebereich, den die betrachtete(n) Variable(n) des Objektes annehmen kann. Je nachdem welche Art von Skala vorliegt, muss man ein passendes Proximitätsmaß verwenden. Es gibt drei Hauptkategorien von Skalen:

  • Binäre Skalen
die Variable kann zwei Werte z. B. 0 oder 1 annehmen z. B. männlich/weiblich.
Verwendete Proximitätsmaße (Beispiele):
  • Nominale Skalen
die Variable kann unterschiedliche Werte annehmen um eine qualitative Unterscheidung zu treffen, z. B. ob Pop, Rock oder Jazz bevorzugt wird.
Verwendete Proximitätsmaße (Beispiele):
  • Metrische Skalen
die Variable nimmt einen Wert auf einer vorher festgelegten Skala eine quantitative Aussage zu treffen z. B. wie gerne eine Person Pop auf einer Skala von 1 bis 10 hört.
Verwendete Proximitätsmaße (Beispiele):

Formen der Gruppenbildung (Gruppenzugehörigkeit)[Bearbeiten]

Hauptartikel: Cluster (Informatik)

Es sind drei unterschiedliche Formen der Gruppenbildung (Gruppenzugehörigkeit) möglich. Bei den nichtüberlappenden Gruppen wird jedes Objekt nur einer Gruppe (Segment,Cluster) zugeordnet, bei den überlappenden Gruppen kann ein Objekt mehreren Gruppen zugeordnet werden, und bei den Fuzzygruppen gehört ein Element jeder Gruppe mit einem bestimmten Grad des Zutreffens an.

 
 
 
 
 
Nichtüberlappend
 
 
 
 
 
 
 
Formen der Gruppenbildung
 
 
Überlappend
 
 
 
 
 
 
 
 
 
 
 
 
Fuzzy
 


Man unterscheidet zwischen „harten“ und „weichen“ Clusteringalgorithmen. Harte Methoden (z. B. k-means, Spectral Clustering, Kernel PCA) ordnen jeden Datenpunkt genau einem Cluster zu, wohingegen bei weichen Methoden (z. B. EM-Algorithmus mit mixture-of-Gaussians model) jedem Datenpunkt für jeden Cluster ein Grad zugeordnet wird, mit der dieser Datenpunkt in diesem Cluster zugeordnet werden kann. Weiche Methoden sind insbesondere dann nützlich, wenn die Datenpunkte relativ homogen im Raum verteilt sind und die Cluster nur als Regionen mit erhöhter Datenpunktdichte in Erscheinung treten, d.h. wenn es z. B. fließende Übergänge zwischen den Clustern oder Hintergrundrauschen gibt (harte Methoden sind in diesem Fall unbrauchbar).

Unterscheidung der Clusterverfahren[Bearbeiten]

Clusterverfahren lassen sich in graphentheoretische, hierarchische, partitionierende, und optimierende Verfahren sowie in weitere Unterverfahren einteilen.

Diese Klassifikation bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf mit, ihn zu verbessern, und entferne anschließend diese Markierung.
  • Partitionierende Verfahren
verwenden eine gegebene Partitionierung und ordnen die Elemente durch Austauschfunktionen um, bis die verwendete Zielfunktion ein Optimum erreicht. Zusätzliche Gruppen können jedoch nicht gebildet werden, da die Anzahl der Cluster bereits am Anfang festgelegt wird (vgl. hierarchische Verfahren).
  • Hierarchische Verfahren
gehen von der feinsten (agglomerativ bzw. bottom-up) bzw. gröbsten (divisiv bzw. top-down) Partition aus (vgl. Top-down und Bottom-up). Die gröbste Partition entspricht der Gesamtheit aller Elemente und die feinste Partition enthält lediglich ein Element bzw. jedes Element bildet seine eigene Gruppe/Partition. Durch Aufteilen bzw. Zusammenfassen lassen sich anschließend Cluster bilden. Einmal gebildete Gruppen können nicht mehr aufgelöst oder einzelne Elemente getauscht werden (vgl. partitionierende Verfahren). Agglomerative Verfahren kommen in der Praxis (z. B. bei der Marktsegmentierung im Marketing) sehr viel häufiger vor.
 
 
 
 
 
graphentheoretisch
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
divisiv
 
 
 
 
 
 
 
hierarchisch
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
agglomerativ
 
Clusterverfahren
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Austauschverfahren
 
 
 
 
 
 
 
partitionierend
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
iterierte Minimaldistanzverfahren
 
 
 
 
 
 
optimierend
 
 
 
 
 


Zu beachten ist, dass man noch diverse weitere Verfahren und Algorithmen unterscheiden kann, unter anderem überwachten (supervised) und nicht-überwachten (unsupervised) Algorithmen oder modellbasierte Algorithmen, bei denen eine Annahme über die zugrundeliegende Verteilung der Daten gemacht wird (z. B. mixture-of-Gaussians model).

Algorithmen/Verfahren[Bearbeiten]

Graphentheoretische Cluster[Bearbeiten]

DBSCAN – Dichteverbundene Cluster[Bearbeiten]

Hauptartikel: DBSCAN

Grundlagen[Bearbeiten]

Bei dichtebasiertem Clustering werden Cluster als Objekte in einem d-dimensionalen Raum betrachtet, welche dicht beieinander liegen, getrennt durch Gebiete mit geringerer Dichte.

Grundbegriffe[Bearbeiten]

  1. Ein Objekt o ∈ O heißt Kernobjekt, wenn gilt: |Nε(o)| ≥ MinPts, wobei Nε(o) = {o’ ∈ O | dist(o, o’) ≤ ε}.
  2. Ein Objekt p ∈ O ist direkt dichte-erreichbar von q ∈ O bzgl. ε und MinPts, wenn gilt: p ∈ Nε(q) und q ist ein Kernobjekt in O.
  3. Ein Objekt p ist dichte-erreichbar von q, wenn es eine Kette von direkt erreichbaren Objekten zwischen q und p gibt.
  4. Zwei Objekte p und q sind dichte-verbunden, wenn sie beide von einem dritten Objekt o aus dichte-erreichbar sind.
  5. Ein Cluster C bzgl. ε und MinPts ist eine nicht-leere Teilmenge von O, für die die folgenden Bedingungen erfüllt sind:
    • Maximalität: ∀ p, q ∈ O: wenn p ∈ C und q dichte-erreichbar von p ist, dann ist auch q ∈ C.
    • Verbundenheit: ∀ p, q ∈ C: p ist dichte-verbunden mit q.

Eine wichtige Erweiterung von DBSCAN ist der Algorithmus OPTICS, der auch Cluster unterschiedlicher Dichte erkennen kann, ein hierarchisches Ergebnis liefert, und eine visuelle Evaluierung erlaubt.

Cliquen und Zusammenhangskomponenten[Bearbeiten]

Zwei Extreme bei der Clusterung in Netzwerken bilden die Einteilung in Zusammenhangskomponenten (Single Link) und in Cliquen.

Hierarchische Clusterverfahren[Bearbeiten]

Als hierarchische Clusteranalyse bezeichnet man eine bestimmte Familie von distanzbasierten Verfahren zur Clusteranalyse (Strukturentdeckung in Datenbeständen). Cluster bestehen hierbei aus Objekten, die zueinander eine geringere Distanz (oder umgekehrt: höhere Ähnlichkeit) aufweisen als zu den Objekten anderer Cluster. Man kann die Verfahren in dieser Familie unterscheiden nach den verwendeten Distanz- bzw. Proximitätsmaßen (zwischen Objekten, aber auch zwischen ganzen Clustern) und nach ihrer Berechnungsvorschrift.

Untergliedert man nach der Berechnungsvorschrift, so unterscheidet man zwei wichtige Typen von Verfahren:

  • die divisiven Clusterverfahren, in dem zunächst alle Objekte als zu einem Cluster gehörig betrachtet werden und dann schrittweisen der Cluster in immer kleinere Cluster aufgeteilt wird bis jeder Cluster nur noch aus einem Objekt besteht. (Auch bezeichnet als „Top-down-Verfahren“)
  • die agglomerativen Clusterverfahren, in dem zunächst jedes Objekt einen Cluster bildet und dann schrittweisen die Cluster in immer größere Cluster zusammengefasst werden bis alle Objekte zu einem Cluster gehören. (Auch bezeichnet als „Bottom-up-Verfahren“)

Für beide Verfahren gilt: einmal gebildete Cluster können nicht mehr verändert oder einzelne Objekte getauscht werden. Es wird die Struktur entweder stets nur verfeinert („divisiv“) oder nur verallgemeinert („agglomerativ“), so dass eine strikte Cluster-Hierarchie entsteht. An der entstandenen Hierarchie kann man nicht mehr erkennen, wie sie berechnet wurde.

Partitionierende Clusterverfahren[Bearbeiten]

k-means-Algorithmus[Bearbeiten]

Hauptartikel: K-Means-Algorithmus

Beim k-means Algorithmus wird die Anzahl k von Clustern vor dem Start festgelegt. Eine Funktion zur Berechnung des Abstands zweier Objekte muss gegeben und kompatibel zur Mittelwertbildung sein.

Der Algorithmus läuft folgendermaßen ab:

  1. Initialisierung: (zufällige) Auswahl von k Clusterzentren
  2. Zuordnung: Jedes Objekt wird dem ihm am nächsten liegenden Clusterzentrum zugeordnet
  3. Neuberechnung: Es werden für jeden Cluster die Clusterzentren neu berechnet
  4. Wiederholung: Falls sich nun die Zuordnung der Objekte ändert, weiter mit Schritt 2, sonst Abbruch
Eigenheiten k-means-Algorithmus[Bearbeiten]
  • Der k-means-Algorithmus liefert für unterschiedliche Startpositionen der Clusterzentren möglicherweise unterschiedliche Ergebnisse.
  • Es muss k geeignet gewählt werden, und die Qualität des Ergebnisses hängt stark von den Startpositionen ab.
  • Es kann sein, dass ein Cluster in einem Schritt leer bleibt und somit (mangels Berechenbarkeit eines Clusterzentrums) nicht mehr gefüllt werden kann.
  • Ein optimales Clustering zu finden gehört zur Komplexitätsklasse NP. Der k-means Algorithmus findet nicht notwendigerweise die optimale Lösung, ist aber sehr schnell.

Um diese Probleme zu umgehen, startet man den k-means-Algorithmus einfach neu in der Hoffnung, dass beim nächsten Lauf durch andere zufällige Clusterzentren ein anderes Ergebnis geliefert wird. Wegen der obigen theoretischen Unzulänglichkeiten gilt der k-means-Algorithmus als „quick’n’dirty“-Heuristik, weil er dennoch oft brauchbare Resultate liefert.

Erweiterungen und Spezialfälle[Bearbeiten]

Erweiterungen des k-means-Algorithmus sind der k-Median-Algorithmus, der k-Means++ Algorithmus oder das Fuzzy C-Means. Der isodata-Algorithmus kann als Spezialfall von k-means angesehen werden.

EM-Algorithmus[Bearbeiten]

Der EM-Algorithmus modelliert Cluster mit Hilfe von multivariaten Normalverteilungen, die ähnlich k-Means iterativ verfeinert werden. Analog zu k-Means muss auch hier im Voraus festgelegt werden, wie viele Normalverteilungen zur Modellierung verwendet werden sollen.

Zur Berechnung von Mittelwerten und Kovarianzmatrizen müssen des Weiteren die Datenobjekte als Vektoren einer festen Dimension n aufgefasst werden können.

Im Gegensatz zu k-means wird damit eine „weiche“ Clusterzuordnung erreicht: Mit einer gewissen Wahrscheinlichkeit gehört jedes Objekt zu jedem Cluster. Jedes Objekt beeinflusst so die Parameter jedes Clusters entsprechend dieser Wahrscheinlichkeit. Der Erfolg des Algorithmus hängt stark von der angenommenen Wahrscheinlichkeitsverteilung ab.

Spectral Clustering[Bearbeiten]

Dieser Algorithmus wird häufig in der Bildverarbeitung eingesetzt, kann aber auch zum Clustern von Websuchergebnissen verwendet werden.

  1. Input: Adjazenzmatrix A, die die paarweisen Ähnlichkeiten der zu clusternden Objekte (z.B. Pixel in einem Bild) enthält. Dabei werden die Einträge, die zu nicht benachbarten Objektpaaren gehören, auf Null gesetzt, so dass diese Matrix dünn besetzt ist.
  2. Man betrachtet nun die Matrix \Delta=D-A des durch A gewichteten Laplace-Operators, wobei D die Diagonalmatrix ist, die zu jedem Objekt die Summe aller Gewichte zu den Nachbarn angibt.
  3. Nun ist 0 ein trivialer Eigenwert von \Delta. Finde daher die zu den k nächstkleinsten Eigenwerten gehörigen Eigenvektoren v_1,\ldots,v_k.
  4. Ordne jedem Objekt i den Vektor w_i \in \mathbb{R}^k zu, dessen k-ter Eintrag durch die i-te Komponente von v_k gegeben ist.
  5. Wende nun den k-means Algorithmus auf die w_1,\ldots,w_n an.

Maximum Margin Clustering[Bearbeiten]

Dieser Artikel oder Abschnitt bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf mit, ihn zu verbessern, und entferne anschließend diese Markierung.

Problemstellung: Beim Clustering existieren keine Labels zu den Beispielen. Die Aufgabe ist es, ein Labeling der Instanzen zu finden, das den größten Abstand (margin) zwischen den Clustern ermöglicht.

Naiver Ansatz zur Lösung des Problems:

  1. Input: Eine Menge von ungelabelten Beispielen
  2. Finde eine mögliche Clusteraufteilung und bezeichne alle Beispiele eines Clusters mit dem gleichen Label.
  3. Trainiere einen Large Margin Classifier (z. B. Support Vector Machine) auf den so entstandenen gelabelten Beispielen und bestimme die Größe des Margins.
  4. Zurück zu 2, solange die ideale Clusteraufteilung nicht gefunden wurde.

Multiview Clustering[Bearbeiten]

Übliche Clusteralgorithmen können nur in einem Vektorraum clustern. Der Multiviewansatz ermöglicht das parallele Clustern in verschiedenen Vektorräumen. Webseiten können z. B. im TF-IDF-Raum dargestellt werden. Dann wird jedem Eintrag im Featurevektor die Häufigkeit des Wortes im gegebenen Dokument zugewiesen. Andererseits können sie auch als Summe ihrer eingehenden Links aufgefasst werden – dann enthält jeder Eintrag im Featurevektor genau dann eine 1, wenn von der entsprechenden Quellseite ein Link auf die aktuelle Seite existiert. Kombiniert man diese beiden Views mittels Multiview Clustering, so sind die resultierenden Ergebnisse nachweisbar qualitativ besser als bei einfacher Konkatenation der Featurevektoren.

Ablauf des Algorithmus am Beispiel Webseiten:

  1. Initialisiere die Mittelwertvektoren eines k-Means-Algorithmus auf Basis der TFIDF-Vektoren
  2. Ordne die Instanzen entsprechend ihrer TFIDF Repräsentation dem ihnen am nächsten gelegenen Cluster zu
  3. Initialisiere die Mittelwertvektoren eines zweiten k-Means auf Basis der in 2 entstandenen Clusterzuordnungen und der Linkvektoren
  4. Ordne die Instanzen entsprechend ihren Linkvektoren dem ihnen am nächsten gelegenes Cluster zu
  5. Zurück zu 1, solange sich die Zuordnung der Instanzen zu Clustern noch ändert.

Self-Organizing Maps (SOMs)[Bearbeiten]

Hauptartikel: Self-Organizing Maps
Dieser Artikel oder Abschnitt bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf mit, ihn zu verbessern, und entferne anschließend diese Markierung.

Fuzzy Clustering[Bearbeiten]

Objektmengen können Elemente enthalten, die aufgrund mehrdeutiger Datenbefunde für keines der ermittelten Cluster prototypisch sind und mehreren Clustern zugeordnet werden könnten. Beim Fuzzy-Clustering werden Objekte unscharf (also mit einem bestimmten Zugehörigkeitsgrad aus dem reellwertigen Intervall [0,1]) auf Cluster verteilt. Im Spezialfall der Zugehörigkeit = 1 bzw. der Zugehörigkeit = 0 ist das Element einem Cluster vollständig bzw. überhaupt nicht zugehörig. Der bekannteste Fuzzy-Clustering Algorithmus ist der Fuzzy C-Means Algorithmus.

Literatur[Bearbeiten]

Grundlagen und Verfahren[Bearbeiten]

  •  Martin Ester, Jörg Sander: Knowledge Discovery in Databases. Techniken und Anwendungen. Springer, Berlin 2000, ISBN 3540673288.
  • Backhaus, K., Erichson, B., Plinke, W., Weiber, R. Multivariate Analysemethoden. Eine anwendungsorientierte Einführung. Springer ISBN 3-540-00491-2
  • Bickel, S., Scheffer, T., Multi-View Clustering. Proceedings of the IEEE International Conference on Data Mining, 2004
  • Shi, J., Malik, J. Normalized Cuts and Image Segmentation, in Proc. of IEEE Conf. on Comp. Vision and Pattern Recognition, Puerto Rico 1997
  • Xu, L., Neufeld, J., Larson, B. and Schuurmans, D., Maximum margin clustering. in Advances in Neural Information Processing Systems 17 (NIPS*2004), 2004

Anwendung[Bearbeiten]

  • Bacher, J., Pöge, A., Wenzig, K., Clusteranalyse – Anwendungsorientierte Einführung in Klassifikationsverfahren, 3. Auflage. München, Oldenbourg 2010, ISBN 978-3-486-58457-8
  • Bortz, J. (1999), Statistik für Sozialwissenschaftler. (Kap. 16, Clusteranalyse). Berlin: Springer
  • Härdle, W.; Simar, L. Applied Multivariate Statistical Analysis, Springer, New York, 2003
  • Homburg, C., Krohmer. H. Marketingmanagement: Strategie – Instrumente – Umsetzung – Unternehmensführung, 3 Edition, Kapitel 8.2.2, Gabler, Wiesbaden, 2009
  • Moosbrugger, H., Frank, D.: Clusteranalytische Methoden in der Persönlichkeitsforschung. Eine anwendungsorientierte Einführung in taxometrische Klassifikationsverfahren. Huber, Bern 1992, ISBN 3-456-82320-7.

Einzelnachweise[Bearbeiten]