MATLAB ist ein Industrie-Standard- Software-Paket für die Analyse von einer Vielzahl von technischen und wissenschaftlichen Daten. Ein grundlegendes Ziel vieler analytischer Methoden ist , um Muster in den zugrunde liegenden Daten zu erkennen. Oft ist dies mit Teilen von Daten in verschiedene Gruppen oder Cluster . Eine häufig verwendete Clustering-Algorithmus ist Fuzzy c -means Clustering von Dunn im Jahre 1973 entwickelt und verbessert durch Bezdek im Jahr 1981. Übersicht
Fuzzy c -means Clustering oder FCM kann Datenpunkte mehr als einem Cluster gehören. Ein iterativer Algorithmus minimiert einer Zielfunktion , um die optimale Cluster-Mitgliedschaft für jeden Punkt in den Daten, die Cluster zu finden. Iteration des Clustering-Algorithmus stoppt, wenn die Zielfunktion erreicht ein lokales Minimum oder Sattelpunkt . FCM kann mit anderen Suchalgorithmen kombiniert werden , um ein optimales Ergebnis zu gewährleisten
Zielfunktion
Der FCM Zielfunktion J_M ist gleich: .
< P > Summe ( i = 1 ... N) [ Summe ( j = 1 ... C ) [ u_ij ^ m norm ( x_i - C_j ) ^ 2 ]]
Die Zielfunktion wird über reale Werte als von m zwischen 1 und plus unendlich . Der Wert u_ij ist die Mitgliedschaft der Datenpunkt x_i in der j-ten Cluster , bei C_j zentriert
Algorithm
Der FCM Optimierungsalgorithmus besteht aus vier Schritten . :
1 . Initialisieren Sie die Matrix U_0 = [ u_ij ] .2 . Berechnen Sie die Clusterzentren C_K = [ C_j ] von U_K , wobei k eine ganze Zahl gleich Iteration der algorithm.3 . Aktualisieren U_ (k +1) aus den neuen C_k.4 . Berechnen Sie den Wert J_k . Wenn die neue Haltestelle verursacht J_k zu erhöhen , zu stoppen , sonst zu Schritt 2 zurückzukehren .
MATLAB Nutzungsbedingungen
MATLAB implementiert Fuzzy c -means Clustering in der FCM ()-Funktion . Die Fuzzy Logic Toolbox ist für die Verwendung des FCM ()-Funktion benötigt. Der Aufruf Syntax lautet:
[ Zentren , U, objFun ] = fcm ( Meine_Daten , n_clusters );
Meine_Daten Variable ist die Eingabedaten , wo jede Zeile einen Datenpunkt. Die n_clusters Variable ist die Anzahl von Clustern , die Daten in gruppieren. Die Center -Ausgang ist die Matrix der optimalen Clusterzentren . U ist die optimale Fuzzy- Partition oder Mitgliedschaft Matrix . Die objFun Variable ist der endgültige Wert der Zielfunktion .