Given m, p and t non-zero natural numbers:

  • m is the number of clustering methods,

  • p is the number of internal measures for cluster validation (i.e halkidi, sd, calinski_harabaz, davies_bouldin...),

  • t is the number of different datasets.

I run the m clustering methods on t datasets and I measure the clustering results of each method with each measure from the p internal measures. So each internal measure has m*t values.

I don't see how to evaluate the performance of the methods in order to choose the best method clustering. Because a clustering method is not the best for each measure.

Is there a way or a technique to identify the best clustering method.

I note that the method clustering are related to different versions of k-means that doesn't produce the same number of cluster and also not the same partitions.

| cite | improve this question | | | | |

Evaluation indexes could be considered their own clustering methods - just that there is no fast algorithm except trying all possible partitionings and then computing the index function. But with exhaustive search you could use Silhouette as a clustering method, too.

By using these indexes, you reduce your clustering (e.g., k-means) to a candidate generation for that internal index.

So it's no surprise they do not agree, or they would be redundant.

But unless one of these indexes very clearly matches your problem, you are in the end no step further: how are you going to know which index is best for your problem? How are you going to know the index is better than the original objective function of the clustering algorithm?

Do not assume these indexes given you any information about what is "best", because each uses another definition of "best", and that may not be the one that you are looking for.

| cite | improve this answer | | | | |
  • $\begingroup$ in this paper, the authors reported that the calinski_harabaz index is very good for evaluating k-means. Based on this index and knowing that we have t datasets and m algorithms (different algorithmic variants of k-means producing different results). How to say that an algorithm is globally better according to the calinski_harabaz index $\endgroup$ – nabiltos Jun 21 '19 at 11:15
  • $\begingroup$ And in another paper, the authors prefer Silhouette. I've explained why an index cannot be "better" than a clustering because they are essentially the same just slow. So all you measure is if an algorithm is more like Calinski-Harabaz, or not. $\endgroup$ – Has QUIT--Anony-Mousse Jun 22 '19 at 6:56
  • $\begingroup$ I understood that the index is in itself a clustering algorithm but slower and that we look at whether our clustering algorithm is close to an index or not. But in any case we want to know the clustering quality of our algorithm based on the indexes. $\endgroup$ – nabiltos Jun 22 '19 at 9:57
  • $\begingroup$ So how to determine the index that best fits our problem because the indexes are different and do not measure the same thing. Knowing that this is a complex problem in itself, we could test several indexes and show that the algorithm works globally on some indexes and not on others. But showing globally that the algorithm works is also difficult, hence the purpose of this discussion. $\endgroup$ – nabiltos Jun 22 '19 at 9:58
  • $\begingroup$ Well, the indexes are no "better" than the clusterings. You may as well use SSQ to choose among solutions found by optimizing Silhouette, same thing. $\endgroup$ – Has QUIT--Anony-Mousse Jun 22 '19 at 17:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.