高斯判别分析(GDA)和朴素贝叶斯(NB)
生成模型和判别模型
监督学习一般学习的是一个决策函数y=f(x)y=f(x)y=f(x)或者是条件概率分布p(y∣x)p(y|x)p(y∣x)。
判别模型直接用数据学习这个函数或分布,例如Linear Regression和Logistic Regression。
生成模型是先用数据学习联合概率分布p(x,y)p(x,y)p(x,y),然后使用贝叶斯公式求p(y∣x)p(y|x)p(y∣x)
p(y∣x)=p(y)p(x∣y)p(x)p(y|x)=\frac{p(y)p(x|y)}{p(x)}p(y∣x)=p(x)p(y)p(x∣y)
y=argmaxyp(y∣x)y=\arg\max_yp(y|x)y=argymaxp(y∣x)
又yyy不影响p(x)p(x)p(x),故
y=argmaxyp(y)p(x∣y)y=\arg\max_yp(y)p(x|y)y=argymaxp(y)p(x∣y)
高斯判别分析
假设:
y∼Bernoulli(ϕ)x∣y=0∼N(μ0,Σ)x∣y=1∼N(μ1,Σ)y \sim Bernoulli(\phi) \\ x|y=0 \sim \mathcal{N}(\mu_0,\Sigma) \\x|y=1 \sim \mathcal{N}(\mu_1, \Sigma)y∼Bernoulli(ϕ)x∣y=0∼N(μ0,Σ)x∣y=1∼N(μ1,Σ)
那么p(y)=ϕy(1−ϕ)(1−y)p(x∣y=0)=12πn/2∣Σ∣1/2exp(−12(x−μ0)TΣ−1(x−μ0))p(x∣y=1)=12πn/2∣Σ∣1/2exp(−12(x−μ1)TΣ−1(x−μ1))p(y) =\phi^y(1-\phi)^{(1-y)} \\ p(x|y=0) =\frac{1}{2\pi^{n/2}|\Sigma|^{1/2}}\exp \left(-\frac{1}{2}(x-\mu_0)^T\Sigma^{-1}(x-\mu_0)\right) \\ p(x|y=1) =\frac{1}{2\pi^{n/2}|\Sigma|^{1/2}}\exp \left(-\frac{1}{2}(x-\mu_1)^T\Sigma^{-1}(x-\mu_1)\right) p(y)=ϕy(1−ϕ)(1−y)p(x∣y=0)=2πn/2∣Σ∣1/21exp(−21(x−μ0)TΣ−1(x−μ0))p(x∣y=1)=2πn/2∣Σ∣1/21exp(−21(x−μ1)TΣ−1(x−μ1))
于是使用极大似然估计求得参数μ0,μ1,Σ,ϕ\mu_0,\mu_1,\Sigma,\phiμ0,μ1,Σ,ϕ
最终GDA模型如下:
朴素贝叶斯模型
在朴素贝叶斯模型中我们假设给定yyy,所有的特征x1,x2,…,xnx_1, x_2, \ldots, x_nx1,x2,…,xn都是独立的,这是一个非常重要的假设。有了这个假设,我们就可以很方便的求解p(x∣y)p(x|y)p(x∣y)了,而yyy服从伯努利分布,p(x,y)p(x,y)p(x,y)也就有了。
p(x∣y)=p(x1∣y)p(x2∣y)…p(xn∣y)p(x|y)=p(x_1|y)p(x_2|y)\ldots p(x_n|y)p(x∣y)=p(x1∣y)p(x2∣y)…p(xn∣y)
对于离散情况,我们假定p(xi∣y)p(x_i|y)p(xi∣y)服从多项式分布(包括二项式分布)。
对于连续情况,我们假定p(xi∣y)p(x_i|y)p(xi∣y)服从高斯分布。
然后使用极大似然估计求解模型中参数,最后使用y=argmaxyp(x,y)y=\arg\max_y p(x,y)y=argmaxyp(x,y)求得yyy。
在连续情况下,我们一般使用高斯判别分析;在离散情况下,则使用朴素贝叶斯模型。
转载博客:高斯判别分析(GDA)和朴素贝叶斯(NB)
高斯判别分析(GDA)和朴素贝叶斯(NB)相关推荐
- #第26篇分享:一个文本分类的数据挖掘(python语言:sklearn 朴素贝叶斯NB)(2)
#sklearn 朴素贝叶斯NB算法常用于文本分类,尤其是对于英文等语言来说,分类效果很好:它常用于垃圾文本过滤.情感预测.推荐系统等:是基于概率进行预测的模型,可以做二分类及多分类( 朴素贝叶斯是个 ...
- ML之NB:利用朴素贝叶斯NB算法(TfidfVectorizer+不去除停用词)对20类新闻文本数据集进行分类预测、评估
ML之NB:利用朴素贝叶斯NB算法(TfidfVectorizer+不去除停用词)对20类新闻文本数据集进行分类预测.评估 目录 输出结果 设计思路 核心代码 输出结果 设计思路 核心代码 class ...
- ML之NB:利用朴素贝叶斯NB算法(CountVectorizer+不去除停用词)对fetch_20newsgroups数据集(20类新闻文本)进行分类预测、评估
ML之NB:利用朴素贝叶斯NB算法(CountVectorizer+不去除停用词)对fetch_20newsgroups数据集(20类新闻文本)进行分类预测.评估 目录 输出结果 设计思路 核心代码 ...
- NLP之TopicModel:朴素贝叶斯NB的先验概率之Dirichlet分布的应用
NLP之TopicModel:朴素贝叶斯NB的先验概率之Dirichlet分布的应用 目录 1.Dirichlet骰子先验和后验分布的采样 2.稀疏Dirichlet先验的采样 1.Dirichlet ...
- NLP之TM之Dirichlet:朴素贝叶斯NB的先验概率之Dirichlet分布的应用
NLP之TM之Dirichlet:朴素贝叶斯NB的先验概率之Dirichlet分布的应用 目录 1.Dirichlet骰子先验和后验分布的采样 2.稀疏Dirichlet先验的采样 1.Dirichl ...
- EM算法--应用到三个模型: 高斯混合模型 ,混合朴素贝叶斯模型,因子分析模型...
主要是对Ng教授的machinelearning视频学习和参考jerryLead讲义整理(特别鸣谢~): 由"判别模型.生成模型与朴素贝叶斯方法 "一节得知: 判别模型求的是条件概 ...
- 机器学习实战(三)朴素贝叶斯NB(Naive Bayes)
目录 0. 前言 1. 条件概率 2. 朴素贝叶斯(Naive Bayes) 3. 朴素贝叶斯应用于文本分类 4. 实战案例 4.1. 垃圾邮件分类案例 学习完机器学习实战的朴素贝叶斯,简单的做个笔记 ...
- 【机器学习算法笔记系列】朴素贝叶斯(NB)算法详解和实战
朴素贝叶斯(NB)算法概述 朴素贝叶斯(Naïve Bayes, NB)算法,是一种基于贝叶斯定理与特征条件独立假设的分类方法.朴素:特征条件独立:贝叶斯:基于贝叶斯定理.属于监督学习的生成模型,实现 ...
- 【机器学习入门】(3) 朴素贝叶斯算法:多项式、高斯、伯努利,实例应用(心脏病预测)附python完整代码及数据集
各位同学好,今天我和大家分享一下朴素贝叶斯算法中的三大模型.在上一篇文章中,我介绍了朴素贝叶斯算法的原理,并利用多项式模型进行了文本分类预测. 朴素贝叶斯算法 -- 原理,多项式模型文档分类预测,附p ...
最新文章
- cookie 免密登录_python
- 成员变量和属性区别(@property那点事儿)
- 软考-信息系统项目管理师-知识管理
- Win2003 IIS下,ASP.NET无法访问数据库和网页
- Bootstrap 3 : 图片上传预览 image upload preview
- maven打本地JAR包
- 如何使用digiKam进行照片管理
- Uber无人车安全员之困:这是一份机械、枯燥、影响心理的工作
- mysql的动态建表_mysql数据库动态创建表的实例分享
- php做个抽签人名,怎样在excel制作一个用于抽签函数,别的工具也行(excel随机抽取人名不重复)...
- 携号转网实时手机号归属地查询接口API
- 上网行为管理软件的主要功能、并简要说明上网行为管理类的软件的原理。
- 十张数据图回顾雾霾,北京污染从南向北加深趋势明显
- Express 框架的使用(详细)
- 【易通慧谷】通过一个案例两张概念图解析供应链金融
- flex布局 justify-content 新属性值 space-evenly
- Linux 安装 Composer
- unity简单小球下落
- 手段-目的理论定性研究实践经验分享
- python用stomp扩展连接activemq(千千万万要注意,默认端口是61613,不是62613)
热门文章
- 【整理】RPA选择器针对SAP系统的设置
- 如何对系统中设置的修改记录增加log日志
- 4、Power Map—实例:演示报告封面
- 《他其实没那么喜欢你》经典台词(2)
- 究竟有多少假代购,在2亿多海淘用户市场里浑水摸鱼?
- 混凝土静力受压弹性模量试验计算公式_2019年度水运材料考试大纲微试验
- tengine简单安装_实操丨如何在EAIDK上部署Tengine开发AI应用之物体检测应用入门(C++)...
- python 文件路径格式化_python 存储为txt文件路径
- 入栈和出栈c语言源程序,用c语言可执行文件实现顺序栈的出栈、入栈、判栈空、判栈满!急求啊? 爱问知识人...
- python循环五角星做法_python实现while循环打印星星的四种形状