朴素贝叶斯算法详解程序员
设输入空间为n维向量的集合,输出空间为类标记集合={c1……ck}。输入特征向量x和输出类标记y分属于这两个集合。X是输入空间上的随机变量,Y是输出空间上的随机变量。P(X,Y)是X和Y的联合概率分布,训练数据集
由P(X,Y)独立同分布产生。
朴素贝叶斯法通过T学习联合概率分布P(X,Y)。具体来讲,学习以下先验概率:
以及条件概率分布:
于是根据联合概率分布密度函数:
学习到联合概率分布P(X,Y)。
朴素贝叶斯法对它做了条件独立性的假设:
也就是各个维度的特征在类确定的情况下都是独立分布的。这一假设简化了计算,也牺牲了一定的分类准确率。
基于此假设,以及贝叶斯定理,后验概率为:
分母其实是P(X=x),等同于枚举ck求联合分布的和:∑P(X=x,Y=ck),此联合分布按公式拆开,等于上式分母。
将独立性假设代入上式,得到:
朴素贝叶斯分类器可以表示为:
也就是给定参数,找一个概率最大的ck出来。注意到上式分母其实就是P(X=x),x给定了就固定了,跟ck一点关系都没有,所以分母可以去掉,得到:
后验概率最大化的含义
选择0-1损失函数:
f(X)就是分类器的决策函数,损失函数的参数其实是一个联合分布。
此时期望风险函数为:
上面说过,这是一个联合分布P(X,Y),是一个and(连乘)的形式,由此取条件期望为风险函数:
为了最小化上式,只需对每个X=x执行最小化,那么加起来肯定是极小化的,由此有:
朴素贝叶斯法的参数估计 极大似然估计
前面说过,朴素贝叶斯法要学习的东西就是P(Y=ck)和P(X=x|Y=ck),这两个概率的估计用极大似然估计法(简单讲,就是用样本猜测模型参数,或者说使得似然函数最大的参数)进行:
也就是用样本中ck的出现次数除以样本容量。
分子是样本中变量组合的出现次数,分母是上面说过的样本中ck的出现次数。
学习与分类算法于是就有朴素贝叶斯算法,先从训练数据中计算先验概率和条件概率,然后对于给定的实例计算最大的条件概率,输出该条件对应的类别。形式化的描述如下:
贝叶斯估计
最大似然估计有个隐患,假设训练数据中没有出现某种参数和类别的组合怎么办?此时估计的概率值为0,但是这不代表真实数据中就没有这样的组合。解决办法是采用贝叶斯估计
1、条件概率的贝叶斯估计:
其中,Sj表示xj可能取值的种数。分子和分母分别比最大似然估计多了一点东西,其意义是在随机变量每个取值的频数上加一个常量。当此常量取0时,就是最大似然估计,当此常量取1时,称为拉普拉斯平滑。
2、先验概率的贝叶斯估计:
7210.html
服务器部署程序员系统优化网站设置运维相关文章
- java——加密、解密算法
- 关于基于密度的聚类方法_凝聚聚类算法
- SPPNet算法解析
- 平均每天只写 7 行代码:一算法工程师被开除
- day2:算法之美|打开算法之门与算法复杂性
- 算法(c/c++入门)第一章第一节
- 程序员进阶之算法练习(六十九)
- 记一次“雪花算法”造成的生产事故的排查记录
- 七日算法先导(六)——堆排序,桶排序
- LVS简介、原理、组件、策略及调度算法
- 程序员必备的数据库知识 2:Join 算法
- shell脚本编写算法详解程序员
- SSH弱小算法支持问题详解程序员
- 非阻塞算法简介详解程序员
- 常用排序算法介绍与实现详解程序员
- 关于百度上线 “闪电算法”的公告详解程序员
- 算法-顺时针打印矩阵详解编程语言
- C语言分块查找算法,索引顺序查找算法
- 澎思科技曲瀚:AIoT 新基建,算法为底座,服务为核心 | AI 安防峰会
- php不用内置函数对数组排序的两个算法代码
- VB.NET中使用种子填充算法实现给图片着色的例子
- JavaScript实现N皇后问题算法谜题解答