Clustering evaluation with Silhouette extremely slow
Mostrar comentarios más antiguos
I am evaluating my kmeans clustering solutions using the built-in evalclusters function with Silhouette criterion:
eva = evalclusters(data,idx,'Silhouette');
Data size is 434874x4, tested on my laptop (core i7, 8GB RAM). I have been waiting for more than an hour but it still has not completed. Is there any way to boost the speed of Silhouette evaluation in Matlab?
Thanks a lot.
2 comentarios
Fernando Isorna Retamino
el 11 de Feb. de 2017
I have the same problem. My data size is 1726944x7 and I have been waiting for more than 2 weeks with a similar computer.
eva = evalclusters(data,'kmeans','Silhouette','KList',[1:10]);
Stephen john
el 23 de Mayo de 2022
@Fernando Isorna Retamino how you solve that?
Respuesta aceptada
Más respuestas (1)
neuromechanist
el 30 de Mayo de 2019
1 voto
A problem with evalclusters is that it essentially runs multiple k-means (or any other clustering algortihm) one by one, not in parallel. I think Adding parallel cpability to the function increases its speed dramatically, given that parallel computing toolbox is available.
evalclusters is written in object form, and I don't know how to change for loops in object oriented setups to parfor for now. Will update my response if I figure it out.
3 comentarios
Stephen john
el 23 de Mayo de 2022
@neuromechanist have you found any update regarding that?
neuromechanist
el 23 de Mayo de 2022
Hi Stephen,
No, Unfortunately I did not find an answer to speed up the evalclusters function.
Sorry to disappoint.
Stephen john
el 24 de Mayo de 2022
@neuromechanist any other method you used to solve this?
or change algorithm?
Categorías
Más información sobre Cluster Analysis and Anomaly Detection en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!