西瓜书+实战+吴恩达机器学习(八)监督学习之朴素贝叶斯 Naive Bayes
文章目录
- 0. 前言
- 1. 朴素贝叶斯算法
- 2. 半朴素贝叶斯算法
- 2.1. ODE
- 2.2. SPODE
- 2.3. TAN
- 2.4. AODE
如果这篇文章对你有一点小小的帮助,请给个关注,点个赞喔,我会非常开心的~
0. 前言
贝叶斯算法根据概率,选择概率最大的一类。
1. 朴素贝叶斯算法
朴素贝叶斯(naive Bayes)采用了属性条件独立性假设:对已知类别,假设所有属性相互独立。
P(c∣x)=P(c)P(x∣c)P(x)=P(c)P(x)∏i=1dP(xi∣c)P(c\mid x)=\frac{P(c)P(x\mid c)}{P(x)}=\frac{P(c)}{P(x)}\prod_{i=1}^dP(x_i\mid c) P(c∣x)=P(x)P(c)P(x∣c)=P(x)P(c)i=1∏dP(xi∣c)
- P(c)P(c)P(c):类先验概率,表达了各类样本所占比例,根据大数定律,可通过频率估计概率
- P(x∣c)P(x\mid c)P(x∣c):样本xxx相对于类别ccc的条件概率,根据假设,每个属性独立对结果影响
- P(x)P(x)P(x):归一化证据因子,与类别标记无关
朴素贝叶斯的判定准则为:
hnb(x)=argmaxc∈CP(c)∏i=1dP(xi∣c)h_{nb}(x)=\arg \max_{c\in C}P(c)\prod_{i=1}^dP(x_i\mid c) hnb(x)=argc∈CmaxP(c)i=1∏dP(xi∣c)
其中,P(c)=∣Dc∣∣D∣P(c)=\frac{|D_c|}{|D|}P(c)=∣D∣∣Dc∣,对于离散属性P(xi∣c)=∣Dc,xi∣∣Dc∣P(x_i\mid c)=\frac{|D_{c,x_i}|}{|D_c|}P(xi∣c)=∣Dc∣∣Dc,xi∣,对于连续属性采用概率密度函数。
若某个属性值没有与每个类同时出现,则会造成连乘计算为零,可采用拉普拉斯修正,令NNN表示训练集DDD中可能的类别数,NiN_iNi表示第iii个属性可能的取值数目:
P^(c)=∣Dc∣+1∣D∣+NP^(xi∣c)=∣Dc,xi∣+1∣Dc∣+Ni\hat{P}(c)=\frac{|D_c|+1}{|D|+N}\\ \hat{P}(x_i\mid c)=\frac{|D_{c,x_i}|+1}{|D_c|+N_i} P^(c)=∣D∣+N∣Dc∣+1P^(xi∣c)=∣Dc∣+Ni∣Dc,xi∣+1
2. 半朴素贝叶斯算法
半朴素意味着适当考虑一部分属性间的相互依赖信息。
2.1. ODE
ODE(One-Dependent Estimator)假设每个属性在类别之外最多依赖于一个其他属性。
P(c∣x)∝P(c)∏i=1dP(xi∣c,pai)P(c\mid x)\propto P(c)\prod_{i=1}^dP(x_i\mid c,pa_i) P(c∣x)∝P(c)i=1∏dP(xi∣c,pai)
2.2. SPODE
SPODE(Super-Parent ODE)是假设所有属性都依赖于同一个属性,称为“超父”。
可以通过交叉验证的方式确定超父。如下图所示(图源:机器学习):
2.3. TAN
TAN(Tree Augmented naive Bayes)通过以下方式构建:
- 计算任意两个属性之间的条件互信息I(xi,xj∣y)=∑xi,xj;c∈CP(xi,xj∣c)logP(xi,xj∣c)P(xi∣c)P(xj∣c)I(x_i,x_j\mid y)=\sum_{x_i,x_j;c\in C}P(x_i,x_j\mid c)\log \frac{P(x_i,x_j\mid c)}{P(x_i\mid c)P(x_j\mid c)}I(xi,xj∣y)=∑xi,xj;c∈CP(xi,xj∣c)logP(xi∣c)P(xj∣c)P(xi,xj∣c)
- 以属性为节点构建完全图,边的权重设置为I(xi,xj∣y)I(x_i,x_j\mid y)I(xi,xj∣y)
- 构建最大带权生成树,挑选根变量,将边设置为有向
- 加入类别节点yyy,增加从yyy到每个属性的有向边
2.4. AODE
AODE(Average One-Dependent Estimator)是基于集成学习的分类器,AODE尝试将每个属性作为超父构建SPODE,然后将具有足够训练数据支撑的SPODE集成起来。
P(c∣x)∝∑i=1∣Dxi∣⩾m′dP(c,xi)∏j=1dP(xj∣c,xi)P(c\mid x)\propto \sum_{i=1\ |D_{x_i}|\geqslant m'}^dP(c,x_i)\prod_{j=1}^dP(x_j\mid c,x_i) P(c∣x)∝i=1 ∣Dxi∣⩾m′∑dP(c,xi)j=1∏dP(xj∣c,xi)
如果这篇文章对你有一点小小的帮助,请给个关注,点个赞喔,我会非常开心的~
西瓜书+实战+吴恩达机器学习(八)监督学习之朴素贝叶斯 Naive Bayes相关推荐
- 西瓜书+实战+吴恩达机器学习(二)机器学习基础(偏差、方差、调试模型技巧)
文章目录 0. 前言 1. 偏差方差的解决方法 2. 高偏差高方差的学习曲线 3. 调试模型技巧 如果这篇文章对你有一点小小的帮助,请给个关注,点个赞喔,我会非常开心的~ 0. 前言 泛化误差可分解为 ...
- 西瓜书+实战+吴恩达机器学习(二一)概率图模型之贝叶斯网络
文章目录 0. 前言 1. 贝叶斯网络结构 2. 近似推断 2.1. 吉布斯采样 3. 隐马尔可夫模型HMM 如果这篇文章对你有一点小小的帮助,请给个关注,点个赞喔,我会非常开心的~ 0. 前言 概率 ...
- 西瓜书+实战+吴恩达机器学习(十八)降维(主成分分析 PCA)
文章目录 0. 前言 1. 主成分分析PCA 如果这篇文章对你有一点小小的帮助,请给个关注,点个赞喔,我会非常开心的~ 0. 前言 维数灾难:在高维情形下出现的数据样本稀疏.距离计算困难等问题. 缓解 ...
- 西瓜书+实战+吴恩达机器学习(十五)无监督学习之关联分析(Apriori, FP-growth)
文章目录 0. 前言 1. Apriori算法 1.1. 寻找频繁项集 1.2. 挖掘关联规则 2. FP-growth算法 2.1. 构建FP树 2.2. 寻找频繁项集 如果这篇文章对你有一点小小的 ...
- 西瓜书+实战+吴恩达机器学习(十四)无监督学习之聚类(k-means, LVQ, 高斯混合聚类, DBSCAN, AGNES)
文章目录 0. 前言 1. 性能度量 1.1. 外部指标 1.2. 内部指标 2. 距离计算 3. k-means算法 4. 学习向量量化 5. 高斯混合聚类 6. 密度聚类 DBSCAN 7. 层次 ...
- 西瓜书+实战+吴恩达机器学习(二二)概率图模型之马尔可夫随机场
文章目录 0. 前言 1. 马尔可夫随机场结构 2. 近似推断 2.1. Metropolis-Hastings 如果这篇文章对你有一点小小的帮助,请给个关注,点个赞喔,我会非常开心的~ 0. 前言 ...
- 西瓜书+实战+吴恩达机器学习(十九)特征选择(过滤式选择、包裹式选择)
文章目录 0. 前言 1. 过滤式选择 2. 包裹式选择 如果这篇文章对你有一点小小的帮助,请给个关注,点个赞喔,我会非常开心的~ 0. 前言 特征选择是一个很重要的数据预处理过程: 选择出重要的特征 ...
- 西瓜书+实战+吴恩达机器学习(十七)规则学习(序贯覆盖)
文章目录 0. 前言 1. 序贯覆盖 如果这篇文章对你有一点小小的帮助,请给个关注,点个赞喔,我会非常开心的~ 0. 前言 规则学习是从训练数据中学习出一组能用于对未见示例进行判别的规则. ⊕←f1∧ ...
- 西瓜书+实战+吴恩达机器学习(十六)半监督学习(半监督SVM、半监督k-means、协同训练算法)
文章目录 0. 前言 1. 半监督SVM 2. 半监督k-means 2.1. 约束k-means 2.2. 约束种子k-means 3. 协同训练算法 如果这篇文章对你有一点小小的帮助,请给个关注, ...
最新文章
- 如何用 OpenCV、Python 和深度学习实现面部识别?
- 对话式AI 2019年遇来的新市场
- 今天是周一,又是热的天气笼罩。
- sql数据库基础知识整理,常用函数及常用语法
- 近期期刊制作组的工作计划
- 敏捷软件开发之结对编程
- java数组使用实验报告_JAVA数组与类的定义-java实验报告
- 关于用FOMR提交编码的问题
- Leetcode 509. Fibonacci Number
- 聚合影视源码搭建教程
- 面试官:聊聊二维码扫码登录的原理
- [转载]类名.this与类名.class_-Chaz-_新浪博客
- 加州ucla 计算机学校,UCLA的Electrical Engineering「加州大学洛杉矶分校电气工程系」...
- Ruby on Rails 教程
- 谷粒微博学习笔记一:Utilsconstants
- 虚拟机共享目录添加按钮灰色_共享按钮将成为PS4最重要的遗产
- Ubuntu 20.04添加临时/永久路由
- Gradle(古rua都)vs Maven(马文)
- 带密码的php文件管理器,PHP文件管理器Tiny File Manager账号密码修改方法
- Java实战教程:《iHRM 人力资源管理系统》
热门文章
- jmeter_linux下运行
- 【bzoj3122】 Sdoi2013—随机数生成器
- 互利网上数字金融典型场景: 消费金融
- MapReduce单机提交(待稿)
- jQuery html5Validate基于HTML5表单验证插件
- 水题 CodeForces 602C -Two Bases
- cPanel设置自定义404错误页
- 【原创】StreamInsight查询系列(十)——基本查询操作之联接
- 【问题解决方案】谷歌浏览器如何打开“开发者工具”窗口
- 因下面文的损坏或丢失windows/system32/config/system 解决方法