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

Обновленный объект.