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