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)[source]

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

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

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

Параметры:
alphafloat или массив-подобный объект формы (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_priorмассив-подобный объект формы (n_classes,), по умолчанию=None

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

Атрибуты:
class_count_массив-подобный объект формы (n_classes,)

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

class_log_prior_массив-подобный объект формы (n_classes,)

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

classes_массив-подобный объект формы (n_classes,)

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

feature_count_массив-подобный объект формы (n_classes, n_features)

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

feature_log_prob_массив-подобный объект формы (n_classes, n_features)

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

n_features_in_int

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

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

feature_names_in_массив-подобный объект формы (n_features_in_,)

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

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

См. также

CategoricalNB

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

ComplementNB

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

GaussianNB

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

MultinomialNB

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

Ссылки

C.D. Manning, P. Raghavan and H. Schuetze (2008). Introduction to Information Retrieval. Cambridge University Press, pp. 234-265. https://nlp.stanford.edu/IR-book/html/htmledition/the-bernoulli-model-1.html

A. McCallum and K. Nigam (1998). A comparison of event models for naive Bayes text classification. Proc. AAAI/ICML-98 Workshop on Learning for Text Categorization, pp. 41-48.

V. Metsis, I. Androutsopoulos and G. Paliouras (2006). Spam filtering with naive Bayes – Which naive Bayes? 3rd Conf. on Email and Anti-Spam (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)[source]

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

Параметры:
X{array-like, sparse matrix} формы (n_samples, n_features)

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

yмассив-подобный объект формы (n_samples,)

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

sample_weightмассив-подобный объект формы (n_samples,), по умолчанию=None

Веса, применяемые к отдельным образцам (1. для невзвешенных).

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

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

get_metadata_routing()[source]

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

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

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

MetadataRequest, содержащий информацию о маршрутизации.

get_params(deep=True)[source]

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

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

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

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

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

partial_fit(X, y, classes=None, sample_weight=None)[source]

Инкрементная подгонка на наборе выборок.

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

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

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

Параметры:
X{array-like, sparse matrix} of shape (n_samples, n_features)

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

yarray-like of shape (n_samples,)

Значения целевой переменной.

classesarray-like of shape (n_classes,), default=None

Список всех классов, которые могут потенциально появиться в векторе y.

Должен быть предоставлен при первом вызове partial_fit, может быть опущен в последующих вызовах.

sample_weightarray-like of shape (n_samples,), default=None

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

Возвращаемые значения:
selfobject

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

predict(X)[source]

Выполняет классификацию на массиве векторов входных данных X.

Параметры:
Xarray-like of shape (n_samples, n_features)

Входные выборки.

Возвращаемые значения:
Cndarray of shape (n_samples,)

Предсказанные значения целевой переменной для X.

predict_joint_log_proba(X)[source]

Возвращает оценки совместной логарифмической вероятности для вектора входных данных X.

Для каждой строки x из X и класса y, совместная логарифмическая вероятность задаётся как log P(x, y) = log P(y) + log P(x|y),, где log P(y) — вероятность класса, а log P(x|y) — условная вероятность класса.

Параметры:
Xarray-like of shape (n_samples, n_features)

Входные выборки.

Возвращаемые значения:
Cndarray of shape (n_samples, n_classes)

Возвращает совместную логарифмическую вероятность выборок для каждого класса в модели. Столбцы соответствуют классам в отсортированном порядке, как они появляются в атрибуте classes_.

predict_log_proba(X)[source]

Возвращает оценки логарифмической вероятности для вектора входных данных X.

Параметры:
Xarray-like of shape (n_samples, n_features)

Входные выборки.

Возвращаемые значения:
Carray-like of shape (n_samples, n_classes)

Возвращает логарифмическую вероятность выборок для каждого класса в модели. Столбцы соответствуют классам в отсортированном порядке, как они появляются в атрибуте classes_.

predict_proba(X)[source]

Возвращает оценки вероятности для вектора входных данных X.

Параметры:
Xarray-like of shape (n_samples, n_features)

Входные выборки.

Возвращаемые значения:
Carray-like of shape (n_samples, n_classes)

Возвращает вероятность выборок для каждого класса в модели. Столбцы соответствуют классам в отсортированном порядке, как они появляются в атрибуте classes_.

score(X, y, sample_weight=None)[source]

Возвращает среднюю точность на заданных тестовых данных и метках.

В многоклассовой классификации это точность подмножества, которая является жёсткой метрикой, так как требуется, чтобы для каждой выборки каждый набор меток был предсказан правильно.

Параметры:
Xarray-like of shape (n_samples, n_features)

Тестовые выборки.

yarray-like of shape (n_samples,) or (n_samples, n_outputs)

Истинные метки для X.

sample_weightarray-like of shape (n_samples,), default=None

Веса выборок.

Возвращаемые значения:
scorefloat

Средняя точность self.predict(X) по отношению к y.

set_fit_request(*, sample_weight:bool|None|str='$UNCHANGED$') → BernoulliNB[source]

Запрос метаданных, переданных методу fit.

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

Возможные варианты для каждого параметра:

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

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

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

Примечание

Этот метод актуален только если данный оценщик используется в качестве под-оценщика мета-оценщика, например, внутри Pipeline. В противном случае он не оказывает никакого влияния.

Parameters:
sample_weightstr, True, False, or None, default=sklearn.utils.metadata_routing.UNCHANGED

Маршрутизация метаданных для параметра sample_weight в методе fit.

Returns:
selfobject

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

set_params(**params)[source]

Устанавливает параметры этого оценщика.

Метод работает как с простыми оценщиками, так и с вложенными объектами (такими как Pipeline). Последние имеют параметры вида <component>__<parameter>, чтобы можно было обновлять каждый компонент вложенного объекта.

Parameters:
**paramsdict

Параметры оценщика.

Returns:
selfestimator instance

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

set_partial_fit_request(*, classes:bool|None|str='$UNCHANGED$', sample_weight:bool|None|str='$UNCHANGED$') → BernoulliNB[source]

Запрос метаданных, переданных методу partial_fit.

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

Возможные варианты для каждого параметра:

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

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

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

Примечание

Этот метод актуален только если данный оценщик используется в качестве под-оценщика мета-оценщика, например, внутри Pipeline. В противном случае он не оказывает никакого влияния.

Parameters:
classesstr, True, False, or None, default=sklearn.utils.metadata_routing.UNCHANGED

Маршрутизация метаданных для параметра classes в методе partial_fit.

sample_weightstr, True, False, or None, default=sklearn.utils.metadata_routing.UNCHANGED

Маршрутизация метаданных для параметра sample_weight в методе partial_fit.

Returns:
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.

Примечание

Этот метод актуален только в том случае, если этот оценщик используется в качестве под-оценщика мета-оценщика, например, внутри Pipeline. В противном случае он не оказывает влияния.

Parameters:
sample_weightstr, True, False, or None, default=sklearn.utils.metadata_routing.UNCHANGED

Маршрутизация метаданных для параметра sample_weight в score.

Returns:
selfobject

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

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

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

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

Spec-Zone.ru

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