机器学习进阶文档深度页
高斯朴素贝叶斯
学习各类别先验与每个连续特征的类别条件高斯分布,在对数空间比较后验。
学习前需要掌握
贝叶斯公式内容待补充均值方差内容待补充
背景与问题
假设常不完全真实,但参数少、速度快,小数据也可作为概率基线。
概念定义
模型假设给定类别后特征条件独立,并为每类每特征估计均值和方差。
直观理解
把每项特征对各类别的匹配证据相乘,再乘类别本身常见程度。
核心原理
实际用对数相加避免下溢;概率可能未校准,特征相关性会重复计算证据。
数学表达
核心表达
实际用对数相加避免下溢;概率可能未校准,特征相关性会重复计算证据。
变量含义
变量定义与本页概念定义一致,代码中的同名变量保持相同语义。
计算步骤
- 1估计先验
- 2按类估计均值方差
- 3计算各特征似然
- 4对数求和
代码对应位置
示例 1高斯朴素贝叶斯 实现:对应文档中的训练与预测逻辑。
计算与实现步骤
- 1
估计先验
- 2
按类估计均值方差
- 3
计算各特征似然
- 4
对数求和
- 5
归一化或 argmax
代码实现
示例 1
高斯朴素贝叶斯 实现
高斯朴素贝叶斯 实现
scikit-learn
example_01.py用途:对应文档中的训练与预测逻辑。
from sklearn.naive_bayes import GaussianNB
model=GaussianNB().fit(X_train,y_train)
print(model.theta_.shape, model.var_.shape)
print(model.predict_proba(X_test[:2]))代码解析
解析始终位于完整代码下方,并按实际代码段逐项对应。
输入数据与任务
对应文档中的训练与预测逻辑。
X_train- 训练特征,只允许它参与预处理器和模型的 fit。
X_test- 测试特征,只用于最终 transform、predict 和评价。
y_train- 与 X_train 对齐的训练目标。
model- 组合预处理和估计器的模型对象。
Step 1 · 1–4 行
导入当前步骤需要的数值计算、预处理、模型或评价工具。依赖集中写在代码开头,便于复现。
from sklearn.naive_bayes import GaussianNB
model=GaussianNB().fit(X_train,y_train)
print(model.theta_.shape, model.var_.shape)
print(model.predict_proba(X_test[:2]))预期输出或运行结果
输出每类每特征统计量形状和两条样本概率。
常见错误 · 4 条
- 独立假设当事实
- 概率未经校准
- 方差接近零
- 确认样本轴、特征轴以及 X 与 y 的第一维完全对应。
实际应用
- 小数据分类
- 快速概率基线
常见错误
独立假设当事实
概率未经校准
方差接近零
文档来源
04|近邻、贝叶斯与支持向量机原始文档
学习资料/learning_tech/04_neighbors_bayes_svm.md- §2 高斯朴素贝叶斯
推荐学习资料
暂未收录相关资料
参考库不会生成虚假资源或无效外部链接。