NearestCentroid#
- класс sklearn.neighbors.NearestCentroid(метрика='euclidean', *, shrink_threshold=None, априорные вероятности='uniform')[источник]#
Классификатор ближайшего центроида.
Каждый класс представлен своим центроидом, тестовые образцы классифицируются к классу с ближайшим центроидом.
Подробнее в Руководство пользователя.
- Параметры:
- метрика{“euclidean”, “manhattan”}, по умолчанию=”euclidean”
Метрика для вычисления расстояния.
Если
metric="euclidean", центроид для выборок, соответствующих каждому классу, является средним арифметическим, которое минимизирует сумму квадратов расстояний L1. Еслиmetric="manhattan", центроид - это медиана по признакам, которая минимизирует сумму расстояний L1.Изменено в версии 1.5: Все метрики, кроме
"euclidean"и"manhattan"были устаревшими и теперь вызывают ошибку.Изменено в версии 0.19:
metric='precomputed'был устаревшим и теперь вызывает ошибку- shrink_thresholdfloat, по умолчанию=None
Порог для сжатия центроидов для удаления признаков.
- априорные вероятности{“uniform”, “empirical”} или array-like формы (n_classes,), по умолчанию=”uniform”
Априорные вероятности классов. По умолчанию пропорции классов выводятся из обучающих данных.
Добавлено в версии 1.6.
- Атрибуты:
- centroids_array-like формы (n_classes, n_features)
Центроид каждого класса.
- classes_массив формы (n_classes,)
Уникальные метки классов.
- n_features_in_int
Количество признаков, замеченных во время fit.
Добавлено в версии 0.24.
- feature_names_in_ndarray формы (
n_features_in_,) Имена признаков, наблюдаемых во время fit. Определено только когда
Xимеет имена признаков, которые все являются строками.Добавлено в версии 1.0.
- deviations_ndarray формы (n_classes, n_features)
Отклонения (или сжатия) центроидов каждого класса от общего центроида. Равно уравнению (18.4), если
shrink_threshold=None, иначе (18.5) стр. 653 из [2]. Может использоваться для идентификации признаков, используемых для классификации.Добавлено в версии 1.6.
- within_class_std_dev_ndarray формы (n_features,)
Объединенное или внутриклассовое стандартное отклонение входных данных.
Добавлено в версии 1.6.
- class_prior_ndarray формы (n_classes,)
Априорные вероятности классов.
Добавлено в версии 1.6.
Смотрите также
KNeighborsClassifierКлассификатор ближайших соседей.
Примечания
При использовании для классификации текстов с векторами tf-idf этот классификатор также известен как классификатор Роккио.
Ссылки
[1] Tibshirani, R., Hastie, T., Narasimhan, B., & Chu, G. (2002). Diagnosis of multiple cancer types by shrunken centroids of gene expression. Proceedings of the National Academy of Sciences of the United States of America, 99(10), 6567-6572. The National Academy of Sciences.
[2] Hastie, T., Tibshirani, R., Friedman, J. (2009). The Elements of Statistical Learning Data Mining, Inference, and Prediction. 2nd Edition. New York, Springer.
Примеры
>>> from sklearn.neighbors import NearestCentroid >>> import numpy as np >>> X = np.array([[-1, -1], [-2, -1], [-3, -2], [1, 1], [2, 1], [3, 2]]) >>> y = np.array([1, 1, 1, 2, 2, 2]) >>> clf = NearestCentroid() >>> clf.fit(X, y) NearestCentroid() >>> print(clf.predict([[-0.8, -1]])) [1]
- decision_function(X)[источник]#
Применить функцию принятия решений к массиву выборок.
- Параметры:
- X{array-like, sparse matrix} формы (n_samples, n_features)
Массив образцов (тестовых векторов).
- Возвращает:
- y_scoresndarray формы (n_samples,) или (n_samples, n_classes)
Значения решающей функции, связанные с каждым классом, для каждого образца. В случае двух классов форма равна
(n_samples,), давая логарифм отношения правдоподобия для положительного класса.
- fit(X, y)[источник]#
Обучить модель NearestCentroid в соответствии с предоставленными обучающими данными.
- Параметры:
- X{array-like, sparse matrix} формы (n_samples, n_features)
Вектор обучения, где
n_samples— это количество образцов иn_features— это количество признаков. Обратите внимание, что сжатие центроидов нельзя использовать с разреженными матрицами.- yarray-like формы (n_samples,)
Целевые значения.
- Возвращает:
- selfobject
Обученный оценщик.
- 6332()[источник]#
Получить маршрутизацию метаданных этого объекта.
Пожалуйста, проверьте Руководство пользователя о том, как работает механизм маршрутизации.
- Возвращает:
- маршрутизацияMetadataRequest
A
MetadataRequestИнкапсуляция информации о маршрутизации.
- get_params(глубокий=True)[источник]#
Получить параметры для этого оценщика.
- Параметры:
- глубокийbool, по умолчанию=True
Если True, вернет параметры для этого оценщика и вложенных подобъектов, которые являются оценщиками.
- Возвращает:
- paramsdict
Имена параметров, сопоставленные с их значениями.
- predict(X)[источник]#
Выполнить классификацию на массиве тестовых векторов
X.Предсказанный класс
Cдля каждого образца вXвозвращается.- Параметры:
- X{array-like, sparse matrix} формы (n_samples, n_features)
Входные данные.
- Возвращает:
- y_predndarray формы (n_samples,)
Предсказанные классы.
- predict_log_proba(X)[источник]#
Оценить логарифмические вероятности классов.
- Параметры:
- X{array-like, sparse matrix} формы (n_samples, n_features)
Входные данные.
- Возвращает:
- y_log_probandarray формы (n_samples, n_classes)
Оцененные логарифмические вероятности.
- predict_proba(X)[источник]#
Оценка вероятностей классов.
- Параметры:
- X{array-like, sparse matrix} формы (n_samples, n_features)
Входные данные.
- Возвращает:
- y_probandarray формы (n_samples, n_classes)
Оценка вероятности выборки для каждого класса в модели, где классы упорядочены как в
self.classes_.
- score(X, y, sample_weight=None)[источник]#
Возвращает точность на предоставленных данных и метках.
В многометочной классификации это точность подмножества, которая является строгой метрикой, поскольку требует для каждого образца правильного предсказания каждого набора меток.
- Параметры:
- Xarray-like формы (n_samples, n_features)
Тестовые выборки.
- yarray-like формы (n_samples,) или (n_samples, n_outputs)
Истинные метки для
X.- sample_weightarray-like формы (n_samples,), по умолчанию=None
Веса выборок.
- Возвращает:
- scorefloat
Средняя точность
self.predict(X)относительноy.
- set_params(**params)[источник]#
Установить параметры этого оценщика.
Метод работает как на простых оценщиках, так и на вложенных объектах (таких как
Pipeline). Последние имеют параметры видачтобы можно было обновить каждый компонент вложенного объекта.__ - Параметры:
- **paramsdict
Параметры оценщика.
- Возвращает:
- selfэкземпляр estimator
Экземпляр оценщика.
- set_score_request(*, sample_weight: bool | None | str = '$UNCHANGED$') NearestCentroid[источник]#
Настроить, следует ли запрашивать передачу метаданных в
scoreметод.Обратите внимание, что этот метод актуален только тогда, когда этот оценщик используется как под-оценщик внутри мета-оценщик и маршрутизация метаданных включена с помощью
enable_metadata_routing=True(см.sklearn.set_config). Пожалуйста, проверьте Руководство пользователя о том, как работает механизм маршрутизации.Варианты для каждого параметра:
True: запрашиваются метаданные и передаютсяscoreесли предоставлено. Запрос игнорируется, если метаданные не предоставлены.False: метаданные не запрашиваются, и мета-оценщик не передаст их вscore.None: метаданные не запрашиваются, и мета-оценщик выдаст ошибку, если пользователь предоставит их.str: метаданные должны передаваться мета-оценщику с этим заданным псевдонимом вместо исходного имени.
По умолчанию (
sklearn.utils.metadata_routing.UNCHANGED) сохраняет существующий запрос. Это позволяет изменять запрос для некоторых параметров, но не для других.Добавлено в версии 1.3.
- Параметры:
- sample_weightstr, True, False или None, по умолчанию=sklearn.utils.metadata_routing.UNCHANGED
Маршрутизация метаданных для
sample_weightпараметр вscore.
- Возвращает:
- selfobject
Обновленный объект.
Примеры галереи#
Классификация текстовых документов с использованием разреженных признаков