CategoricalNB
- classsklearn.naive_bayes.CategoricalNB(*, alpha=1.0, force_alpha=True, fit_prior=True, class_prior=None, min_categories=None)[исходный код]
-
Классификатор наивного Байеса для категориальных признаков.
Классификатор категориального наивного Байеса подходит для классификации с дискретными признаками, имеющими категориальное распределение. Категории каждого признака выбираются из категориального распределения.
Подробнее см. в руководстве пользователя.
- Параметры:
-
- alphafloat, default=1.0
-
Параметр аддитивного сглаживания (Лапласа/Лидстоуна) (установите alpha=0 и force_alpha=True, чтобы отключить сглаживание).
- force_alphabool, default=True
-
Если False и alpha меньше 1e-10, значение alpha будет установлено равным 1e-10. Если True, значение alpha останется без изменений. Если alpha слишком близко к 0, это может привести к численным ошибкам.
Добавлено в версии 1.2.
Изменено в версии 1.4: Значение по умолчанию для
force_alphaизменено наTrue. - fit_priorbool, default=True
-
Определяет, следует ли оценивать априорные вероятности классов. Если значение false, будет использоваться равномерное априорное распределение.
- class_priorarray-like of shape (n_classes,), default=None
-
Априорные вероятности классов. Если заданы, априорные вероятности не корректируются на основе данных.
- min_categoriesint or array-like of shape (n_features,), default=None
-
Минимальное количество категорий для каждого признака.
- целое число: задает минимальное количество категорий для каждого признака равным
n_categories. - array-like: shape (n_features,), где
n_categories[i]задает минимальное количество категорий для i-го столбца входных данных. - None (по умолчанию): автоматически определяет количество категорий на основе обучающих данных.
Добавлено в версии 0.24.
- целое число: задает минимальное количество категорий для каждого признака равным
- Атрибуты:
-
- category_count_list of arrays of shape (n_features,)
-
Для каждого признака содержит массивы формы (n_classes, n_categories соответствующего признака). Каждый массив содержит количество наблюдавшихся примеров для каждого класса и категории данного признака.
- class_count_ndarray of shape (n_classes,)
-
Количество наблюдавшихся примеров для каждого класса во время обучения. Если задан вес примера, это значение взвешивается с его учетом.
- class_log_prior_ndarray of shape (n_classes,)
-
Сглаженная эмпирическая логарифмическая вероятность для каждого класса.
- classes_ndarray of shape (n_classes,)
-
Метки классов, известные классификатору
- feature_log_prob_list of arrays of shape (n_features,)
-
Для каждого признака содержит массивы формы (n_classes, n_categories соответствующего признака). Каждый массив содержит эмпирическую логарифмическую вероятность категорий при заданных признаке и классе,
P(x_i|y). - n_features_in_int
-
Количество признаков, обнаруженных во время обучения.
Добавлено в версии 0.24.
-
feature_names_in_ndarray of shape (
n_features_in_,) -
Названия признаков, обнаруженных во время обучения. Определяется только в том случае, если
Xсодержит названия признаков, являющиеся строками.Добавлено в версии 1.0.
- n_categories_ndarray of shape (n_features,), dtype=np.int64
-
Количество категорий для каждого признака. Это значение определяется на основе данных или задается минимальным количеством категорий.
Добавлено в версии 0.24.
См. также
BernoulliNB-
Классификатор наивного Байеса для многомерных моделей Бернулли.
ComplementNB-
Классификатор дополнительного наивного Байеса.
GaussianNB-
Гауссовский наивный Байес.
MultinomialNB-
Классификатор наивного Байеса для мультиномиальных моделей.
Примеры
>>> 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 CategoricalNB >>> clf = CategoricalNB() >>> clf.fit(X, y) CategoricalNB() >>> print(clf.predict(X[2:3])) [3]
- fit(X, y, sample_weight=None)[исходный код]
-
Обучает классификатор наивного Байеса на основе X и y.
- Параметры:
-
- X{array-like, sparse matrix} of shape (n_samples, n_features)
-
Обучающие векторы, где
n_samples— количество примеров, аn_features— количество признаков. Предполагается, что каждый признак X имеет отдельное категориальное распределение. Также предполагается, что все категории каждого признака представлены числами от 0 до n - 1, где n — общее количество категорий данного признака. Этого можно, например, добиться с помощью OrdinalEncoder. - yarray-like of shape (n_samples,)
-
Целевые значения.
- sample_weightarray-like of shape (n_samples,), default=None
-
Веса, применяемые к отдельным примерам (1. — без взвешивания).
- Возвращает:
-
- selfobject
-
Возвращает сам экземпляр.
- get_metadata_routing()[исходный код]
-
Получает настройки маршрутизации метаданных этого объекта.
О том, как работает механизм маршрутизации, см. в руководстве пользователя.
- Возвращает:
-
- routingMetadataRequest
-
Объект
MetadataRequest, содержащий информацию о маршрутизации.
- get_params(deep=True)[исходный код]
-
Получает параметры этого оценщика.
- Параметры:
-
- deepbool, default=True
-
Если True, возвращает параметры этого оценщика и содержащихся в нем подобъектов, которые являются оценщиками.
- Возвращает:
-
- paramsdict
-
Имена параметров и соответствующие им значения.
- partial_fit(X, y, classes=None, sample_weight=None)[исходный код]
-
Инкрементальное обучение на пакете примеров.
Предполагается, что этот метод будет последовательно вызываться несколько раз для разных частей набора данных, чтобы реализовать обучение вне ядра или онлайн-обучение.
Это особенно полезно, когда весь набор данных слишком велик, чтобы целиком поместиться в памяти.
Этот метод создает дополнительные вычислительные затраты, поэтому для их нивелирования лучше вызывать partial_fit для максимально крупных частей данных (при условии, что они помещаются в доступную память).
- Параметры:
-
- X{array-like, sparse matrix} of shape (n_samples, n_features)
-
Обучающие векторы, где
n_samples— количество примеров, аn_features— количество признаков. Предполагается, что каждый признак X имеет отдельное категориальное распределение. Также предполагается, что все категории каждого признака представлены числами от 0 до n - 1, где n — общее количество категорий данного признака. Этого можно, например, добиться с помощью OrdinalEncoder. - 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)[исходный код]
-
Выполняет классификацию массива тестовых векторов X.
- Параметры:
-
- Xarray-like of shape (n_samples, n_features)
-
Входные примеры.
- Возвращает:
-
- Cndarray of shape (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 of shape (n_samples, n_features)
-
Входные примеры.
- Возвращает:
-
- Cndarray of shape (n_samples, n_classes)
-
Возвращает совместную логарифмическую вероятность примеров для каждого класса модели. Столбцы соответствуют классам в отсортированном порядке, в котором они указаны в атрибуте classes_.
- predict_log_proba(X)[исходный код]
-
Возвращает оценки логарифмической вероятности для тестового вектора X.
- Параметры:
-
- Xarray-like of shape (n_samples, n_features)
-
Входные примеры.
- Возвращает:
-
- Carray-like of shape (n_samples, n_classes)
-
Возвращает логарифмическую вероятность примеров для каждого класса модели. Столбцы соответствуют классам в отсортированном порядке, в котором они указаны в атрибуте classes_.
- predict_proba(X)[исходный код]
-
Возвращает оценки вероятности для тестового вектора X.
- Параметры:
-
- Xarray-like of shape (n_samples, n_features)
-
Входные примеры.
- Возвращает:
-
- Carray-like of shape (n_samples, n_classes)
-
Возвращает вероятность примеров для каждого класса модели. Столбцы соответствуют классам в отсортированном порядке, в котором они указаны в атрибуте classes_.
- score(X, y, sample_weight=None)[исходный код]
-
Возвращает точность на заданных данных и метках.
В многометочной классификации это точность по подмножествам. Это строгая метрика, поскольку для каждого примера необходимо правильно предсказать весь набор меток.
- Параметры:
-
- 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$') CategoricalNB[исходный код]
-
Настраивает, следует ли запрашивать передачу метаданных методу
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, or None, default=sklearn.utils.metadata_routing.UNCHANGED
-
Настройка маршрутизации метаданных для параметра
sample_weightметодаfit.
- Возвращает:
-
- selfobject
-
Обновленный объект.
-
- set_params(**params)[исходный код]
-
Задает параметры этого оценщика.
Метод работает как с простыми оценщиками, так и с вложенными объектами (например,
Pipeline). У последних параметры имеют вид<component>__<parameter>, что позволяет обновлять каждый компонент вложенного объекта.- Параметры:
-
- **paramsdict
-
Параметры оценщика.
- Возвращает:
-
- selfestimator instance
-
Экземпляр оценщика.
- set_partial_fit_request(*, classes:bool|None|str='$UNCHANGED$', sample_weight:bool|None|str='$UNCHANGED$') CategoricalNB[исходный код]
-
Настраивает, следует ли запрашивать передачу метаданных методу
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, 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.
- Возвращает:
-
- selfobject
-
Обновленный объект.
-
- set_score_request(*, sample_weight:bool|None|str='$UNCHANGED$') CategoricalNB[исходный код]
-
Настроить, следует ли запрашивать передачу метаданных методу
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.CategoricalNB.html