朴素贝叶斯没有参数估计,给堆数据直接求,属于生成模型,不用优化模型求最佳参数,这区别于判别模型。
我遇到的困惑
(1)“后验概率最大”和“极大似然”这二者有什么区别和联系吗?
(2)朴素贝叶斯和EM这二者有什么区别和联系吗?
答案:
(1) 朴素贝叶斯是根据后验概率最大来分类的,在LR和最大熵模型的时候你肯定记得“极大似然估计”,“后验概率最大”和“极大似然”这二者有什么区别和联系吗?
二者都是概率模型,求的是p(Y|X=x),极大似然认为哪个ck的联合概率分布p(Y=ck|X=x)最大,那输出类别就是它ck(这个是基于最大熵原理推导)。而最大后验概率则是哪个ck的后验概率p(Y=ck|X=x)*p(Y=ck)最大,那输出类别就是它ck(基于期望风险最小化推导)!
(2)EM和朴素贝叶斯我觉得区别很大,联系的话,就是都是概率模型,EM构建模型,根据极大似然或极大后验概率求解模型参数。EM的特定就是,含有隐变量。
1 朴素贝叶斯
定义:朴素贝叶斯是基于贝叶斯定理和特征条件独立假设独立的分类方法。具体地,对于给定的训练数据,首先基于特征条件独立假设(naive,天真,因为把模型想的这么简单)学习输入/输出的联合概率分布;然后基于此模型,对给定的输入x,利用贝叶斯定理求出后验概率最大的输出y。
基于概率分布模型的分类问题说白了就是求P(y|X),比如LR,我们是知道它的分布是伯努利(这个是LR的前提假设),求P(y=1|X=x)大还是P(y=0|X=x),然后伯努利属于广义线性,根据推导能得到P(y=0|X=x)的公式表达。但对于一堆数据,我不想假设他是什么分布,但我还是要求P(Y=ck|X=x),根据贝叶斯定理知道,条件概率:
很难算出来,输入特征有的是独立的有的是不独立的,不独立的还需要知道他们的关系,参数非常大。
但有一点,如果这些特征属性都独立,之间没有关系,那么这个联合条件概率就很好求了。假设数据集个数为n,则
朴素贝叶斯分类准则:后验概率最大化,那个ck的后验概率最大,则将ck作为x的输出。因为P(X=x)对所有的类ck都是一样的,所以可以不计算分母,只比较分子
条件独立又可表示为
为什么后验概率最大化可以采用呢?这是通过期望风险最小化推导出来的(过程略)
(朴素贝叶斯重点在于会通过这个分类器对给定的数据集分类)
如何求p(Y=ck),p(X=xi|Y=ck) ,这里用频数去估计近似
但这会有个问题,如果在训练集中,某个特征没有出现过,即p(X=xi|Y=ck)为0,那这导致这个类的概率就为0了。我们知道没有出现只是概率偏低,但不能是绝对不可能出现。为了解决这个情况,提出了“平滑”处理,即贝叶斯估计,分子分母个加上一个数: