本文部分总结内容摘自李航老师的《统计学习方法》及其配套课件
原文代码作者:https://github.com/wzyonggege/statistical-learning-method
在开始朴素贝叶斯的学习之前,先弄清楚几个概念:
先验概率:
事件发生前的预判概率。可以是基于历史数据的统计,可以由背景常识得出,也可以是人的主观观点给出。一般都是单独事件概率,如P(x),P(y)。
后验概率:
事件发生后求的反向条件概率;或者说,基于先验概率求得的反向条件概率。概率形式与条件概率相同。
条件概率:
一个事件发生后另一个事件发生的概率。一般的形式为P(x|y)表示y发生的条件下x发生的概率。
基本假设
朴素贝叶斯,英文叫Naive Bayes。
Naive?那是有原因的,朴素贝叶斯对输入变量做了一个很强的假设——条件独立
条件独立
输入变量之间是相互独立的,没有概率依存关系。(若相互依存,那叫贝叶斯网络)
即,用于分类的特征(xj)在类(y=ck)确定的条件下,都是相互独立的,即
P(X=x|Y=ck)=P(X1=x2,X2=x2...Xn=xn|Y=ck)
=P(X1=x1|Y=ck)P(X2=x2|Y=ck)...P(Xn=xn|Y=ck)
训练数据集:由X和Y的联合概率分布P(X,Y)独立同分布产生
朴素贝叶斯通过训练数据集学习联合概率分布P(X,Y) ,
即先验概率分布:
及条件概率分布:
条件独立性假设:
“朴素” 贝叶斯名字由来, 牺牲分类准确性。
如下:
-
后验概率最大化的含义:
朴素贝叶斯法将实例分到后验概率最大的类中。 这等价于期望风险最小化。 假设选择0-1损失函数:
式中f(X)是分类决策函数。 这时, 期望风险函数为
期望是对联合分布P(X,Y)取的。 由此取条件期望
注意:
为了使期望风险最小化, 只需对X=x逐个极小化, 由此得到:
这样一来, 根据期望风险最小化准则就得到了后验概率最大化准则:
即朴素贝叶斯法所采用的原理。
-
极大似然估计
在朴素贝叶斯法中, 学习意味着估计P(Y=)和P(
=
|Y=
)。 可以应用极大似然估计法估计相应的概率。 先验概率P(Y=
)的极大似然估计是
设第j个特征可能取值的集合为{
,
,…,
}, 条件概率P(
=
|Y=
)的极大似然估计
是
式中, 是第i个样本的第j个特征;
是第j个特征可能取的第l个值; I为指示函数。
-
朴素贝叶斯法的学习与分类算法
-
贝叶斯估计
用极大似然估计可能会出现所要估计的概率值为0的情况。 这时会影响到后验概率的计算结果, 使分类产生偏差。 解决这一问题的方法是采用贝叶斯估计。 具体地, 条件概率的贝叶斯估计是
式中 ≥0。 等价于在随机变量各个取值的频数上赋予一个正数 >0。 当 =0时就是极大似然估计。 常取 =1, 这时称为拉普拉斯平滑(Laplace smoothing) 。 显然, 对任何l=1,2,…,Sj, K=1,2,…,K, 有
表明式(4.10) 确为一种概率分布。 同样, 先验概率的贝叶斯估计是
-
朴素贝叶斯的优缺点
优点:
-
测试数据集的类预测简单又快速,在多类预测表现良好;
-
当变量假设独立成立时,相比Logistic回归等其他分类方法,朴素贝叶斯分类器性能更优,需要的训练数据较少;
-
相较于数值变量,朴素贝叶斯分类器在多个分类变量的情况下表现更好。若是数值变量,需要正态分布假设。
缺点:
-
如果分类变量的类别(在测试数据集中)没有在训练数据集总被观察到,那这个模型会分配一个0(零)概率给它,同时也会无法进行预测。这通常被称为“零频率”。
-
朴素贝叶斯的另一个限制是独立预测的假设。在现实生活中,这几乎是不可能的,各变量间或多或少都会存在相互影响。