我是靠谱客的博主 快乐蜗牛,最近开发中收集的这篇文章主要介绍机器学习:生成模型和判别模型的区别,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、名词解释
生成方法由数据学习联合概率风波P(X,Y),然后求出条件概率分布P(Y|X)为预测的模型,即生成模型:
P ( Y ∣ X ) = P ( X , Y ) P ( X ) P(Y|X)=frac{P(X,Y)}{P(X)}
P(Y∣X)=
P(X)
P(X,Y)

这样的方法之所以称为生成方法,是因为模型表示了给定输入X产生输出Y的生成关系。典型的生成模型由朴素贝叶斯法和隐马尔可夫模型。

判别方法由数据直接学习决策函数f(X)或者条件概率分布P(Y|X)作为预测模型,即判别模型。判别方法关心的是对给定的输入X,应该预测什么样的输出Y。典型的判别模型包括:k近邻法、感知机、决策树、逻辑回归模型、最大熵模型、支持向量机、提升方法和条件随机场等。

二、举例说明
其实机器学习的任务是从属性X预测标记Y,即求概率P(Y|X);

对于判别式模型来说求得P(Y|X),对未见示例X,根据P(Y|X)可以求得标记Y,即可以直接判别出来,如上图的左边所示,实际是就是直接得到了判别边界,所以传统的、耳熟能详的机器学习算法如线性回归模型、支持向量机SVM等都是判别式模型,这些模型的特点都是输入属性X可以直接得到Y(对于二分类任务来说,实际得到一个score,当score大于threshold时则为正类,否则为反类)~(根本原因个人认为是对于某示例X 1 X_1X
1

,对正例和反例的标记的条件概率之和等于1,即P ( Y 1 ∣ X 1 ) + P ( Y 2 ∣ X 1 ) = 1 ) P(Y_1|X_1)+P(Y_2|X_1)=1)P(Y
1

∣X
1

)+P(Y
2

∣X
1

)=1)

而生成式模型求得P(Y,X),对于未见示例X,你要求出X与不同标记之间的联合概率分布,然后大的获胜,如上图右边所示,并没有什么边界存在,对于未见示例(红三角),求两个联合概率分布(有两个类),比较一下,取那个大的。机器学习中朴素贝叶斯模型、隐马尔可夫模型HMM等都是生成式模型,熟悉Naive Bayes的都知道,对于输入X,需要求出好几个联合概率,然后较大的那个就是预测结果~(根本原因个人认为是对于某示例X_1,对正例和反例的标记的联合概率不等于1,即P ( Y 1 , X 1 ) + P ( Y 2 , X 1 ) < 1 P(Y_1,X_1)+P(Y_2,X_1)<1P(Y
1

,X
1

)+P(Y
2

,X
1

)<1,要遍历所有的X和Y的联合概率求和,即sum(P(X,Y))=1,具体可参见楼上woodyhui提到的维基百科Generative model里的例子)

博文机器学习之判别式模型和生成式模型 - nolonely - 博客园 举了一个例子:

判别式模型举例:要确定一个羊是山羊还是绵羊,用判别模型的方法是从历史数据中学习到模型,然后通过提取这只羊的特征来预测出这只羊是山羊的概率,是绵羊的概率。

生成式模型举例:利用生成模型是根据山羊的特征首先学习出一个山羊的模型,然后根据绵羊的特征学习出一个绵羊的模型,然后从这只羊中提取特征,放到山羊模型中看概率是多少,在放到绵羊模型中看概率是多少,哪个大就是哪个。

细细品味上面的例子,判别式模型是根据一只羊的特征可以直接给出这只羊的概率(比如logistic regression,这概率大于0.5时则为正例,否则为反例),而生成式模型是要都试一试,最大的概率的那个就是最后结果~

在机器学习中任务是从属性X预测标记Y,判别模型求的是P(Y|X),即后验概率;而生成模型最后求的是P(X,Y),即联合概率。从本质上来说:

判别模型之所以称为“判别”模型,是因为其根据X“判别”Y;

而生成模型之所以称为“生成”模型,是因为其预测的根据是联合概率P(X,Y),而联合概率可以理解为“生成”(X,Y)样本的概率分布(或称为 依据);具体来说,机器学习已知X,从Y的候选集合中选出一个来,可能的样本有( X , Y 1 ) , ( X , Y 2 ) , ( X , Y 3 ) , … … , ( X , Y n ) (X,Y_1), (X,Y_2), (X,Y_3),……,(X,Y_n)(X,Y
1

),(X,Y
2

),(X,Y
3

),……,(X,Y
n

),实际数据是如何“生成”的依赖于P(X,Y),那么最后的预测结果选哪一个Y呢?那就选“生成”概率最大的那个吧~

三、参考资料
【1】《统计学习方法》李航
【2】https://www.zhihu.com/question/20446337

点赞
1

评论

分享

收藏

手机看

打赏

关注
一键三连

机器学习:生成式模型和判别式模型
Yucen的博客
3359
决策函数Y=f(X)与条件概率分布P(Y|X) 决策函数Y=f(x):输入一个x,它就输出一个y值,这个y与一个阈值比较,根据比较结果判定x属于哪个类别。 条件概率分布P(y|x):输入一个x,它通过比较它属于所有类的概率,然后预测时应用最大后验概率法(MAP)即比较条件概率最大的类为x对应的类别。 举个例子,对于一个二分类问题:对于Y=f(x)形式的分类模型,如果输出Y大于某个阈值V就属于…
机器学习:生成模型和判别模型
小白兔de窝
3978
1 生成模型和判别模型的定义 对o和s进行统计建模,通常有两种方式: (1)判别模型 基本思想:有限样本条件下建立判别函数p(o|s),不考虑样本的产生模型,直接研究预测模型p(s|o),即判别模型:P(s|o)= P(o|s)P(s)/ P(o) 典型判别模型:k近邻,决策树,logistic回归,支持向量机,感知机等。 (1)生成模型 构建o和s

