Clustering oder Clusteranalyse ist eine Methode des nicht überwachten Lernens, die beim Machine Learning und bei der Datenanalyse eingesetzt wird und die Daten so organisiert, dass Datenpunkte in derselben Gruppe (Cluster) einander ähnlicher sind als denen in anderen Gruppen. Das Clustering trägt dazu bei, große und komplexe Datensätze sinnvoll zu nutzen, indem Muster und Trends aufgedeckt oder Vorhersagen für nicht gekennzeichnete Daten gemacht werden.
Die Funktionsweise beim Clustering
Das Clustering umfasst mehrere wichtige Schritte, darunter die Datenaufbereitung, die Definition eines Ähnlichkeitsmaßes, die Auswahl des richtigen Clustering-Algorithmus sowie die Evaluierung und Optimierung von Clustern.
Beim Clustering wird die Ähnlichkeit zwischen Datenpunkten gemessen und es werden jene Punkte gruppiert, die ein höheres Maß an Ähnlichkeit aufweisen als Daten in anderen Clustern. Das Konzept der „Ähnlichkeit“ variiert je nach Kontext und Daten und ist ein grundlegender Aspekt des nicht überwachten Lernens. Es können verschiedene Ähnlichkeitsmaße verwendet werden, z. B. euklidischer, probabilistischer, Kosinusabstand und Korrelation.
Arten von Clustering-Algorithmen
Clustering-Algorithmen lassen sich dabei in zwei große Gruppen einteilen:
- Hard Clustering: Wenn jeder Datenpunkt nur zu einem Cluster gehört, wie bei der beliebten k-means-Methode
- Soft Clustering: Wenn jeder Datenpunkt zu mehr als einem Cluster gehören kann, wie z. B. bei Gaußschen Mischmodellen
Es gibt mehrere Clustering-Algorithmen, und jeder davon hat einen eigenen Ansatz zur Gruppierung von Daten. Diese Methoden unterscheiden sich erheblich in ihren Mechanismen und idealen Anwendungsfällen. Die häufigsten Arten von Clustering-Algorithmen, die beim Machine Learning verwendet werden, sind:
- Beim hierarchischen Clustering wird eine mehrstufige Hierarchie von Clustern durch die Erstellung eines Cluster-Baums aufgebaut.
- Beimk-means Clustering werden Daten auf Grundlage des Abstands zum Schwerpunkt eines Clusters in k verschiedene Cluster unterteilt.
- Gaußsche Mischmodelle bilden Cluster als eine Mischung multivariater Normaldichtekomponenten.
- Das dichtebasierte räumliche Clustering (DBSCAN) gruppiert Punkte, die nahe beieinanderliegen, in Bereichen mit hoher Dichte und behält Ausreißer in Regionen mit geringer Dichte im Auge. Es kann beliebige nicht konvexe Formen verarbeiten.
- Selbstorganisierende Karten verwenden neuronale Netze, die die Topologie und Verteilung der Daten lernen.
- Beim spektralen Clustering werden die Eingabedaten in eine grafische Darstellung umgewandelt, in der die Cluster besser voneinander getrennt sind als im ursprünglichen Merkmalsraum. Die Anzahl der Cluster kann durch Untersuchung der Eigenwerte des Graphen geschätzt werden.
- Versteckte Markov-Modelle können zur Entdeckung von Mustern in Sequenzen, wie z. B. Genen und Proteinen in der Bioinformatik, verwendet werden.
- Fuzzy c-means (FCM) gruppiert Daten in N Cluster, wobei jeder Datenpunkt des Datensatzes zu einem bestimmten Grad zu jedem Cluster gehört.
Clustering für nicht überwachtes Lernen
Das nicht überwachte Lernen ist ein Machine-Learning-Algorithmus, der verwendet wird, um ohne menschliches Zutun Rückschlüsse aus unbeschrifteten Daten zu ziehen. Das Clustering ist dabei die am weitesten verbreitete Methode zum nicht überwachten Lernen. Hierbei werden Clustering-Algorithmen eingesetzt, um Daten zu untersuchen und verborgene Muster oder Gruppierungen in den Daten zu finden, ohne dass die Gruppenbezeichnungen vorher bekannt sind. Mithilfe dieser Gruppen und Muster lassen sich durch Clustering wertvolle Erkenntnisse aus unbeschrifteten Daten gewinnen und die ihnen innewohnenden Strukturen aufdecken.
Die Bedeutung des Clustering
Clustering spielt eine Schlüsselrolle im Bereich der Künstlichen Intelligenz. In verschiedenen Bereichen leistet sie einen wichtigen Beitrag, indem sie wertvolle Einblicke in die Daten bietet und Muster und Beziehungen aufdeckt, die nicht sofort offensichtlich sind. Bei unbeschrifteten Daten, bei denen die eigentliche Beziehung zwischen den Datenpunkten nicht erkennbar, aber dennoch erforderlich ist, um nützliche Erkenntnisse zu gewinnen, hilft das Clustering bei der Aufdeckung dieser Verbindungen und der Einteilung der unbeschrifteten Daten in sinnvolle Gruppen.
Durch die Gruppierung ähnlicher Elemente reduziert das Clustering die Komplexität der Daten, sodass man sich vielmehr auf das Verhalten der Gruppen konzentrieren kann und nicht von einzelnen Datenpunkten überfordert wird. Auf diese Weise kann das Clustering für die explorative Datenanalyse und das halbüberwachte Lernen verwendet werden. Bei Letzterem wird das Clustering als Vorverarbeitungsschritt vor dem überwachten Lernen verwendet, um die von einem Machine-Learning-Modell zu verarbeitende Datenmenge zu reduzieren und die prädiktive Modellierung zu verbessern.
Clustering wird auch häufig in Anwendungen wie der Anomalieerkennung, Bildsegmentierung und Mustererkennung eingesetzt. Genauer gesagt kann Clustering in folgenden Bereichen angewendet werden, um Muster und Sequenzen zu erkennen:
- Cluster können die Daten anstelle des Rohsignals in Datenkomprimierungsverfahren darstellen.
- Cluster kennzeichnen Bildregionen und LiDAR-Punktwolken in Segmentierungsalgorithmen.
- Clustering dient der Identifizierung von Ausreißern oder Anomalien innerhalb eines Datensatzes.
- In der medizinischen Bildgebung können Clustering-Algorithmen verwendet werden, um Bilder in relevante Regionen aufzuteilen, z. B. zur Unterscheidung zwischen gesundem Gewebe und Tumoren oder zur Segmentierung des Gehirns in weiße Substanz, graue Substanz und Liquor cerebrospinalis.
- In geografischen Informationssystemen (GIS) wird das Clustering zur Analyse von Satellitenbildern oder Luftaufnahmen verwendet, um die Zersiedelung oder Flächennutzungsmuster zu ermitteln oder um Veränderungen in urbanen Gebieten im Laufe der Zeit zu überwachen.
- Das genetische Clustering und die Sequenzanalyse werden in der Bioinformatik eingesetzt.
Clustering mit MATLAB
Mit MATLAB® und der Statistics and Machine Learning Toolbox™ können Sie Muster und Merkmale identifizieren, indem Sie Clustering-Methoden Ihrer Wahl anwenden und Ihre Daten in Gruppen oder Cluster unterteilen. Mithilfe der Image Processing Toolbox™ können Sie ein Clustering für Bilddaten durchführen.
Datenaufbereitung
Um genaue und effiziente Clustering-Ergebnisse zu erzielen, ist es unerlässlich, die Daten vorzuverarbeiten und fehlende Werte und Ausreißer zu behandeln. Sie können die Daten bereinigen und vorverarbeiten, indem Sie die integrierten Funktionen programmatisch oder interaktiv mithilfe der Data Cleaner-App verwenden.
Clustering-Algorithmen
MATLAB unterstützt alle gängigen Clustering-Algorithmen, die Sie mit integrierten Funktionen wie der kmeans
-Funktion anwenden können. Sie können den Live Editor Task Cluster Data verwenden, um interaktiv k-means und hierarchisches Clustering durchzuführen. Mithilfe des Task können Sie automatisch MATLAB Programmcode für Ihr Live-Skript generieren.
In Simulink lässt sich mit dem Block KNN Search auch ein Clustering mit den nächsten Nachbarn durchführen. Der Block akzeptiert einen Abfragepunkt und liefert die k nächsten Punkte in den Beobachtungsdaten mithilfe eines Suchobjekts für die nächsten Nachbarn.
Visualisierung und Auswertung von Clustering-Ergebnissen
Wenn die Daten keine natürlichen Unterteilungen enthalten, die auf eine angemessene Anzahl von Clustern hindeuten, können Sie verschiedene Bewertungskriterien wie beispielsweise Lücke oder Silhouette verwenden, um festzustellen, wie genau die Daten in eine bestimmte Anzahl von Clustern passen. Sie können die Cluster auch visualisieren, um die Clustering-Ergebnisse zu überprüfen. So können Sie beispielsweise ein Dendrogramm zur Visualisierung von Clustern verwenden.
Clustering für Bilder
Sie können eine Bildsegmentierung (mit der Funktion imsegkmeans
) und eine Volumensegmentierung (mit der Funktion imsegkmeans3
) an Bildern durchführen, indem Sie Pixelregionen anhand von Ähnlichkeiten in Farbe oder Form clustern. Sie können ein segmentiertes, beschriftetes Bild mithilfe eines bestimmten Clustering-Algorithmus erstellen. In der medizinischen Bildgebung lassen sich beispielsweise Pixel in einem Bild oder Voxel eines 3D-Volumens erkennen und beschriften, die einen Tumor im Gehirn eines Patienten oder in anderen Organen darstellen. Durch den Einsatz von MATLAB-Tools haben Sie die Möglichkeit, Bilder für eine Vielzahl von Anwendungen zu verarbeiten und zu analysieren – von der Diagnose von Erkrankungen bis zur Klassifizierung der Flächennutzung.
Ressourcen
Erweitern Sie Ihre Kenntnisse durch Dokumentation, Beispiele, Videos und vieles mehr.
Ähnliche Themen
Sehen Sie sich weitere Themengebiete an, für die MATLAB- und Simulink-Produkte häufig zum Einsatz kommen.
30-tägige kostenlose Testversion
Jetzt loslegenWebsite auswählen
Wählen Sie eine Website aus, um übersetzte Inhalte (sofern verfügbar) sowie lokale Veranstaltungen und Angebote anzuzeigen. Auf der Grundlage Ihres Standorts empfehlen wir Ihnen die folgende Auswahl: .
Sie können auch eine Website aus der folgenden Liste auswählen:
So erhalten Sie die bestmögliche Leistung auf der Website
Wählen Sie für die bestmögliche Website-Leistung die Website für China (auf Chinesisch oder Englisch). Andere landesspezifische Websites von MathWorks sind für Besuche von Ihrem Standort aus nicht optimiert.
Amerika
- América Latina (Español)
- Canada (English)
- United States (English)
Europa
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
Asien-Pazifik
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本Japanese (日本語)
- 한국Korean (한국어)