# 应用专题 / 数学算法 / 朴素贝叶斯 ## `gaussianNB` 声明:class 假设连续特征服从高斯分布的朴素贝叶斯分类器 ### `Classes_` 声明:field 训练后得到的类别取值范围 可见性:`public` 类型:array ### `Class_prior_` 声明:field 训练后得到的各类别先验概率 可见性:`public` 类型:array ### `Class_count_` 声明:field 各类别用于训练的样本观测数 可见性:`public` 类型:array ### `Priors` 声明:field 用户指定的类别先验概率;为空时从训练样本自动计算 可见性:`public` 类型:array ### `Theta_` 声明:field 训练后得到的各类别、各特征均值 可见性:`public` 类型:array ### `Sigma_` 声明:field 训练后得到的各类别、各特征方差 可见性:`public` 类型:array ### `create(priors)` 声明:function 使用指定的类别先验概率初始化分类器 可见性:`public` | 参数 | 类型 | 说明 | | -------- | ----- | ------------------------------------ | | `priors` | array | 指定的各类别先验概率;默认值为 `nil` | ### `Fit(X, y, sample_weight)` 声明:function 一次性拟合全部训练数据;`sample_weight` 为每个训练样本的权重 可见性:`public` | 参数 | 类型 | 说明 | | --------------- | ----- | -------------------------------- | | `X` | array | 二维训练特征数组 | | `y` | array | 一维类别标签数组 | | `sample_weight` | array | 各训练样本的权重;默认值为 `nil` | ### `Partial_fit(X, y, classes, sample_weight)` 声明:function 增量拟合一批训练数据;首次调用时通过 `classes` 给出全部可能类别 可见性:`public` | 参数 | 类型 | 说明 | | --------------- | ----- | -------------------------------- | | `X` | array | 本批次的二维训练特征数组 | | `y` | array | 本批次的一维类别标签数组 | | `classes` | array | 可能出现在 `y` 中的全部类别 | | `sample_weight` | array | 各训练样本的权重;默认值为 `nil` | ### `Predict(X)` 声明:function 预测输入样本的类别标签 可见性:`public` | 参数 | 类型 | 说明 | | ---- | ----- | ---------------------- | | `X` | array | 需要预测的二维特征数组 | 返回:array ### `Predict_log_proba(X)` 声明:function 返回输入样本属于各类别的对数概率 可见性:`public` | 参数 | 类型 | 说明 | | ---- | ----- | ---------------------- | | `X` | array | 需要预测的二维特征数组 | 返回:array ### `Predict_proba(X)` 声明:function 返回输入样本属于各类别的概率 可见性:`public` | 参数 | 类型 | 说明 | | ---- | ----- | ---------------------- | | `X` | array | 需要预测的二维特征数组 | 返回:array ## `multinomialNB` 声明:class 假设离散特征服从多项分布的朴素贝叶斯分类器 ### `Classes_` 声明:field 训练后得到的类别取值范围 可见性:`public` 类型:array ### `Class_prior` 声明:field 各类别的先验概率 可见性:`public` 类型:array ### `Class_log_prior_` 声明:field 各类别的对数先验概率 可见性:`public` 类型:array ### `Feature_count_` 声明:field 拟合期间各类别、各特征的加权样本数 可见性:`public` 类型:array ### `Feature_log_prob_` 声明:field 给定类别时各特征的经验对数概率 可见性:`public` 类型:array ### `Class_count_` 声明:field 各类别用于训练的样本观测数 可见性:`public` 类型:array ### `Alpha` 声明:field 拉普拉斯或 Lidstone 加法平滑因子,默认 1.0 可见性:`public` 类型:real ### `Fit_prior` 声明:field 是否从训练样本学习类别先验概率,默认 `True` 可见性:`public` 类型:boolean ### `create(alpha, fit_prior, class_prior)` 声明:function 使用平滑因子、先验学习开关和可选先验概率初始化分类器 可见性:`public` | 参数 | 类型 | 说明 | | ------------- | ------- | ----------------------------------- | | `alpha` | real | 加法平滑因子,默认 1.0 | | `fit_prior` | boolean | 是否从样本学习先验概率,默认 `True` | | `class_prior` | array | 指定的类别先验概率;默认值为 `nil` | ### `Fit(X, y, sample_weight)` 声明:function 一次性拟合全部训练数据 可见性:`public` | 参数 | 类型 | 说明 | | --------------- | ----- | -------------------------------- | | `X` | array | 二维训练特征数组 | | `y` | array | 一维类别标签数组 | | `sample_weight` | array | 各训练样本的权重;默认值为 `nil` | ### `Partial_fit(X, y, classes, sample_weight)` 声明:function 增量拟合一批训练数据 可见性:`public` | 参数 | 类型 | 说明 | | --------------- | ----- | -------------------------------- | | `X` | array | 本批次的二维训练特征数组 | | `y` | array | 本批次的一维类别标签数组 | | `classes` | array | 可能出现在 `y` 中的全部类别 | | `sample_weight` | array | 各训练样本的权重;默认值为 `nil` | ### `Predict(X)` 声明:function 预测输入样本的类别标签 可见性:`public` | 参数 | 类型 | 说明 | | ---- | ----- | ---------------------- | | `X` | array | 需要预测的二维特征数组 | 返回:array ### `Predict_log_proba(X)` 声明:function 返回输入样本属于各类别的对数概率 可见性:`public` | 参数 | 类型 | 说明 | | ---- | ----- | ---------------------- | | `X` | array | 需要预测的二维特征数组 | 返回:array ### `Predict_proba(X)` 声明:function 返回输入样本属于各类别的概率 可见性:`public` | 参数 | 类型 | 说明 | | ---- | ----- | ---------------------- | | `X` | array | 需要预测的二维特征数组 | 返回:array ## `bernoulliNB` 声明:class 假设离散特征服从多元伯努利分布的朴素贝叶斯分类器 ### `Classes_` 声明:field 训练后得到的类别取值范围 可见性:`public` 类型:array ### `Class_prior` 声明:field 各类别的先验概率 可见性:`public` 类型:array ### `Class_log_prior_` 声明:field 各类别的对数先验概率 可见性:`public` 类型:array ### `Feature_count_` 声明:field 拟合期间各类别、各特征的加权样本数 可见性:`public` 类型:array ### `Feature_log_prob_` 声明:field 给定类别时各特征的经验对数概率 可见性:`public` 类型:array ### `Class_count_` 声明:field 各类别用于训练的样本观测数 可见性:`public` 类型:array ### `Alpha` 声明:field 拉普拉斯或 Lidstone 加法平滑因子,默认 1.0 可见性:`public` 类型:real ### `Binarize` 声明:field 将样本特征映射为布尔值的阈值,默认 0.0 可见性:`public` 类型:real ### `Fit_prior` 声明:field 是否从训练样本学习类别先验概率,默认 `True` 可见性:`public` 类型:boolean ### `create(alpha, binarize, fit_prior, class_prior)` 声明:function 使用平滑因子、二值化阈值和先验设置初始化分类器 可见性:`public` | 参数 | 类型 | 说明 | | ------------- | ------- | ----------------------------------- | | `alpha` | real | 加法平滑因子,默认 1.0 | | `binarize` | real | 特征二值化阈值,默认 0.0 | | `fit_prior` | boolean | 是否从样本学习先验概率,默认 `True` | | `class_prior` | array | 指定的类别先验概率;默认值为 `nil` | ### `Fit(X, y, sample_weight)` 声明:function 一次性拟合全部训练数据 可见性:`public` | 参数 | 类型 | 说明 | | --------------- | ----- | -------------------------------- | | `X` | array | 二维训练特征数组 | | `y` | array | 一维类别标签数组 | | `sample_weight` | array | 各训练样本的权重;默认值为 `nil` | ### `Partial_fit(X, y, classes, sample_weight)` 声明:function 增量拟合一批训练数据 可见性:`public` | 参数 | 类型 | 说明 | | --------------- | ----- | -------------------------------- | | `X` | array | 本批次的二维训练特征数组 | | `y` | array | 本批次的一维类别标签数组 | | `classes` | array | 可能出现在 `y` 中的全部类别 | | `sample_weight` | array | 各训练样本的权重;默认值为 `nil` | ### `Predict(X)` 声明:function 预测输入样本的类别标签 可见性:`public` | 参数 | 类型 | 说明 | | ---- | ----- | ---------------------- | | `X` | array | 需要预测的二维特征数组 | 返回:array ### `Predict_log_proba(X)` 声明:function 返回输入样本属于各类别的对数概率 可见性:`public` | 参数 | 类型 | 说明 | | ---- | ----- | ---------------------- | | `X` | array | 需要预测的二维特征数组 | 返回:array ### `Predict_proba(X)` 声明:function 返回输入样本属于各类别的概率 可见性:`public` | 参数 | 类型 | 说明 | | ---- | ----- | ---------------------- | | `X` | array | 需要预测的二维特征数组 | 返回:array ## `naiveBayesTotal` 声明:class 支持连续特征与离散特征混合分布的朴素贝叶斯综合分类器 ### `Classes_` 声明:field 训练后得到的类别取值范围 可见性:`public` 类型:array ### `Feature_distribution` 声明:field 各特征的分布类型;元素可为 `normal`、`mn` 或 `bn` 可见性:`public` 类型:array ### `Class_priors` 声明:field 各类别的先验概率 可见性:`public` 类型:array ### `Class_count_` 声明:field 各类别用于训练的样本观测数 可见性:`public` 类型:array ### `create(priors)` 声明:function 使用指定的类别先验概率初始化分类器 可见性:`public` | 参数 | 类型 | 说明 | | -------- | ----- | ------------------------------------ | | `priors` | array | 指定的各类别先验概率;默认值为 `nil` | ### `Fit(X, y, distribution, alpha_mn, alpha_bn, binarize, sample_weight)` 声明:function 按每个特征指定的分布拟合混合朴素贝叶斯模型 可见性:`public` | 参数 | 类型 | 说明 | | --------------- | ----- | ---------------------------------- | | `X` | array | 二维训练特征数组 | | `y` | array | 一维类别标签数组 | | `distribution` | array | 各特征的分布类型 | | `alpha_mn` | real | 多项分布模型的平滑因子,默认 1 | | `alpha_bn` | real | 伯努利分布模型的平滑因子,默认 1 | | `binarize` | real | 伯努利分布模型的二值化阈值,默认 0 | | `sample_weight` | array | 各训练样本的权重;默认值为 `nil` | ### `Predict(X)` 声明:function 预测输入样本的类别标签 可见性:`public` | 参数 | 类型 | 说明 | | ---- | ----- | ---------------------- | | `X` | array | 需要预测的二维特征数组 | 返回:array ### `Predict_log_proba(X)` 声明:function 返回输入样本属于各类别的对数概率 可见性:`public` | 参数 | 类型 | 说明 | | ---- | ----- | ---------------------- | | `X` | array | 需要预测的二维特征数组 | 返回:array ### `Predict_proba(X)` 声明:function 返回输入样本属于各类别的概率 可见性:`public` | 参数 | 类型 | 说明 | | ---- | ----- | ---------------------- | | `X` | array | 需要预测的二维特征数组 | 返回:array