AUTO CLUSTERING instead of setting the value of 'C' in Fuzzy C-Mean
5 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
nur shidah ahmad
le 8 Déc 2016
Réponse apportée : Chad MacDonald
le 5 Déc 2024
I have a problem in FCM. i want it to be AUTO CLUSTERING instead of setting the value of 'C'?. This is a normal FCM code that need manually set the C: options = [NaN 100 0.001 0]; [centers,U,objFun] = fcm(data,3,options);
0 commentaires
Réponse acceptée
Walter Roberson
le 8 Déc 2016
Yes, I know exactly how to get the best possible results in that situation: set the number of clusters to the number of unique points. Every cluster will then contain exactly one point (and any duplicates of it), which will always give you the best possible fitting, with no fitting error at all.
3 commentaires
Walter Roberson
le 9 Déc 2016
The following does the best possible clustering without specifying the number of clusters in advance:
[cluster_centers, ~, cluster_idx] = unique(YourInputMatrix, 'rows');
That is the entire code. Every unique row becomes its own cluster.
The error in cluster assignment is provably 0.
Plus de réponses (1)
Chad MacDonald
le 5 Déc 2024
If you do not have a clear idea of the number of clusters in your data, you can use the subclust function to estimate the number clusters before running FCM.
As of R2023a, you can specify the number of clusters as a vector of values using the NumClusters property of an fcmOptions object. The FCM function computes clusters for each cluster count value and returns the cluster centers for the optimal number of clusters.
0 commentaires
Voir également
Catégories
En savoir plus sur Data Clustering dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!