cluster_optics_dbscan#
- sklearn.cluster.cluster_optics_dbscan(*, достижимость, core_distances, упорядочивание, eps)[источник]#
Выполнить извлечение DBSCAN для произвольного эпсилон.
Извлечение кластеров выполняется за линейное время. Обратите внимание, что это приводит к
labels_которые близки кDBSCANс аналогичными настройками иeps, только еслиepsблизко кmax_eps.- Параметры:
- достижимостьndarray формы (n_samples,)
Расстояния достижимости, рассчитанные OPTICS (
reachability_).- core_distancesndarray формы (n_samples,)
Расстояния, на которых точки становятся ядром (
core_distances_).- упорядочиваниеndarray формы (n_samples,)
Упорядоченные индексы точек OPTICS (
ordering_).- epsfloat
DBSCAN
epsпараметр. Должен быть установлен в <max_eps. Результаты будут близки к алгоритму DBSCAN, еслиepsиmax_epsблизки друг к другу.
- Возвращает:
- labels_массив формы (n_samples,)
Оцененные метки.
Примеры
>>> import numpy as np >>> from sklearn.cluster import cluster_optics_dbscan, compute_optics_graph >>> X = np.array([[1, 2], [2, 5], [3, 6], ... [8, 7], [8, 8], [7, 3]]) >>> ordering, core_distances, reachability, predecessor = compute_optics_graph( ... X, ... min_samples=2, ... max_eps=np.inf, ... metric="minkowski", ... p=2, ... metric_params=None, ... algorithm="auto", ... leaf_size=30, ... n_jobs=None, ... ) >>> eps = 4.5 >>> labels = cluster_optics_dbscan( ... reachability=reachability, ... core_distances=core_distances, ... ordering=ordering, ... eps=eps, ... ) >>> labels array([0, 0, 0, 1, 1, 1])