Для любого кластера, в конце дня, он пытается максимизировать расстояние между различными кластерами, одновременно минимизируя расстояние внутри кластеров. И само расстояние - это мера, которую вы должны определить, т. Е. Манхэттен, Евклидово, Статистическое и т. Д. Нет истинной «точности» кластеризации, поскольку она зависит от того, как выглядят ваши данные, и от количества кластеров, которые вы выбираете. На самом деле, много раз, если вы перезапустите один и тот же алгоритм после перестановки данных, вы получите разные кластеры!
Возьмите этот пример: вы пытаетесь объединить животных / насекомых в 3 типа. А животные - это медведь, змея, паук и енот.
Поскольку определенное количество кластеров равно 3, кластеры, вероятно, будут:
1) Медведь, енот
2) Змея
3) Паук
Это не обязательно означает, что медведи и еноты очень похожи, просто они ближе друг к другу по сравнению с другими животными.
С учетом вышесказанного, лучший способ проанализировать "точность" каждого кластера - это использовать Анализ силуэта. Этот анализ измеряет расстояние каждой точки до других точек в кластере и сравнивает его с расстоянием каждой точки до других точек, находящихся за пределами кластера.
Если определено, что одна точка имеет меньшее расстояние до другой точки за пределами текущего кластера, это означает, что точка данных помечена плохо.
Пожалуйста, перейдите по этой ссылке, она даст вам пошаговое руководство по использованию K-средних для создания ваших кластеров, а затем оцените «точность» вашей кластеризации с помощью анализа Силуэт!
http://scikit -learn.org / стабильный / auto_examples / кластер / plot_kmeans_silhouette_analysis.html