logo

Clustering im maschinellen Lernen

Clustering oder Clusteranalyse ist eine Technik des maschinellen Lernens, die den unbeschrifteten Datensatz gruppiert. Es kann definiert werden als „Eine Möglichkeit, die Datenpunkte in verschiedene Cluster zu gruppieren, die aus ähnlichen Datenpunkten bestehen.“ „Die Objekte mit den möglichen Ähnlichkeiten bleiben in einer Gruppe, die weniger oder keine Ähnlichkeiten mit einer anderen Gruppe aufweist.“

Dazu werden im unbeschrifteten Datensatz einige ähnliche Muster wie Form, Größe, Farbe, Verhalten usw. gefunden und nach dem Vorhandensein und Fehlen dieser ähnlichen Muster unterteilt.

Es ist ein unbeaufsichtigtes Lernen Daher wird der Algorithmus nicht überwacht und er verarbeitet den unbeschrifteten Datensatz.

Nach Anwendung dieser Clustering-Technik erhält jeder Cluster bzw. jede Gruppe eine Cluster-ID. ML-Systeme können diese ID verwenden, um die Verarbeitung großer und komplexer Datensätze zu vereinfachen.

Die Clustering-Technik wird häufig verwendet für statistische Datenanalyse.

Hinweis: Clustering ähnelt in gewisser Weise dem Klassifizierungsalgorithmus , aber der Unterschied liegt in der Art des Datensatzes, den wir verwenden. Bei der Klassifizierung arbeiten wir mit dem beschrifteten Datensatz, während wir beim Clustering mit dem unbeschrifteten Datensatz arbeiten.

Beispiel : Lassen Sie uns die Clustering-Technik anhand des realen Beispiels eines Einkaufszentrums verstehen: Wenn wir ein Einkaufszentrum besuchen, können wir beobachten, dass die Dinge mit ähnlicher Nutzung in Gruppen zusammengefasst sind. So sind zum Beispiel die T-Shirts in einem Abschnitt gruppiert und die Hosen in anderen Abschnitten. Ebenso sind in den Gemüseabschnitten Äpfel, Bananen, Mangos usw. in separaten Abschnitten gruppiert, damit wir die Dinge leicht herausfinden können. Auch die Clustering-Technik funktioniert auf die gleiche Weise. Weitere Beispiele für Clustering sind das Gruppieren von Dokumenten nach Themen.

Die Clustering-Technik kann bei verschiedenen Aufgaben umfassend eingesetzt werden. Einige der häufigsten Anwendungen dieser Technik sind:

Wie viele Millionen sind in einer Milliarde?
  • Marktsegmentierung
  • Statistische Datenanalyse
  • Analyse sozialer Netzwerke
  • Bildsegmentierung
  • Anomalieerkennung usw.

Abgesehen von diesen allgemeinen Verwendungen wird es von verwendet Amazonas in seinem Empfehlungssystem, um die Empfehlungen entsprechend der vergangenen Produktsuche bereitzustellen. Netflix nutzt diese Technik auch, um seinen Nutzern die Filme und Webserien anhand des Wiedergabeverlaufs zu empfehlen.

Das folgende Diagramm erläutert die Funktionsweise des Clustering-Algorithmus. Wir können sehen, dass die verschiedenen Früchte in mehrere Gruppen mit ähnlichen Eigenschaften unterteilt sind.

Clustering im maschinellen Lernen

Arten von Clustering-Methoden

Die Clustering-Methoden sind grob unterteilt in Hartes Clustering (Datenpunkt gehört nur zu einer Gruppe) und Weiches Clustering (Datenpunkte können auch zu einer anderen Gruppe gehören). Es gibt aber auch andere verschiedene Ansätze des Clusterings. Nachfolgend sind die wichtigsten Clustering-Methoden aufgeführt, die beim maschinellen Lernen verwendet werden:

    Partitionierungs-Clustering Dichtebasiertes Clustering Verteilungsmodellbasiertes Clustering Hierarchisches Clustering Fuzzy-Clustering

