问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

机器学习“判定模型”和“生成模型‘有什么区别

发布网友 发布时间:2022-04-22 00:01

我来回答

2个回答

热心网友 时间:2022-04-18 09:47

最基本的区别就是建模对象不同, 但目的都是求出P(Y|X)

判别模型Discriminative Model:

直接对P(Y|X)进行建模,   判别模型不考虑如何生成 X 和 Y 的联合事件, 比如 SVM 只考虑把点分开而已, 鲁棒性比较强, 但需要更多的训练数据.

生成模型 Generative Model:

利用贝叶斯公式, 先对P(X|Y)进行建模, 然后利用训练集中的 P(Y) 求出联合**概率分布 P(X,Y)**, 最后除以X的概率分布P(X)得出我们的目标(P(Y|X)). 最常见的例子朴素贝叶斯. 生成模型需要做出更多的假设, 因此适用于数据较少的情况下, 但鲁棒性不强, 因为假设错了就效果很差了.

给一个栗子, 外星人来地球拿了一个数据集包含了地球人的身体特征, 标签有2类:男和女. 如果训练数据集只有1%是数据是男性, 而99%是女性. 那么外星人科学家就有可能认为给定随机一个人类, 该人类是女性的P(y=female)概率是99%, 按照这个假设去做生成模型就会很不给力, 但判别模型就没有这个问题.

——Matthew_zeng

我们从几句话进入这两个概念: 
1、机器学习分为有监督的机器学习和无监督的机器学习; 
2、有监督的机器学习就是已知训练集数据的类别情况来训练分类器,无监督的机器学习就是不知道训练集的类别情况来训练分类器; 
3、所以说,有监督的机器学习可以抽象为一个分类task,而无监督的基本完成的是聚类; 
4、有监督的机器学习中,我们可以概述为通过很多有标记的数据,训练出一个模型,然后利用这个,对输入的X进行预测输出的Y。这个模型一般有两种:

决策函数:Y=f(X) 
条件概率分布:P(Y|X)

5、根据通过学习数据来获取这两种模型的方法,我们可以分为判别方法和生成方法;

6、概念正式介绍

判别方法:由数据直接学习决策函数Y=f(X)或条件概率分布P(Y|X)作为预测模型,即判别模型。判别方法关心的是对于给定的输入X,应该预测什么样的输出Y。

数据直接学习决策函数Y=f(X)或条件概率分布P(Y|X)得到的预测模型,就是判别模型;

生成方法:由数据学习联合概率分布P(X,Y), 然后由P(Y|X)=P(X,Y)/P(X)求出概率分布P(Y|X)作为预测的模型。该方法表示了给定输入X与产生输出Y的生成关系

P(Y|X)作为的预测的模型就是生成模型;

两个模型的范例

生成模型:朴素贝叶斯、隐马尔可夫(em算法) 
判别模型:k近邻法、感知机、决策树、逻辑回归、线性回归、最大熵模型、支持向量机(SVM)、提升方法、条件随机场(CRF)

对比

1、生成模型可以还原出联合概率分布(还原数据本身相似度),而判别方法不能; 
2、生成方法的学习收敛速度更快,当样本容量增加的时候,学到的模型可以更快的收敛于真实模型; 
3、当存在隐变量时,仍可以利用生成方法学习,此时判别方法不能用; 
4、判别学习不能反映训练数据本身的特性,但它寻找不同类别之间的最优分类面,反映的是异类数据之间的差异,直接面对预测,往往学习的准确率更高,由于直接学习P(Y|X)或Y=f(X),从而可以简化学习; 
5、简单的说,生成模型是从大量的数据中找规律,属于统计学习;而判别模型只关心不同类型的数据的差别,利用差别来分类。

热心网友 时间:2022-04-18 11:05

首先区分生成/判别方法和生成/判别模型。

