朴素贝叶斯算法

来源:互联网 发布:阿里巴巴数据采集器 编辑:程序博客网 时间:2024/06/05 04:30

1 问题引入

在前两章的分类器,我们往往会要求分类器给出明确的分类,不过,分类器有时也会产生错误的结果,这时可以要求分类器给出一个最可能的猜测结果,同时给出这种猜测的概率估计值

2 算法概述

2.1 工作原理

首先朴素贝叶斯法依据贝叶斯准则计算条件概率。P(c|x) = P(x|c)P(c) / P(x)

通过计算在给定条件下属于不同类的概率,选出后验概率最大的类作为新实例的分类。

朴素条件:条件独立性假设(特征在类确定的条件下是独立的) 、每个特征同等重要

根据朴素条件,计算 条件概率P(X|c) = P(x1|c)*P(x2|c)…P(xn|c),先验概率P(c)

2.2 三要素

模型:条件概率分布模型

策略:后验概率最大化(等价于0-1损失函数的期望风险最小化)

算法:概率计算公式、EM算法

2.3 算法应用

过滤垃圾邮件、从个人广告获取区域倾向

注:在处理文档分类等问题时,可以将无用的停用词去掉,使算法更专注于起关键作用的单词。

3 一些问题

我们注意到,极大似然估计的分子部分P(x|c),当某一个P(x|c)等于零或非常小时,会导致程序下溢,分子为零,无法求出解。所以一般有两种方法解决此类问提。

(1)对P(x|c)取对数,log p1+log p2 …将乘积形式转化为和的形式避免下溢出。

(2)贝叶斯估计,分子分子母同时加一个常量,=1时称为拉普拉斯平滑。


优点:相比硬规则而言,使用的是概率估计,有时更加灵活有效,在数据较少的情况下仍然有效,可以处理多类别问题。

缺点:对于输入数据的准备方式较为敏感。


参考资料:统计学习方法(李航)、机器学习实战(Peter)



原创粉丝点击