Can I use the Silhouette to measure quality of clusters in different dimensions?

For example, let's say we run kmeans for some $k$ using 6 features of the dataset. Mark the resulted silhouette as $s_A$.

Now run kmeans for some $k'$ ($k=k'$) using 3 features of the dataset. Mark the resulted silhouette as $s_B$.

Can I decide which clustering is better by the highest value between $s_A$,$s_B$?

Or in other words, will the dimension of the dataset effect my silhouette value? I'm worried since the Silhouette uses distance, but on the other hand it is normalised by the distance based on some heuristic.

Context: (Very condensed!) I want to evaluate the performance of some feature selection algorithm for unsupervised feature learning, and I want to measure the quality of my selected features against other algorithms (using kmeans for the clustering task)


A change in dimensionality (or features) does affect the distribution of distances, and hence the values will not be comparable.

This is fairly easy to see for synthetic data, and hence you cannot rely on the values enough.

If you want more reliable results, evaluate all results using the same features. But that is biased the opposite way: when the algorithm isn't given all attributes, you can expect it to find worse clusters than when using all attributes.

| cite | improve this answer | |

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.