有监督机器学习方法可以分为生成方法和判别方法(常见的生成方法有混合高斯模型、朴素贝叶斯法和*马尔科夫模型等,常见的判别方法有SVM、LR等),生成方法学习出的是生成模型,判别方法学习出的是判别模型。接着对生成模型和判别模型做更详细一点的解释。这里定义训练数据为(C,X),C={c1,c2,....cn}是n个训练样本的label,X={x1,x2....xn}是n个训练样本的feature。定义单个测试数据为(,),为测试数据的lable,是测试样本的feature。
1)训练完毕后,输入测试数据,判别模型直接给出的是,即输出(label)关于输入(feature)的条件分布,实际上,这个分布的条件还有训练数据---------因为实际上我们是“看过”训练数据之后,学习到了对数据分布的后验认识,然后根据这个认识和测试样本的feature来做出测试样本属于哪个label的决策的,所以有=。
我们认为这个条件分布由参数决定的,
即------------------------------------------------------------------------------------------------------------①
那么如何由得到呢?如果我们可以求出参数关于训练数据的的后验分布(这其实就是学习过程),那么就可以由
===------------②
来得到想要的答案(关于②如何得到,请参考其他地方的讨论PRML第一章公式1.68如何推导? - 机器学习 - 知乎,第31页公式1.68怎么推导的啊..)。
所以现在问题转化成了求条件分布的参数关于训练数据(C,X)的后验分布。那么我们来看看怎么求这个后验分布。条件分布关于训练数据的似然函数
==--------------------------------------------------------------------------③
有没有发现和有一点像?像在和C互换了位置,互为条件概率,可以考虑使用贝叶斯公式来进行转化,即
=------------------------------------------------------------------------------④
所以现在问题又进行了转化,变成了求条件分布关于训练数据的似然函数、参数的先验分布和C关于X的条件分布三个小问题。我们已经知道似然函数怎么求,先验分布也不需要求(先验知识,就是我们在解决问题之前已经知道的知识),而
==----------------------------------------------⑤
至此问题已经解决,综合上述①-⑤各式,我们终于可以求出输出关于输入的条件分布啦!
=---------------------------------------------------⑥
⑥中的两个积分的计算是很麻烦的,在实际解决问题的过程中要想办法省略掉。
对于②中积分公式可以使用variational inference的方法干掉,variational inference用一句话来说就是:如果训练样本足够多的话,可以使用的最大后验分布来对进行点估计(point estimate)。即有:
==----------------------------------------------------------------------⑦
所以我们干掉了第一个积分问题,把问题简化成了求的最大后验概率。
观察④式可以发现分子是常数,如果我们省略掉④中的分子对结果是没有影响的(只需要对分子进行normalize就可以得到后验概率),那么我们又干掉了第二个积分公式,将问题简化成了求的最大值。如果先验分布在似然函数较大的区间是固定不变或变化较小的,那么问题又可以转化成求最大似然函数!
实际上,在噪声高斯分布的假设下,最小误差平方和优化问题(即求使误差平方和最小的参数)等价于求最大似然函数(即使似然函数最大的参数)。
做一个总结,判别模型求解的思路是:条件分布------>模型参数后验概率最大------->(似然函数参数先验)最大------->最大似然

