Spec-Zone.ru › scikit-learn

BernoulliNB

classsklearn.naive_bayes.BernoulliNB(*, alpha=1.0, force_alpha=True, binarize=0.0, fit_prior=True, class_prior=None)[исходный код]

Классификатор наивного Байеса для многомерных моделей Бернулли.

Как и MultinomialNB, этот классификатор подходит для дискретных данных. Разница состоит в том, что MultinomialNB работает с количеством вхождений, а BernoulliNB предназначен для двоичных/логических признаков.

Подробнее см. в Руководстве пользователя.

Параметры:
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.

binarizefloat или None, по умолчанию=0.0

Порог для бинаризации (преобразования в логические значения) признаков выборки. Если None, предполагается, что входные данные уже состоят из двоичных векторов.

fit_priorbool, по умолчанию=True

Следует ли обучать априорные вероятности классов. Если значение False, будет использоваться равномерное априорное распределение.

class_priorarray-like формы (n_classes,), по умолчанию=None

Априорные вероятности классов. Если заданы, априорные вероятности не корректируются с учетом данных.

Атрибуты:
class_count_ndarray формы (n_classes,)

Количество наблюдавшихся при обучении выборок для каждого класса. Если заданы веса выборок, это значение взвешивается с их учетом.

class_log_prior_ndarray формы (n_classes,)

Логарифм вероятности каждого класса (сглаженный).

classes_ndarray формы (n_classes,)

Метки классов, известные классификатору

feature_count_ndarray формы (n_classes, n_features)

Количество наблюдавшихся при обучении выборок для каждой пары (класс, признак). Если заданы веса выборок, это значение взвешивается с их учетом.

feature_log_prob_ndarray формы (n_classes, n_features)

Эмпирический логарифм вероятности признаков при заданном классе, P(x_i|y).

n_features_in_int

Количество признаков, обнаруженных во время fit.

Добавлено в версии 0.24.

feature_names_in_ndarray формы (n_features_in_,)

Названия признаков, обнаруженных во время fit. Определяется только в том случае, если X содержит названия признаков, представленные строками.

Добавлено в версии 1.0.

См. также

CategoricalNB

Классификатор наивного Байеса для категориальных признаков.

ComplementNB

Классификатор дополненного наивного Байеса, описанный в работе Rennie et al. (2003).

GaussianNB

Гауссовский наивный Байес (GaussianNB).

MultinomialNB

Классификатор наивного Байеса для мультиномиальных моделей.

Литература

C.D. Manning, P. Raghavan и H. Schuetze (2008). Введение в информационный поиск. Cambridge University Press, с. 234–265. https://nlp.stanford.edu/IR-book/html/htmledition/the-bernoulli-model-1.html

A. McCallum и K. Nigam (1998). Сравнение моделей событий для классификации текстов наивным Байесом. Материалы семинара AAAI/ICML-98 по обучению классификации текстов, с. 41–48.

V. Metsis, I. Androutsopoulos и G. Paliouras (2006). Фильтрация спама с помощью наивного Байеса — какой наивный Байес? 3-я конференция по электронной почте и борьбе со спамом (CEAS).

Примеры

>>> import numpy as np
>>> rng = np.random.RandomState(1)
>>> X = rng.randint(5, size=(6, 100))
>>> Y = np.array([1, 2, 3, 4, 4, 5])
>>> from sklearn.naive_bayes import BernoulliNB
>>> clf = BernoulliNB()
>>> clf.fit(X, Y)
BernoulliNB()
>>> print(clf.predict(X[2:3]))
[3]
fit(X, y, sample_weight=None)[исходный код]

Обучает классификатор наивного Байеса по данным X, y.

Параметры:
X{array-like, разреженная матрица} формы (n_samples, n_features)

Векторы для обучения, где n_samples — количество выборок, а n_features — количество признаков.

yarray-like формы (n_samples,)

Целевые значения.

sample_weightarray-like формы (n_samples,), по умолчанию=None

Веса отдельных выборок (1. для выборок без весов).

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

Возвращает сам экземпляр.

get_metadata_routing()[исходный код]

Получает маршрутизацию метаданных этого объекта.

Сведения о работе механизма маршрутизации см. в Руководстве пользователя.

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

Объект MetadataRequest, содержащий сведения о маршрутизации.

get_params(deep=True)[исходный код]

Получает параметры этого оценщика.

Параметры:
deepbool, по умолчанию=True

Если True, возвращает параметры этого оценщика и содержащихся в нем подобъектов, являющихся оценщиками.

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

Имена параметров, сопоставленные с их значениями.

partial_fit(X, y, classes=None, sample_weight=None)[исходный код]

Инкрементальное обучение на пакете выборок.

Предполагается, что этот метод будет последовательно вызываться несколько раз для разных частей набора данных, чтобы реализовать обучение вне ядра или онлайн-обучение.

Этот метод особенно полезен, когда весь набор данных слишком велик, чтобы целиком поместиться в памяти.

Этот метод имеет дополнительные накладные расходы на производительность, поэтому лучше вызывать partial_fit для как можно более крупных частей данных (если они помещаются в доступную память), чтобы уменьшить эти расходы.

Параметры:
X{array-like, разреженная матрица} формы (n_samples, n_features)

Векторы для обучения, где n_samples — количество выборок, а n_features — количество признаков.

yarray-like формы (n_samples,)

Целевые значения.

classesarray-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$') → BernoulliNB[исходный код]

Настраивает, следует ли запрашивать передачу метаданных методу 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экземпляр оценщика

Экземпляр оценщика.

set_partial_fit_request(*, classes:bool|None|str='$UNCHANGED$', sample_weight:bool|None|str='$UNCHANGED$') → BernoulliNB[исходный код]

Настраивает, следует ли запрашивать передачу метаданных методу partial_fit.

Обратите внимание, что этот метод имеет значение только тогда, когда данный оценщик используется как подоценщик внутри метаоценщика и маршрутизация метаданных включена с помощью enable_metadata_routing=True (см. sklearn.set_config). Сведения о работе механизма маршрутизации см. в Руководстве пользователя.

Для каждого параметра доступны следующие варианты:

  • True: метаданные запрашиваются и передаются в partial_fit, если они предоставлены. Если метаданные не предоставлены, запрос игнорируется.
  • False: метаданные не запрашиваются, и метаоценщик не передает их в partial_fit.
  • None: метаданные не запрашиваются, и метаоценщик выдаст ошибку, если пользователь их предоставит.
  • str: метаданные следует передавать метаоценщику под указанным псевдонимом вместо исходного имени.

Значение по умолчанию (sklearn.utils.metadata_routing.UNCHANGED) сохраняет существующий запрос. Это позволяет изменить запрос для одних параметров, не меняя его для остальных.

Добавлено в версии 1.3.

Параметры:
classesstr, 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$') → BernoulliNB[source]

Настройте, следует ли запрашивать передачу метаданных методу 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.

Возвращает:
selfобъект

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

Примеры из галереи

Хеширующее преобразование признаков с помощью полностью случайных деревьев

© 2007–2026 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.9/modules/generated/sklearn.naive_bayes.BernoulliNB.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API