ComplementNB#
- класс sklearn.naive_bayes.ComplementNB(*, alpha=1.0, force_alpha=True, fit_prior=True, class_prior=None, norm=False)[источник]#
Дополняющий наивный байесовский классификатор, описанный в Rennie et al. (2003).
Классификатор Complement Naive Bayes был разработан для исправления «строгих предположений», сделанных стандартным классификатором Multinomial Naive Bayes. Он особенно подходит для несбалансированных наборов данных.
Подробнее в Руководство пользователя.
Добавлено в версии 0.20.
- Параметры:
- alphafloat или array-like формы (n_features,), по умолчанию=1.0
Аддитивный параметр сглаживания (Лапласа/Лидстоуна) (установите alpha=0 и force_alpha=True для отключения сглаживания).
- force_alphabool, по умолчанию=True
Если False и alpha меньше 1e-10, он установит alpha в 1e-10. Если True, alpha останется неизменным. Это может вызвать числовые ошибки, если alpha слишком близок к 0.
Добавлено в версии 1.2.
Изменено в версии 1.4: Значение по умолчанию для
force_alphaизменено наTrue.- fit_priorbool, по умолчанию=True
Используется только в крайнем случае с одним классом в обучающем наборе.
- class_priorarray-like формы (n_classes,), по умолчанию=None
Априорные вероятности классов. Не используется.
- normbool, по умолчанию=False
Выполняется ли второе нормализация весов. Поведение по умолчанию соответствует реализациям в Mahout и Weka, которые не следуют полному алгоритму, описанному в Таблице 9 статьи.
- Атрибуты:
- class_count_ndarray формы (n_classes,)
Количество выборок, встреченных для каждого класса во время подгонки. Это значение взвешивается по весу выборки, если он предоставлен.
- class_log_prior_ndarray формы (n_classes,)
Сглаженная эмпирическая логарифмическая вероятность для каждого класса. Используется только в крайнем случае с одним классом в обучающем наборе.
- classes_ndarray формы (n_classes,)
Метки классов, известные классификатору
- feature_all_ndarray формы (n_features,)
Количество образцов, встреченных для каждого признака во время обучения. Это значение взвешивается весом образца, если он предоставлен.
- feature_count_ndarray формы (n_classes, n_features)
Количество образцов, встреченных для каждой (класс, признак) во время обучения. Это значение взвешивается по весу образца, если он предоставлен.
- feature_log_prob_ndarray формы (n_classes, n_features)
Эмпирические веса для дополнений классов.
- n_features_in_int
Количество признаков, замеченных во время fit.
Добавлено в версии 0.24.
- feature_names_in_ndarray формы (
n_features_in_,) Имена признаков, наблюдаемых во время fit. Определено только когда
Xимеет имена признаков, которые все являются строками.Добавлено в версии 1.0.
Смотрите также
BernoulliNBНаивный байесовский классификатор для многомерных моделей Бернулли.
CategoricalNBНаивный байесовский классификатор для категориальных признаков.
GaussianNBНаивный байесовский классификатор Гаусса.
MultinomialNBНаивный байесовский классификатор для мультиномиальных моделей.
Ссылки
Rennie, J. D., Shih, L., Teevan, J., & Karger, D. R. (2003). Tackling the poor assumptions of naive bayes text classifiers. In ICML (Vol. 3, pp. 616-623). https://people.csail.mit.edu/jrennie/papers/icml03-nb.pdf
Примеры
>>> import numpy as np >>> rng = np.random.RandomState(1) >>> X = rng.randint(5, size=(6, 100)) >>> y = np.array([1, 2, 3, 4, 5, 6]) >>> from sklearn.naive_bayes import ComplementNB >>> clf = ComplementNB() >>> clf.fit(X, y) ComplementNB() >>> print(clf.predict(X[2:3])) [3]
- fit(X, y, sample_weight=None)[источник]#
Обучает классификатор наивного Байеса по X, y.
- Параметры:
- X{array-like, sparse matrix} формы (n_samples, n_features)
Обучающие векторы, где
n_samples— это количество образцов иn_featuresэто количество признаков.- yarray-like формы (n_samples,)
Целевые значения.
- sample_weightarray-like формы (n_samples,), по умолчанию=None
Веса, применяемые к отдельным образцам (1. для невзвешенных).
- Возвращает:
- selfobject
Возвращает сам экземпляр.
- 6332()[источник]#
Получить маршрутизацию метаданных этого объекта.
Пожалуйста, проверьте Руководство пользователя о том, как работает механизм маршрутизации.
- Возвращает:
- маршрутизацияMetadataRequest
A
MetadataRequestИнкапсуляция информации о маршрутизации.
- get_params(глубокий=True)[источник]#
Получить параметры для этого оценщика.
- Параметры:
- глубокийbool, по умолчанию=True
Если True, вернет параметры для этого оценщика и вложенных подобъектов, которые являются оценщиками.
- Возвращает:
- paramsdict
Имена параметров, сопоставленные с их значениями.
- partial_fit(X, y, классы=None, sample_weight=None)[источник]#
Инкрементное обучение на пакете образцов.
Этот метод предназначен для многократного последовательного вызова на различных частях набора данных для реализации внеядерного или онлайн-обучения.
Это особенно полезно, когда весь набор данных слишком велик, чтобы поместиться в память сразу.
Этот метод имеет некоторую производительную нагрузку, поэтому лучше вызывать partial_fit на блоках данных, которые как можно больше (при условии, что они помещаются в память), чтобы скрыть нагрузку.
- Параметры:
- X{array-like, sparse matrix} формы (n_samples, n_features)
Обучающие векторы, где
n_samples— это количество образцов иn_featuresэто количество признаков.- yarray-like формы (n_samples,)
Целевые значения.
- классыarray-like формы (n_classes,), по умолчанию=None
Список всех классов, которые могут появиться в векторе y.
Должен быть предоставлен при первом вызове partial_fit, может быть опущен в последующих вызовах.
- sample_weightarray-like формы (n_samples,), по умолчанию=None
Веса, применяемые к отдельным образцам (1. для невзвешенных).
- Возвращает:
- selfobject
Возвращает сам экземпляр.
- predict(X)[источник]#
Выполнить классификацию на массиве тестовых векторов X.
- Параметры:
- Xarray-like формы (n_samples, n_features)
Входные образцы.
- Возвращает:
- Cndarray формы (n_samples,)
Предсказанные целевые значения для X.
- predict_joint_log_proba(X)[источник]#
Возвращает совместные оценки логарифмической вероятности для тестового вектора X.
Для каждой строки x из X и класса y совместная логарифмическая вероятность задается как
log P(x, y) = log P(y) + log P(x|y),гдеlog P(y)является априорной вероятностью класса иlog P(x|y)является условной вероятностью класса.- Параметры:
- Xarray-like формы (n_samples, n_features)
Входные образцы.
- Возвращает:
- Cndarray формы (n_samples, n_classes)
Возвращает совместную логарифмическую вероятность выборок для каждого класса в модели. Столбцы соответствуют классам в отсортированном порядке, как они появляются в атрибуте classes_.
- predict_log_proba(X)[источник]#
Возвращает оценки логарифмической вероятности для тестового вектора X.
- Параметры:
- Xarray-like формы (n_samples, n_features)
Входные образцы.
- Возвращает:
- Carray-like формы (n_samples, n_classes)
Возвращает логарифм вероятности образцов для каждого класса в модели. Столбцы соответствуют классам в отсортированном порядке, как они появляются в атрибуте classes_.
- predict_proba(X)[источник]#
Возвращает оценки вероятности для тестового вектора X.
- Параметры:
- Xarray-like формы (n_samples, n_features)
Входные образцы.
- Возвращает:
- Carray-like формы (n_samples, n_classes)
Возвращает вероятность выборок для каждого класса в модели. Столбцы соответствуют классам в отсортированном порядке, как они появляются в атрибуте 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_fit_request(*, sample_weight: bool | None | str = '$UNCHANGED$') ComplementNB[источник]#
Настроить, следует ли запрашивать передачу метаданных в
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). Последние имеют параметры видачтобы можно было обновить каждый компонент вложенного объекта.__ - Параметры:
- **paramsdict
Параметры оценщика.
- Возвращает:
- selfэкземпляр estimator
Экземпляр оценщика.
- set_partial_fit_request(*, классы: bool | None | str = '$UNCHANGED$', sample_weight: bool | None | str = '$UNCHANGED$') ComplementNB[источник]#
Настроить, следует ли запрашивать передачу метаданных в
partial_fitметод.Обратите внимание, что этот метод актуален только тогда, когда этот оценщик используется как под-оценщик внутри мета-оценщик и маршрутизация метаданных включена с помощью
enable_metadata_routing=True(см.sklearn.set_config). Пожалуйста, проверьте Руководство пользователя о том, как работает механизм маршрутизации.Варианты для каждого параметра:
True: запрашиваются метаданные и передаютсяpartial_fitесли предоставлено. Запрос игнорируется, если метаданные не предоставлены.False: метаданные не запрашиваются, и мета-оценщик не передаст их вpartial_fit.None: метаданные не запрашиваются, и мета-оценщик выдаст ошибку, если пользователь предоставит их.str: метаданные должны передаваться мета-оценщику с этим заданным псевдонимом вместо исходного имени.
По умолчанию (
sklearn.utils.metadata_routing.UNCHANGED) сохраняет существующий запрос. Это позволяет изменять запрос для некоторых параметров, но не для других.Добавлено в версии 1.3.
- Параметры:
- классыstr, True, False или None, по умолчанию=sklearn.utils.metadata_routing.UNCHANGED
Маршрутизация метаданных для
classesпараметр вpartial_fit.- sample_weightstr, True, False или None, по умолчанию=sklearn.utils.metadata_routing.UNCHANGED
Маршрутизация метаданных для
sample_weightпараметр вpartial_fit.
- Возвращает:
- selfobject
Обновленный объект.
- set_score_request(*, sample_weight: bool | None | str = '$UNCHANGED$') ComplementNB[источник]#
Настроить, следует ли запрашивать передачу метаданных в
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
Обновленный объект.
Примеры галереи#
Примерный пайплайн для извлечения и оценки текстовых признаков
Классификация текстовых документов с использованием разреженных признаков