Что представляет собой порядок / индекс cluster_centers_ в кластеризации KMeans SKlearn - PullRequest
2 голосов
/ 05 марта 2020

Я реализовал следующий код

k_mean = KMeans(n_clusters=5,init=centroids,n_init=1,random_state=SEED).fit(X_input)
k_mean.cluster_centers_.shape
>>
(5, 50)

У меня есть 5 кластеров данных.

Как упорядочены кластеры? Являются ли индексы центров кластеров, представляющие labels?

Значит, индекс cluster_center в позиции 0th представляет метку = 0 или нет?

1 Ответ

1 голос
/ 05 марта 2020

В документах у вас есть знакомый пример:

>>> from sklearn.cluster import KMeans
>>> import numpy as np
>>> X = np.array([[1, 2], [1, 4], [1, 0],
...               [10, 2], [10, 4], [10, 0]])
>>> kmeans = KMeans(n_clusters=2, random_state=0).fit(X)
>>> kmeans.labels_
array([1, 1, 1, 0, 0, 0], dtype=int32)
>>> kmeans.predict([[0, 0], [12, 3]])
array([1, 0], dtype=int32)
>>> kmeans.cluster_centers_
array([[10.,  2.],
       [ 1.,  2.]])

Индексы упорядочены да. Кстати, с k_mean.cluster_centers_.shape вы возвращаете только форму вашего массива, а не значения. Итак, в вашем случае у вас есть 5 кластеров, а размерность ваших объектов равна 50.

Чтобы получить ближайшую точку, вы можете посмотреть здесь .

...