kmeans_plusplus
- sklearn.cluster.kmeans_plusplus(X, n_clusters, *, sample_weight=None, x_squared_norms=None, random_state=None, n_local_trials=None)[исходный код]
-
Инициализирует n_clusters начальных центров согласно алгоритму k-means++.
Добавлено в версии 0.24.
- Параметры:
-
- X{array-like, sparse matrix} of shape (n_samples, n_features)
-
Данные, из которых выбираются начальные центры.
- n_clustersint
-
Количество инициализируемых центроидов.
- sample_weightarray-like of shape (n_samples,), default=None
-
Веса каждого наблюдения в
X. ЕслиNone, всем наблюдениям присваивается одинаковый вес.sample_weightигнорируется, еслиinitявляется вызываемым объектом или массивом, предоставленным пользователем.Добавлено в версии 1.3.
- x_squared_normsarray-like of shape (n_samples,), default=None
-
Квадрат евклидовой нормы каждой точки данных.
- random_stateint or RandomState instance, default=None
-
Определяет генерацию случайных чисел для инициализации центроидов. Передайте целое число, чтобы получать воспроизводимые результаты при нескольких вызовах функции. См. Глоссарий.
- n_local_trialsint, default=None
-
Количество попыток выбора начального положения для каждого центра (кроме первого); жадно выбирается вариант, сильнее всего уменьшающий инерцию. Значение None позволяет определить количество попыток логарифмически в зависимости от числа начальных центров (2+log(k)); это рекомендуемая настройка. Значение 1 отключает жадный выбор кластеров и возвращает базовый алгоритм k-means++, который, как показали эмпирические наблюдения, работает хуже его жадного варианта.
- Возвращает:
-
- centersndarray of shape (n_clusters, n_features)
-
Начальные центры для k-means.
- indicesndarray of shape (n_clusters,)
-
Индексы выбранных центров в массиве данных X. Для заданного индекса и центра X[index] = center.
Примечания
Интеллектуально выбирает начальные центры кластеров для кластеризации методом k-means, чтобы ускорить сходимость. См.: Arthur, D. и Vassilvitskii, S. «k-means++: преимущества тщательного выбора начальных центров». Симпозиум ACM-SIAM по дискретным алгоритмам. 2007
Примеры
>>> from sklearn.cluster import kmeans_plusplus >>> import numpy as np >>> X = np.array([[1, 2], [1, 4], [1, 0], ... [10, 2], [10, 4], [10, 0]]) >>> centers, indices = kmeans_plusplus(X, n_clusters=2, random_state=0) >>> centers array([[10, 2], [ 1, 0]]) >>> indices array([3, 2])
Примеры в галерее
© 2007–2026 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.9/modules/generated/sklearn.cluster.kmeans_plusplus.html