2)现在考虑生成模型。给定输入,生成模型可以给出输入和输出的联合分布,所以生成方法的目标是求出这个联合分布。这里以朴素贝叶斯模型为例,我们要求的目标可以通过:
=------------------------------------------------------------------------------------------⑧
这样将求联合分布的问题转化成了求类别先验概率和类别条件概率的问题,朴素贝叶斯方法做了一个较强的假设--------feature的不同维度是独立分布的,简化了类别条件概率的计算,如果去除假设就是贝叶斯网络,这里不再赘述。
以朴素贝叶斯为例,生成模型的求解思路是:联合分布------->求解类别先验概率和类别条件概率
最后说一说两种模型的优缺点:
生成模型:
优点:
1)生成给出的是联合分布,不仅能够由联合分布计算条件分布(反之则不行),还可以给出其他信息,比如可以使用来计算边缘分布。如果一个输入样本的边缘分布很小的话,那么可以认为学习出的这个模型可能不太适合对这个样本进行分类,分类效果可能会不好,这也是所谓的outlier detection。
2)生成模型收敛速度比较快,即当样本数量较多时,生成模型能更快地收敛于真实模型。
3)生成模型能够应付存在隐变量的情况,比如混合高斯模型就是含有隐变量的生成方法。
缺点:
1)天下没有免费午餐,联合分布是能提供更多的信息,但也需要更多的样本和更多计算,尤其是为了更准确估计类别条件分布,需要增加样本的数目,而且类别条件概率的许多信息是我们做分类用不到,因而如果我们只需要做分类任务,就浪费了计算资源。
2)另外,实践中多数情况下判别模型效果更好。
判别模型:
优点:
1)与生成模型缺点对应,首先是节省计算资源,另外,需要的样本数量也少于生成模型。
2)准确率往往较生成模型高。
3)由于直接学习,而不需要求解类别条件概率,所以允许我们对输入进行抽象(比如降维、构造等),从而能够简化学习问题。
缺点:
1)是没有生成模型的上述优点。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
色彩中蓝色、红色、黄色除了加白色以外还有什么办法提高明度 色彩不敢调亮怎么办? 色彩如何提亮 男朋友惹我生气了 事后一点悔意也没 都在气头上 我不小心打男朋友了 他... 解签:为人处事莫亏心,暗室之中有灵应,一时得意反成失,半点悔改胜似金... 我手机之前一段时间由于欠费停机了 前几天我充了50元进去怎么还是... 撕名牌可以用哪些超能力技能? 为什么5孔插座带开关,安装好之后,灯有电,插座不通电? 怎么把照片内存变小 图片内存变小的方法 百度地图导航如何连接车蓝牙 百度地图导航连接车蓝牙方法 泊松分布的分布函数是什么? 估计理论的基本内容 设总体X服从泊松分布 P(λ),X1,X2,…,Xn为取自X... 大学数学应用概率与统计的知识点总结 为什么说信号与系统是不可分割的整体? 自考高数二 设总体X服从参数λ的泊松分布,X1,X2,…,Xn是总体X的... 设母体ξ具有指数分布,密度函数为 ,(λ>0) 试求... 有关概率论的问题,数学好的请多指教 dbscan是通过条件概率的最大似然估计推导的吗 真实后验什么时候是多模态的 贝叶斯理论中,为什么是先验概率和最大似然估计的乘积 二项分布 最大似然估计 设总体X服从参数为1的指数分布,X1,X2,...Xn是取... 似然函数的分布类型 数理统计中似然函数怎么求啊 华为手机app启动广告怎么关闭 为什么现在打开每个app几乎都有几秒的广告? vivo手机app打开广告怎么去掉 为什么现在的手机一打开app基本全有广告? 请问这题第二问求最大似然估计,为什么可以通过联... 概率论与数理统计如何复习 概率论和数理统计 这个题怎么用卷积公式做? 手机连接不上wifi,总是显示请检查网络连接是怎么回... 手机无法连接网络,请检查网络设置。这是怎么回事... 手机无法上网 总显示连接服务器失败,请检查网络 手机屏幕上,一直显示操作失败请检查网络设置 安卓手机,时间段网络连接错误"连接失败,请检查手机... 手机提示:无法连接网络,请检查网络设置是怎么回事? QQ邮箱可以往163发邮件吗 为什么登录时会提示“连接失败,请检查手机网络”? QQ邮箱可以发邮件到163邮箱吗? 怎样将QQ邮箱的邮件转到163邮箱 怎么把QQ邮箱邮件导出到163@.com邮箱 梦里一下子梦到了狗鸡牛和一群羊,求解…… 做梦梦到羊圈里的羊群,和流浪狗 同时梦见羊、狗和猫 做梦梦到两只红色的狗和一群羊 梦见自己家的墙外鲜花盛开,还有狗狗,猫猫,羊,还有... 梦见羊和狗