机器学习:朴素贝叶斯
一、概述
预测模型
即:概率等于在Ck类的概率乘以Ck发生的条件下x发生的概率。x发生的概率等于x的所有特征同时发生的概率。
策略:
先验概率最大化
算法计算公式:
贝叶斯估计的条件概率计算:

先验概率计算:

//================补充===============//
先验概率P(Y)
条件概率P(X|Y)
联合概率分布P(X,Y) = 先验概率P(Y)*条件概率P(X|Y)
后验概率P(Y|X)
贝叶斯公式就是用来求后验概率,就是要先求出先验概率和条件概率。

P(X,Y) = P(X|Y)P(Y)
求后验概率就是需要先求出先验概率和联合概率分布。联合概率分布的求解公式如上。
朴素贝叶斯法由于是学到整个训练集的条件概率分布,所以属于生成模型
朴素贝叶斯应用的先决假设条件是输入数据的各个特征维度之间的关系是独立同分布的。也就是输入数据的各个特征之间是没有关联的。一个特征出现的概率对其他特征没有影响。这样是为了简便计算,否则很难实际应用,因此该假设也会影响估计的准确性。这也是朴素的名字的由来。

这是一个较强的假设。由于这一假设,模型包含的条件概率的数量大为减少,朴素贝叶斯 法的学习与预测大为简化。因而朴素贝叶斯法高效,且易于实现。其缺点是分类的性能不一定很高。
//===================================//
二、主要内容

由于独立同分布的假设:

于是有了前面的先验概率和条件概率,就可以求出后验概率:

由于
所以:

由于输入数据x有j维的特征,所以![]()
就是说P(X)发生的概率等于x的所有特征同时发生指定事件的概率,这个概率就是每个特征单独概率的乘积。
即:

因此有:

如此公式就求出了后验概率。我们预测的数据的类别就是计算出在所有类别中的后验概率取最大的那个作为分类结果。

由于所有分母都是一样的,所以省略不考虑,最终得到:

策略:
后验概率取取最大化的类别。
计算方法:
有了公式,如何用公式计算?
先验概率P(Y=Ck)的计算公式:

即一个Ck的概率等于训练集中所有样本中属于Ck类的样本数占所有样本总数的比例。
是指示函数,即类别y是Ck类则输出1.
条件概率P(X=x|Y=y)的计算公式:

解释:
j是输入数据的特征数从1-n,l是某个特征的可能的Sj个取值从1-Sj。
意思是第j个特征的取值为a jl.
的意思是所有属于Ck类中的总共N个样本点,计算出这N个样本点中每个样本点中第j个特征值等于a jl的所有点的数量,a jl是Sj个取值中的一个。
算法:

贝叶斯估计:
用极大似然估计可能会出现所要估计的概率值为0的情况。这时会影响到后验概率的计算结果,使分类产生偏差。解决这一问题的方法是采用贝叶斯估计。具体地,条件概率的贝叶斯估计是

式中
≥0。等价于在随机变量各个取值的频数上赋予一个正数
>0。当
=0时就是极大似然估计。常取
=1,这时称为拉普拉斯平滑(Laplace smoothing)。
同样,先验概率的贝叶斯估计是

补充:
为什么条件概率分子加λ分母加Sj*λ
因为第J个特征的取值为1-Sj,总共Sj个。
在取值为L的时候的条件概率分子为

显然所有Sj个取值的概率相加后应该是等于1的,所以分母要加上Sj备的λ:
这样:

同理,先验概率的分子加λ,分母应加K*λ。因为所有K个类的概率和应为1.
更多推荐
所有评论(0)