Middle
16
Какие метрики используются для оценки качества кластеризации? Как подбирать количество кластеров?
Компании, где спрашивали
RDP
Ответ от нейросети
sobes.tech AI
Для оценки качества кластеризации используют несколько метрик:
- Silhouette Score — измеряет, насколько объекты внутри кластера похожи друг на друга и насколько они далеки от объектов других кластеров. Значение от -1 до 1, где ближе к 1 — лучше.
- Davies-Bouldin Index — среднее отношение внутрикластерного разброса к межкластерному расстоянию. Чем меньше, тем лучше.
- Calinski-Harabasz Index — отношение межкластерной дисперсии к внутрикластерной. Чем больше, тем лучше.
Подбор количества кластеров часто происходит с помощью:
- Метода локтя (Elbow Method) — строится график зависимости метрики (например, суммы квадратов расстояний внутри кластеров) от числа кластеров. Точка "излома" на графике считается оптимальным числом.
- Silhouette Analysis — выбирается число кластеров с максимальным средним Silhouette Score.
Пример использования Silhouette Score в Python с sklearn:
from sklearn.cluster import KMeans
from sklearn.metrics import silhouette_score
X = ... # данные
for n_clusters in range(2, 10):
kmeans = KMeans(n_clusters=n_clusters, random_state=42).fit(X)
labels = kmeans.labels_
score = silhouette_score(X, labels)
print(f"Кластеры: {n_clusters}, Silhouette Score: {score:.3f}")
Таким образом, выбирается число кластеров с наилучшей метрикой.