优质评论可以帮助作者获得更高权重
判别模型、生成模型与朴素贝叶斯方法
09-22
文档是在听取斯坦福大学机器学习网上公开课后,结合前人所写的文档整理而成,文档中包含了斯坦福大学教授NG在课堂上讲的见解、建议等,主要讲解了判别模型、生成模型与朴素贝叶斯方法及其应用。文档写得清晰易懂,
机器学习:生成式模型与判别式模型
Rookiekk
438
监督学习的任务就是学习一个模型,应用这一模型,对给定的输入预测相应的输出。这个模型的一般形式为决策函数: 或者条件概率分布: 。 监督学习方法又分为生成方法和判别方法,对应生成式模型(Generative Model)与判别式模型(Discriminative…
机器学习概述(2)–生成模型和判别模型的区别_qq_270095…_CSDN博客
8-7
监督学习方法可以分为生成方法(generative approach)和判别方法(discriminative approach),所学到的模型分为生成模型(generative model)和判别模型(discriminative model)…
生成模型 VS 判别模型 (含义、区别、对应经典算法)_Tay…_CSDN博客
9-14
从概率分布的角度考虑,对于一堆样本数据,每个均有特征Xi对应分类标记yi。生成模型:学习得到联合概率分布P(x,y),即特征x和标记y共同出现的概率,然后求条件概率分布…
机器学习:判别模型与生成模型
weixin_33698043的博客
37
根据网上的相关博客总结了一下机器学习中的这两个概念,参考博客见文末。 生成模型:无穷样本==》概率密度模型 = 生成模型==》预测判别模型:有限样本==》判别函数 = 预测模型==》预测 机器学习中的模型一般分为两类:判别模型、生成模型,这是对问题的两种不同的审视角度。 假设我们要学习一个算法区分大象和狗(假设输入是重量、鼻子长度等特征)。判别模型和生成模型以两种不同的思路解…
生成模型与判别模型
zouxy09的专栏
10万+
生成模型与判别模型 zouxy09@qq.com http://blog.csdn.net/zouxy09 一直在看论文的过程中遇到这个问题,折腾了不少时间,然后是下面的一点理解,不知道正确否。若有错误,还望各位前辈不吝指正,以免小弟一错再错。在此谢过。 一、决策函数Y=f(X)或者条件概率分布P(Y|X) 监督学习的任务就是从数据中学习一个模型(也叫分
机器学习“判定模型”和“生成模型”有什么区别?_LFGxi…_CSDN博客
8-27
R语言:mode和class的区别 about_latte : 文中提到的“当x是单个值,或者向量的时候,class返回的结果和mode一致”,可是我试了c(1,2,3),class返回的是integer…
生成模型和判别模型的区别_机器学习杂货铺1号店-CSDN博客
9-26
前言** 机器学习中有两种大类的模型,分别是生成模型和判别模型,其分别代表了不同的预测思想,我们这里讨论一下两者的异同。**如有谬误,请联系指正。转载请注明…
机器学习与深度学习里生成模型和判别模型的理解
dulingtingzi的博客
1万+
这篇博客是自己在学习生成模型与判别模型过程中的一些记录,整理了相关的文章后写成,感谢前辈们的辛苦总结转载自:https://blog.csdn.net/zouxy09/article/details/8195017https://blog.csdn.net/lk7688535/article/details/52353350https://blog.csdn.net/Solomon1558/art…
是什么机器学习中生成模型/判别模型?
Robin_Pi的博客
102
图解 举例理解 判别式模型举例:要确定一个羊是山羊还是绵羊,用判别模型的方法是从历史数据中学习到模型,然后通过提取这只羊的特征来预测出这只羊是山羊的概率,是绵羊的概率。 生成式模型举例:利用生成模型是根据山羊的特征首先学习出一个山羊的模型,然后根据绵羊的特征学习出一个绵羊的模型,然后从这只羊中提取特征,放到山羊模型中看概率是多少,在放到绵羊模型中看概率是多少,哪个大就是哪个。 细细品味上面的例…
生成模型和判别模型的区别_张渊猛的博客-CSDN博客
9-14
监督学习方法又可以分为生成方法(generative approach)和判别方法(discriminative approach)。所学到的模型分别为生成模型(generative model)和判别模型(discriminative mode…
生成模型和判别模型的区别_sunyuxiu的博客-CSDN博客
9-5
生成模型和判别模型的区别 按照求解的方法,可以将分类算法分为判别模型和生成模型。给定特定的向量x与标签值y,生成模型对联合概率p(x,y)建模,判别模型对条件概率p…
机器学习—生成模型与判别模型
u012101561的博客
9745
生成模型(Generative Model)是相对于判别模型(Discriminative Model)定义的。他们两个都用于有监督学习。监督学习的任务就是从数据中学习一个模

最后

以上就是快乐蜗牛为你收集整理的机器学习:生成模型和判别模型的区别的全部内容,希望文章能够帮你解决机器学习:生成模型和判别模型的区别所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(49)

评论列表共有 0 条评论

立即
投稿
返回
顶部