Partitionierungs-Clustering

Es handelt sich um eine Art Clustering, bei dem die Daten in nicht hierarchische Gruppen unterteilt werden. Es ist auch als bekannt Schwerpunktbasierte Methode . Das häufigste Beispiel für Partitionierungsclustering ist das K-Means-Clustering-Algorithmus .

Bei diesem Typ wird der Datensatz in einen Satz von k Gruppen unterteilt, wobei K verwendet wird, um die Anzahl der vordefinierten Gruppen zu definieren. Das Clusterzentrum wird so erstellt, dass der Abstand zwischen den Datenpunkten eines Clusters im Vergleich zu einem anderen Clusterschwerpunkt minimal ist.

Clustering im maschinellen Lernen

Dichtebasiertes Clustering

Die dichtebasierte Clustering-Methode verbindet die Bereiche mit hoher Dichte zu Clustern, und solange der dichte Bereich verbunden werden kann, werden willkürlich geformte Verteilungen gebildet. Dieser Algorithmus identifiziert dazu verschiedene Cluster im Datensatz und verbindet die Bereiche mit hoher Dichte zu Clustern. Die dichten Bereiche im Datenraum werden durch dünner besiedelte Bereiche voneinander getrennt.

Bei diesen Algorithmen kann es schwierig sein, die Datenpunkte zu gruppieren, wenn der Datensatz unterschiedliche Dichten und große Dimensionen aufweist.

Clustering im maschinellen Lernen

Verteilungsmodellbasiertes Clustering

Bei der verteilungsmodellbasierten Clustering-Methode werden die Daten basierend auf der Wahrscheinlichkeit aufgeteilt, wie ein Datensatz zu einer bestimmten Verteilung gehört. Die Gruppierung erfolgt durch die Annahme einiger gemeinsamer Verteilungen Gaußsche Verteilung .

Ein Beispiel für diesen Typ ist die Erwartungsmaximierungs-Clustering-Algorithmus das Gaußsche Mischungsmodelle (GMM) verwendet.

Finden Sie in String c++
Clustering im maschinellen Lernen

Hierarchisches Clustering

Hierarchisches Clustering kann als Alternative zum partitionierten Clustering verwendet werden, da keine Vorgabe der Anzahl der zu erstellenden Cluster erforderlich ist. Bei dieser Technik wird der Datensatz in Cluster unterteilt, um eine baumartige Struktur zu erstellen, die auch als a bezeichnet wird Dendrogramm . Die Beobachtungen oder eine beliebige Anzahl von Clustern können ausgewählt werden, indem der Baum auf der richtigen Ebene geschnitten wird. Das häufigste Beispiel für diese Methode ist die Agglomerativer hierarchischer Algorithmus .

Clustering im maschinellen Lernen

Fuzzy-Clustering

Fuzzy-Clustering ist eine Art Soft-Methode, bei der ein Datenobjekt zu mehr als einer Gruppe oder einem Cluster gehören kann. Jeder Datensatz verfügt über eine Reihe von Mitgliedschaftskoeffizienten, die vom Grad der Mitgliedschaft in einem Cluster abhängen. Fuzzy-C-Means-Algorithmus ist das Beispiel für diese Art von Clustering; Er wird manchmal auch als Fuzzy-K-Means-Algorithmus bezeichnet.

Clustering-Algorithmen

Die Clustering-Algorithmen können anhand ihrer oben erläuterten Modelle unterteilt werden. Es sind verschiedene Arten von Clustering-Algorithmen veröffentlicht, aber nur wenige werden häufig verwendet. Der Clustering-Algorithmus basiert auf der Art der Daten, die wir verwenden. Beispielsweise müssen einige Algorithmen die Anzahl der Cluster im gegebenen Datensatz schätzen, während andere den Mindestabstand zwischen den Beobachtungen des Datensatzes ermitteln müssen.

