Clustering evaluation with Silhouette extremely slow
Show older comments
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 Comments
Fernando Isorna Retamino
on 11 Feb 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
on 23 May 2022
@Fernando Isorna Retamino how you solve that?
Accepted Answer
More Answers (1)
neuromechanist
on 30 May 2019
1 vote
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 Comments
Stephen john
on 23 May 2022
@neuromechanist have you found any update regarding that?
neuromechanist
on 23 May 2022
Hi Stephen,
No, Unfortunately I did not find an answer to speed up the evalclusters function.
Sorry to disappoint.
Stephen john
on 24 May 2022
@neuromechanist any other method you used to solve this?
or change algorithm?
Categories
Find more on k-Means and k-Medoids Clustering in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!