estimate_bandwidth#

sklearn.cluster.estimate_bandwidth(X, *, квантиль=0.3, n_samples=None, random_state=0, n_jobs=None)[источник]#

Оцените ширину полосы для использования с алгоритмом mean-shift.

Эта функция занимает время как минимум квадратичное от n_samples. Для больших наборов данных целесообразно выполнять субдискретизацию, установив n_samplesВ качестве альтернативы, параметр bandwidth может быть установлено на небольшое значение без его оценки.

Параметры:
Xarray-like формы (n_samples, n_features)

Входные точки.

квантильfloat, default=0.3

Должно быть между [0, 1] 0.5 означает, что используется медиана всех попарных расстояний.

n_samplesint, default=None

Количество используемых образцов. Если не задано, используются все образцы.

random_stateint, экземпляр RandomState, по умолчанию=None

Генератор, используемый для случайного выбора образцов из входных точек для оценки ширины полосы. Используйте int для детерминированной случайности. См. Глоссарий.

n_jobsint, default=None

Количество параллельных задач для поиска соседей. None означает 1, если только не в joblib.parallel_backend контекст. -1 означает использование всех процессоров. См. Глоссарий для получения дополнительной информации.

Возвращает:
bandwidthfloat

Параметр ширины окна.

Примеры

>>> import numpy as np
>>> from sklearn.cluster import estimate_bandwidth
>>> X = np.array([[1, 1], [2, 1], [1, 0],
...               [4, 7], [3, 5], [3, 6]])
>>> estimate_bandwidth(X, quantile=0.5)
np.float64(1.61)