Hier diskutieren wir hauptsächlich beliebte Clustering-Algorithmen, die beim maschinellen Lernen weit verbreitet sind:

    K-Means-Algorithmus:Der k-means-Algorithmus ist einer der beliebtesten Clustering-Algorithmen. Es klassifiziert den Datensatz, indem es die Stichproben in verschiedene Cluster mit gleichen Varianzen unterteilt. In diesem Algorithmus muss die Anzahl der Cluster angegeben werden. Es ist schnell, erfordert weniger Berechnungen und weist die lineare Komplexität von auf An). Mean-Shift-Algorithmus:Der Mean-Shift-Algorithmus versucht, die dichten Bereiche in der glatten Dichte der Datenpunkte zu finden. Es handelt sich um ein Beispiel für ein auf dem Schwerpunkt basierendes Modell, das darauf abzielt, die Kandidaten für den Schwerpunkt so zu aktualisieren, dass sie der Mittelpunkt der Punkte innerhalb einer bestimmten Region sind.DBSCAN-Algorithmus:Es steht für dichtebasiertes räumliches Clustering von Anwendungen mit Rauschen . Es ist ein Beispiel für ein dichtebasiertes Modell, das dem Mean-Shift ähnelt, jedoch einige bemerkenswerte Vorteile bietet. Bei diesem Algorithmus werden die Bereiche hoher Dichte durch Bereiche niedriger Dichte getrennt. Aus diesem Grund können die Cluster in jeder beliebigen Form gefunden werden.Erwartungsmaximierungs-Clustering mit GMM:Dieser Algorithmus kann als Alternative zum K-Means-Algorithmus oder für Fälle verwendet werden, in denen K-Means fehlschlagen kann. Bei GMM wird davon ausgegangen, dass die Datenpunkte gaußverteilt sind.Agglomerativer hierarchischer Algorithmus:Der agglomerative hierarchische Algorithmus führt die hierarchische Clusterbildung von unten nach oben durch. Dabei wird jeder Datenpunkt zunächst als einzelner Cluster behandelt und dann sukzessive zusammengeführt. Die Clusterhierarchie kann als Baumstruktur dargestellt werden.Affinitätsausbreitung:Der Unterschied zu anderen Clustering-Algorithmen besteht darin, dass die Anzahl der Cluster nicht angegeben werden muss. Dabei sendet jeder Datenpunkt bis zur Konvergenz eine Nachricht zwischen dem Datenpunktpaar. Es hat O(N2T) Zeitkomplexität, was der Hauptnachteil dieses Algorithmus ist.

Anwendungen des Clusterings

Nachfolgend sind einige allgemein bekannte Anwendungen der Clustering-Technik beim maschinellen Lernen aufgeführt:

    Zur Identifizierung von Krebszellen:Die Clustering-Algorithmen werden häufig zur Identifizierung von Krebszellen verwendet. Es unterteilt die krebsartigen und nicht krebsartigen Datensätze in verschiedene Gruppen.In Suchmaschinen:Auch Suchmaschinen arbeiten mit der Clustering-Technik. Das Suchergebnis wird basierend auf dem Objekt angezeigt, das der Suchabfrage am nächsten kommt. Dies geschieht durch die Gruppierung ähnlicher Datenobjekte in einer Gruppe, die weit von den anderen unterschiedlichen Objekten entfernt ist. Das genaue Ergebnis einer Abfrage hängt von der Qualität des verwendeten Clustering-Algorithmus ab.Kundensegmentierung:Es wird in der Marktforschung verwendet, um die Kunden anhand ihrer Auswahl und Vorlieben zu segmentieren.In der Biologie:Es wird in der Biologie verwendet, um verschiedene Pflanzen- und Tierarten mithilfe der Bilderkennungstechnik zu klassifizieren.Bei der Landnutzung:Die Clustering-Technik wird verwendet, um das Gebiet mit ähnlicher Landnutzung in der GIS-Datenbank zu identifizieren. Dies kann sehr nützlich sein, um herauszufinden, für welchen Zweck das jeweilige Grundstück genutzt werden soll, also für welchen Zweck es besser geeignet ist.