核心思想
-
贝叶斯定理
逆向概率:P(类别|特征) = P(特征|类别)·P(类别) / P(特征)
其中 P(特征) 在比较不同类别时可忽略,因此:
P(类别|特征) ∝ P(类别)·P(特征|类别)
-
"朴素"假设
特征之间条件独立,因此:
P(特征集合|类别) = ∏ᵢ P(特征ᵢ|类别)
二、典型示例
-
拼写纠正
观测到错误单词 D,候选单词 h 的得分:score(h) = P(h)·P(D|h)
P(h):单词先验频率;P(D|h):打错成 D 的概率(编辑距离模型)。
选得分最高的 h 作为纠正结果。
-
垃圾邮件过滤
邮件 D = {w₁, w₂, ..., wₙ}
P(h⁺|D) ∝ P(h⁺) ∏ᵢ P(wᵢ|h⁺)
P(h⁻|D) ∝ P(h⁻) ∏ᵢ P(wᵢ|h⁻)
比较两者大小即可判定是否垃圾邮件。
三、三种常用模型
表格
复制
模型 | 适用特征类型 | sklearn 类 | 关键参数说明 |
---|---|---|---|
多项式 | 离散计数(如词频) | MultinomialNB | alpha:拉普拉斯平滑;fit_prior:是否学习先验 |
高斯 | 连续数值 | GaussianNB | priors:自定义先验 |
伯努利 | 0/1 布尔变量 | BernoulliNB | binarize:二值化阈值 |
四、sklearn 通用接口
fit(X, y) 训练
predict(X) 预测类别
predict_proba(X) 预测各类别概率
score(X, y) 准确率评估