理论部分
- 相关概念
- 生成模型
- 判别模型
- 朴素贝叶斯基本原理
- 条件概率公式
- 乘法公式
- 全概率公式
- 贝叶斯定理
- 特征条件独立假设
- 后验概率最大化
- 拉普拉斯平滑
- 朴素贝叶斯的三种形式
- 高斯型
- 多项式型
- 伯努利型
- 极值问题情况下的每个类的分类概率
- 下溢问题如何解决
- 零概率问题如何解决
- sklearn参数详解
一、理论部分
1、相关概念
生成模型:在概率统计理论中, 生成模型是指能够随机生成观测数据的模型,尤其是在给定某些隐含参数的条件下。它给观测值和标注数据序列指定一个联合概率分布。在机器学习中,生成模型可以用来直接对数据建模(例如根据某个变量的概率密度函数进行数据采样),也可以用来建立变量间的条件概率分布。条件概率分布可以由生成模型根据贝叶斯定理形成。常见的基于生成模型算法有高斯混合模型和其他混合模型、隐马尔可夫模型、随机上下文无关文法、朴素贝叶斯分类器、AODE分类器、潜在狄利克雷分配模型、受限玻尔兹曼机。
判别模型: 在机器学习领域判别模型是一种对未知数据 y 与已知数据 x 之间关系进行建模的方法。判别模型是一种基于概率理论的方法。已知输入变量 x ,判别模型通过构建条件概率分布 P(y|x) 预测 y 。常见的基于判别模型算法有逻辑回归、线性回归、支持向量机、提升方法、条件随机场、人工神经网络、随机森林、感知器。
生成模型是所有变量的全概率模型,而判别模型是在给定观测变量值前提下目标变量条件概率模型。因此生成模型能够用于模拟(即生成)模型中任意变量的分布情况,而判别模型只能根据观测变量得到目标变量的采样。判别模型不对观测变量的分布建模,因此它不能够表达观测变量与目标变量之间更复杂的关系。因此,生成模型更适用于无监督的任务,如分类和聚类。
2、先验概率、条件概率
先验概率: 在贝叶斯统计中,某一不确定量 p 的先验概率分布是在考虑"观测数据"前,能表达 p 不确定性的概率分布。它旨在描述这个不确定量的不确定程度,而不是这个不确定量的随机性。这个不确定量可以是一个参数,或者是一个隐含变量。
条件概率: 就是事件A在事件B发生的条件下发生的概率。条件概率表示为P(A|B),读作“A在B发生的条件下发生的概率”。
后验概率: 在贝叶斯统计中,一个随机事件或者一个不确定事件的后验概率是在考虑和给出相关证据或数据后所得到的条件概率。同样,后验概率分布是一个未知量(视为随机变量)基于试验和调查后得到的概率分布。“后验”在本文中代表考虑了被测试事件的相关证据。
条件概率,就是在条件为瓜的颜色是青绿的情况下,瓜是好瓜的概率
先验概率,就是常识、经验、统计学所透露出的“因”的概率,即瓜的颜色是青绿的概率。
后验概率,就是在知道“果”之后,去推测“因”的概率,也就是说,如果已经知道瓜是好瓜,那么瓜的颜色是青绿的概率是多少。后验和先验的关系就需要运用贝叶斯决策理论来求解。
3、贝叶斯决策理论
贝叶斯决策论是概率框架下实施决策的基本方法,对分类任务来说,在所有相关概率都已知的理想情形下,贝叶斯决策论考虑如何基于这些概率和误判损失来选择最优的类别标记。
假设有
N种可能标记, λijλij是将类cjcj误分类为cici所产生的损失,基于后验概率P(ci|x)P(ci|x) 可以获得样本x分类为cici所产生的期望损失 ,即在样本x上的条件风险:
R(ci|x)=∑j=1NλijP(cj|x)R(ci|x)=∑j=1NλijP(cj|x)
我们的任务是寻找一个判定准则 h:X→Yh:X→Y以最小化总体风险
R(h)=𝔼x[R(h((x))|(x))]
显然,对每个样本x,若h能最小化条件风险 R(h((x))|(x))R(h((x))|(x)),则总体风险R(h)也将被最小化。这就产生了贝叶斯判定准则:为最小化总体风险,只需要在每个样本上选择那个能使条件风险R(c|x)最小的类别标记,即:
此时,h称作贝叶斯最有分类器
,与之对应的总体风险R(h )称为贝叶斯风险,1-R(h*)反映了分类器能达到的最好性能,即机器学习所产生的模型精度的上限。
具体来说,若目标是最小化分类错误率(对应0/1损失),则λijλij可以用0/1损失改写,得到条件风险和最小化分类错误率的最优分类器分别为:
R(c|x)=1−P(c|x)R(c|x)=1−P(c|x)
h∗(x)=argmaxc∈P(c|x)h∗(x)=argmaxc∈YP(c|x)
即对每个样本x,选择能使后验概率P(c|x)最大的类别标识。
获得后验概率的两种方法:
- 判别式模型:给定x,可以通过直接建模P(c|x)来预测c。
- 生成模型:先对联合分布p(x, c)建模,然后再有此获得P(c|x)。
利用sklearn解决聚类问题
klearn.naive_bayes.GaussianNB,
这里采用GaussianNB 高斯朴素贝叶斯,实验的初步结果为
0.9666666666666667
参考: