李航《统计学习方法》第4&9章 朴素贝叶斯分类器&EM算法
2016-06-09 13:29
330 查看
朴素贝叶斯(naive Bayes)定义
基本假设输入x为n维向量,输出y取值在{c1,…,ck}K个值范围内,训练集样本个数N,假设样本独立同分布,且
特征条件独立 。具体的:
P(X=x|Y=ck)=P(X(1)=x(1),…,X(n)=x(n)|Y=ck)=∏nj=1P(X(j)=x(j)|Y=ck)
由于这一假设,朴素贝叶斯的学习大为简化,但对分类性能有一定影响
学习参数
用极大似然估计来学习先验概率分布P(Y=ck)以及条件概率分布P(X=x|Y=ck)=P(X(1)=x(1),…,X(n)=x(n)|Y=ck)。具体的:
P(Y=ck)=∑Ni=1I(yi=ck)N,k=1,2,…,K
假设第j个特征x(j)的可能取值为{a_{j1},…a_{jS_j}},其中l = 1,2,…,Sj
P(X(j)=ajl|Y=ck)=∑Ni=1I(x(j)i=ajl,yi=ck)∑Ni=1I(yi=ck),k=1,2,…,K
进行预测
利用 贝叶斯定理 求后验概率
P(Y=ck|X=x)=P(Y=ck)∫nj=1P(X(j)=x(j)|Y=ck)∑kP(Y=ck)∏nj=1P(X(j)=x(j)|Y=ck)
另该 后验概率 最大的y就是我们需要的结果
y=argmaxckP(Y=ck)∏nj=1P(X(j)=x(j)|Y=ck)
i.e.经验风险最小化
贝叶斯估计 不等于 朴素贝叶斯
贝叶斯估计
用极大似然估计可能会导致求出的先验概率和条件概率取值为0,这时分类会产生偏差解决方法是采取贝叶斯估计,贝叶斯估计中的先验概率和条件概率的计算中加入了一个λ,i.e.结构风险最小化,使得每个概率都不会等于0。
Pλ(Y=ck)=∑Ni=1I(yi=ck)+λN+Kλ,k=1,2,…,K
Pλ(X(j)=ajl|Y=ck)=∑Ni=1I(x(j)i=ajl,yi=ck)+λ∑Ni=1I(yi=ck)+Sjλ,k=1,2,…,K
λ取值为1成为拉普拉斯平滑。
如果特征条件不独立,存在概率依赖关系,模型就变成了贝叶斯网络
贝叶斯网络
EM算法是一种求解贝叶斯网络的算法,将在第九章介绍相关文章推荐
- 用Python从零实现贝叶斯分类器的机器学习的教程
- My Machine Learning
- 机器学习---学习首页 3ff0
- Spark机器学习(一) -- Machine Learning Library (MLlib)
- 反向传播(Backpropagation)算法的数学原理
- 关于SVM的那点破事
- 也谈 机器学习到底有没有用 ?
- TensorFlow人工智能引擎入门教程之九 RNN/LSTM循环神经网络长短期记忆网络使用
- TensorFlow人工智能引擎入门教程之十 最强网络 RSNN深度残差网络 平均准确率96-99%
- TensorFlow人工智能引擎入门教程所有目录
- 如何用70行代码实现深度神经网络算法
- 量子计算机编程原理简介 和 机器学习
- 近200篇机器学习&深度学习资料分享(含各种文档,视频,源码等)
- 已经证实提高机器学习模型准确率的八大方法
- 初识机器学习算法有哪些?
- 机器学习相关的库和工具
- 10个关于人工智能和机器学习的有趣开源项目
- 机器学习实践中应避免的7种常见错误
- 机器学习常见的算法面试题总结
- 不平衡数据处理技术——RUSBoost