自实现朴素贝叶斯分类器with案例:基于SMS Spam Collection数据集的广告邮件分类


贝叶斯分类器

首先要理解贝叶斯决策的理论依据,引用西瓜书上的原话:对于分类任务,在所有相关概率都已知的理想情形下,贝叶斯决策论考虑如何基于这些概率误判损失来选择最优的类别标记。

然后引入我们很熟悉的贝叶斯公式:
P ( c ∣ x ) = P ( c ) P ( x ∣ c ) P ( x ) P(c\mid \boldsymbol{x}) = \frac{P(c)P(\boldsymbol{x} \mid c)}{P(\boldsymbol{x})} P(cx)=P(x)P(c)P(xc)
其中 c c c 是类别标记, x x x 是样本点(一个包含n维属性的向量)。 P ( c ) P(c) P(c)就是所谓的“先验”概率,这个概率是可以通过数据集统计直接得到的,那么 P ( c ∣ x ) P(c \mid \boldsymbol{x}) P(cx)就是所谓的“后验“概率,即我们要在已有数据的信息背景下推断得到的。


与其它机器学习的算法不同,贝叶斯分类算法似乎看不出一个明显的待训练参数,但观察公式也能明白,我们要求出的 P ( c ∣ x ) P(c \mid \boldsymbol{x}) P(cx)是由 P ( c ) 、 P ( x ∣ c ) P(c)、P(\boldsymbol{x} \mid c) P(c)P(xc)以及 P ( x ) P(\boldsymbol{x}) P(x)三者变量所共同决定的,而这三者的现实意义其实就是给定的信息背景(数据集)——多数情况下,我们在不同的信息背景下总能得到不同的 P ( c ∣ x ) 、 P ( c ) 、 P ( x ∣ c ) P(c \mid \boldsymbol{x})、P(c)、P(\boldsymbol{x} \mid c) P(cx)P(c)P(xc),进而推出不同的 P ( c ∣ x ) P(c \mid \boldsymbol{x}) P(cx)

有些信息背景对于作出决策的贡献是“好的”,这时 P ( c ∣ x ) P(c \mid \boldsymbol{x}) P(cx)体现出来的意义能很真实地反映出作出某项决策的正确性,而在有些信息背景(比如样本过于稀疏)下得出的结果就并不能很好地反映待检测样本所属的真实类别,进而造成误分类。

于是Bayes分类器的训练意义在于寻求“好的”数据集,使得后验概率值能较好地反映出决策的真实性。


何为朴素

从概率学原理来讲,类条件概率 P ( x ∣ c ) P(\boldsymbol{x} \mid c) P(xc),是所有属性上的联合概率,很难从有限的训练样本直接估计而得。那么为避开这个障碍,朴素贝叶斯分类器采用了“属性条件独立性假设”:对已知类别假设所有属性之间相互独立

此时类条件概率满足:
P ( x ∣ c ) = ∏ i = 1 d P ( x i ∣ c ) P(\boldsymbol{x} \mid c)=\prod_{i=1}^{d}P(x_i \mid c) P(xc)=i=1dP(xic)
其中 d d d 代表样本点的属性个数, x i x_i xi 代表 x \boldsymbol{x} x的各个属性。

于是开头的贝叶斯公式进一步推:
P ( c ∣ x ) = P ( c ) P ( x ∣ c ) P ( x ) = P ( c ) ∏ i = 1 d P ( x i ∣ c ) P ( x ) P(c\mid \boldsymbol{x}) = \frac{P(c)P(\boldsymbol{x} \mid c)}{P(\boldsymbol{x})}=\frac{P(c)\prod_{i=1}^{d}P(x_i \mid c)}{P(\boldsymbol{x})} P(cx)=P(x)P(c)P(

评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值