KernelDensity
- classsklearn.neighbors.KernelDensity(*, bandwidth=1.0, algorithm='auto', kernel='gaussian', metric='euclidean', atol=0, rtol=0, breadth_first=True, leaf_size=40, metric_params=None)[исходный код]
-
Оценка плотности ядра.
Подробнее см. в Руководстве пользователя.
- Параметры:
-
- bandwidthfloat или {“scott”, “silverman”}, по умолчанию=1.0
-
Ширина полосы ядра. Если bandwidth — число с плавающей точкой, оно задаёт ширину полосы ядра. Если bandwidth — строка, используется один из методов оценки.
- algorithm{‘kd_tree’, ‘ball_tree’, ‘auto’}, по умолчанию=’auto’
-
Используемый алгоритм дерева.
- kernel{‘gaussian’, ‘tophat’, ‘epanechnikov’, ‘exponential’, ‘linear’, ‘cosine’}, по умолчанию=’gaussian’
-
Используемое ядро.
- metricstr, по умолчанию=’euclidean’
-
Метрика для вычисления расстояния. Допустимые значения метрики см. в документации scipy.spatial.distance и в списке метрик в
distance_metrics.Не все метрики допустимы для всех алгоритмов: см. документацию
BallTreeиKDTree. Обратите внимание, что нормализация результата оценки плотности корректна только для метрики евклидова расстояния. - atolfloat, по умолчанию=0
-
Требуемая абсолютная точность результата. Большая точность обычно обеспечивает более быстрое выполнение.
- rtolfloat, по умолчанию=0
-
Требуемая относительная точность результата. Большая точность обычно обеспечивает более быстрое выполнение.
- breadth_firstbool, по умолчанию=True
-
Если значение истинно (по умолчанию), для решения задачи используется обход в ширину. В противном случае используется обход в глубину.
- leaf_sizeint, по умолчанию=40
-
Размер листа базового дерева. Подробнее см. в документации
BallTreeилиKDTree. - metric_paramsdict, по умолчанию=None
-
Дополнительные параметры, передаваемые дереву для использования с метрикой. Дополнительную информацию см. в документации
BallTreeилиKDTree.
- Атрибуты:
-
- n_features_in_int
-
Количество признаков, обнаруженных во время обучения.
Добавлено в версии 0.24.
-
tree_экземпляр
BinaryTree -
Алгоритм дерева для быстрого решения обобщённых задач с N точками.
-
feature_names_in_ndarray формы (
n_features_in_,) -
Имена признаков, обнаруженных во время обучения. Определяется, только если
Xсодержит имена признаков, представленные строками. - bandwidth_float
-
Значение ширины полосы, заданное непосредственно параметром bandwidth или оценённое с помощью метода ‘scott’ или ‘silverman’.
Добавлено в версии 1.0.
См. также
sklearn.neighbors.KDTree-
K-мерное дерево для быстрого решения обобщённых задач с N точками.
sklearn.neighbors.BallTree-
Шаровое дерево для быстрого решения обобщённых задач с N точками.
Примеры
Вычисление оценки плотности с гауссовым ядром и фиксированной шириной полосы.
>>> from sklearn.neighbors import KernelDensity >>> import numpy as np >>> rng = np.random.RandomState(42) >>> X = rng.random_sample((100, 3)) >>> kde = KernelDensity(kernel='gaussian', bandwidth=0.5).fit(X) >>> log_density = kde.score_samples(X[:3]) >>> log_density array([-1.52955942, -1.51462041, -1.60244657])
- fit(X, y=None, sample_weight=None)[исходный код]
-
Обучить модель оценки плотности ядра на данных.
- Параметры:
-
- Xмассивоподобный объект формы (n_samples, n_features)
-
Список точек данных размерности n_features. Каждая строка соответствует одной точке данных.
- yNone
-
Игнорируется. Этот параметр существует только для совместимости с
Pipeline. - sample_weightмассивоподобный объект формы (n_samples,), по умолчанию=None
-
Список весов выборок, соответствующих данным X.
Добавлено в версии 0.20.
- Возвращает:
-
- selfobject
-
Возвращает сам экземпляр.
- get_metadata_routing()[исходный код]
-
Получить правила маршрутизации метаданных этого объекта.
Ознакомьтесь с Руководством пользователя, чтобы узнать, как работает механизм маршрутизации.
- Возвращает:
-
- routingMetadataRequest
-
Объект
MetadataRequest, содержащий информацию о маршрутизации.
- get_params(deep=True)[исходный код]
-
Получить параметры этого оценивателя.
- Параметры:
-
- deepbool, по умолчанию=True
-
Если True, будут возвращены параметры этого оценивателя и содержащихся в нём подобъектов, являющихся оценивателями.
- Возвращает:
-
- paramsdict
-
Имена параметров, сопоставленные их значениям.
- sample(n_samples=1, random_state=None)[исходный код]
-
Создать случайные выборки на основе модели.
В настоящее время этот метод реализован только для гауссовых ядер и ядер tophat.
- Параметры:
-
- n_samplesint, по умолчанию=1
-
Количество создаваемых выборок.
- random_stateint, экземпляр RandomState или None, по умолчанию=None
-
Определяет генерацию случайных чисел для создания случайных выборок. Передайте целое число, чтобы получать воспроизводимые результаты при нескольких вызовах функции. См. глоссарий.
- Возвращает:
-
- Xмассивоподобный объект формы (n_samples, n_features)
-
Список выборок.
- score(X, y=None)[исходный код]
-
Вычислить полное логарифмическое правдоподобие модели.
- Параметры:
-
- Xмассивоподобный объект формы (n_samples, n_features)
-
Список точек данных размерности n_features. Каждая строка соответствует одной точке данных.
- yNone
-
Игнорируется. Этот параметр существует только для совместимости с
Pipeline.
- Возвращает:
-
- logprobfloat
-
Полное логарифмическое правдоподобие данных в X. Значение нормировано так, чтобы представлять плотность вероятности, поэтому для данных высокой размерности оно будет низким.
- score_samples(X)[исходный код]
-
Вычислить логарифмическое правдоподобие каждой выборки по модели.
- Параметры:
-
- Xмассивоподобный объект формы (n_samples, n_features)
-
Массив точек для запроса. Последняя размерность должна совпадать с размерностью обучающих данных (n_features).
- Возвращает:
-
- densityndarray формы (n_samples,)
-
Логарифмическое правдоподобие каждой выборки в
X. Значения нормированы так, чтобы представлять плотности вероятности, поэтому для данных высокой размерности они будут низкими.
- set_fit_request(*, sample_weight:bool|None|str='$UNCHANGED$') KernelDensity[исходный код]
-
Настроить, следует ли запрашивать передачу метаданных методу
fit.Обратите внимание, что этот метод имеет значение, только если данный оцениватель используется как подчинённый оцениватель внутри метаоценивателя и маршрутизация метаданных включена с помощью
enable_metadata_routing=True(см.sklearn.set_config). Ознакомьтесь с Руководством пользователя, чтобы узнать, как работает механизм маршрутизации.Для каждого параметра доступны следующие варианты:
-
True: метаданные запрашиваются и передаются вfit, если они предоставлены. Если метаданные не предоставлены, запрос игнорируется. -
False: метаданные не запрашиваются, и метаоцениватель не передаёт их вfit. -
None: метаданные не запрашиваются, и метаоцениватель вызовет ошибку, если пользователь их предоставит. -
str: метаданные следует передавать метаоценивателю под указанным псевдонимом вместо исходного имени.
Значение по умолчанию (
sklearn.utils.metadata_routing.UNCHANGED) сохраняет существующий запрос. Это позволяет изменить запрос для одних параметров, не меняя его для остальных.Добавлено в версии 1.3.
- Параметры:
-
- sample_weightstr, True, False или None, по умолчанию=sklearn.utils.metadata_routing.UNCHANGED
-
Маршрутизация метаданных для параметра
sample_weightвfit.
- Возвращает:
-
- selfobject
-
Обновлённый объект.
-
- set_params(**params)[исходный код]
-
Задать параметры этого оценивателя.
Метод работает как с простыми оценивателями, так и с вложенными объектами (например,
Pipeline). У последних параметры имеют вид<component>__<parameter>, что позволяет обновлять каждый компонент вложенного объекта.- Параметры:
-
- **paramsdict
-
Параметры оценивателя.
- Возвращает:
-
- selfэкземпляр оценивателя
-
Экземпляр оценивателя.
Примеры из галереи
© 2007–2026 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.9/modules/generated/sklearn.neighbors.KernelDensity.html