朴素贝叶斯的朴素是指:假设数据集样本中各个特征相互独立,这是一个很强的假设。
首先朴素贝叶斯的目的是在已知一个样本x的情况下(x有n个特征,即x是n维变量),求其属于类y(假设y有m类)中的哪一类。
直接拿下面例子写总结吧
即已知实例变量x的情况下,求其y属于哪一类。用概率表示就是,求哪一个Ck可以让这个概率取最大值,那么y就属于这一类。
计算上面的概率可以用贝叶斯公式展开:
,下面分母式是常数,因此我们的目标就变成了求Ck取哪个值,能让分子概率最大,概率最大的那个就认为是当前X=x的样本下,x应该属于Ck类。
分子上这个概率很好求,直接用数据集计算一下就可以了,
关键在于的求解,直接求这个概率是没有办法求的。因为样本中并不存在所有的特征的有所取值。
我们对其展开:
,这里我们就用到了最开始的假设,各特征相互独立,不然我们是没办法连乘展开的。
如果各特征不相互独立,那实际上上面的式子只能写为,而无法进一步化简计算,只有利用特征独立这一性质才能进一步化简。
展开到这一步就可以对其进行求解了,我们可以通过数据集计算每一个,最终计算
。
最后通过遍历每一个{c1,c2,...,ck}每一个类,我们就可以计算出所有的,yi
{c1,c2,...,ck},从而找到能使
取最大值的那个yi,那么实例变量x就属于yi类了。
应用
1.由:先计算
,因为有两类,所以只需计算两次。
2.再计算,也就是
,计算所有的
3. 根据给定预测实例,计算每一个,这里有两类,所以还是计算两次:
4.比较第3步计算,取最大的那个式子对应的Y=yi,yi即是当前实例x所预测的类: