1 定义

1.1 生成式模型

生成式模型(Generative Model)会对x和y的联合分布p(x,y)建模,然后通过贝叶斯公式来求得 p(yi|x),然后选取使得p(yi|x) 最大的 yi,即:

简单说生成式模型就是生成数据分布的模型。将求联合分布的问题转为了求类别先验概率和类别条件概率的问题。

1.2 判别式模型

对条件概率 p(y|x;) 直接建模。

简单说就是判别数据输出量的模型,解决问题的思路为:

条件分布>模型参数后延概率最大>似然函数*参数先验最大>最大似然

生成式模型可以转为判别式模型,反之不行。

AndrewNg在NIPS2001年有一篇专门比较判别模型和产生式模型的文章:

On Discrimitive vs. Generative classifiers: A comparision of logistic regression and naive Bayes

2 模型优劣比较

2.1 生成式模型

常见的生成式模型有:

  • 线性判别式分析 (Linear Discriminant Analysis)
  • 朴素贝叶斯 (Native Bayesian)
  • K近邻 (KNN)
  • 混合高斯模型 (GaussianMixture Model)
  • 隐马尔科夫模型 (HiddenMarkov Model)
  • 贝叶斯网络 (Bayesian Networks)
  • 马尔科夫随机场 (Markov Random Fields)
  • 深度信念网络 (Deep Belief Networks)

其特点在于(相比于判别式模型):

  • 通常收敛速度较快,少量样本就可以收敛
  • 能应付隐变量
  • 需要对数据分布做出假设(比方朴素贝叶斯假设特征分布符合条件独立的假设)
  • 计算量大
  • 实践效果(比如分类)稍差
  • 容易过拟合
  • 更好利用无标签数据(DBN)
  • 添加新的类别时,计算新的联合分布即可,不需要全部数据重新训练
  • 能检测异常值

2.2 判别式模型

常见的判别式模型有:

  • 线性回归 (LinearRegression)
  • 逻辑斯蒂回归 (LogisticRegression)
  • 神经网络 (NN)
  • 支持向量机 (SVM)
  • 高斯过程 (GaussianProcess)
  • 条件随机场 (CRF)
  • CART(Classificationand Regression Tree)

其特点在于(相比于生成式模型):

  • 节省计算资源
  • 节省样本
  • 效果好一些
  • 输入数据可以预处理(降维、构造等),简化学习的问题
  • 解决凸优化问题
  • 添加新的数据时,所有数据要重新训练
  • 不能检测异常值

参考:

知乎:机器学习“判定模型”和“生成模型”有什么区别?

https://www.cnblogs.com/kemaswill/p/3427422.html

《统计学习方法》

生成式模型 VS 判别式模型的更多相关文章

  1. 判别式模型 vs. 生成式模型

    1. 简介 生成式模型(generative model)会对\(x\)和\(y\)的联合分布\(p(x,y)\)进行建模,然后通过贝叶斯公式来求得\(p(y|x)\), 最后选取使得\(p(y|x) ...

  2. 产生式模型(生成式模型)与判别式模型<转载>

    转自http://dongzipnf.blog.sohu.com/189983746.html 产生式模型与判别式模型 产生式模型(Generative Model)与判别式模型(Discrimiti ...

  3. 生成式模型(generative) vs 判别式模型(discriminative)

    Andrew Ng, On Discriminative vs. Generative classifiers: A comparison of logistic regression and nai ...

  4. AI 判别式模型和生成式模型

    判别式模型(discriminative model) 生成式模型(generative model) 对于输入x,类别标签y:产生式模型估计它们的联合概率分布P(x,y)判别式模型估计条件概率分布P ...

  5. Machine Learning系列--判别式模型与生成式模型

    监督学习的任务就是学习一个模型,应用这一模型,对给定的输入预测相应的输出.这个模型的一般形式为决策函数:$$ Y=f(X) $$或者条件概率分布:$$ P(Y|X) $$监督学习方法又可以分为生成方法 ...

  6. Asp.net管道模型(管线模型)

    Asp.net管道模型(管线模型)   前言 为什么我会起这样的一个标题,其实我原本只想了解asp.net的管道模型而已,但在查看资料的时候遇到不明白的地方又横向地查阅了其他相关的资料,而收获比当初预 ...

  7. linux下多路复用模型之Select模型

    Linux关于并发网络分为Apache模型(Process per Connection (进程连接) ) 和TPC , 还有select模型,以及poll模型(一般是Epoll模型) Select模 ...

  8. Paip.Php Java 异步编程。推模型与拉模型。响应式(Reactive)”编程FutureData总结... 1

    Paip.Php  Java 异步编程.推模型与拉模型.响应式(Reactive)"编程FutureData总结... 1.1.1       异步调用的实现以及角色(:调用者 提货单) F ...

  9. DDD:谈谈数据模型、领域模型、视图模型和命令模型

    背景 一个类型可以充当多个角色,这个角色可以是显式的(实现了某个接口或基类),也可以是隐式的(承担的具体职责和上下文决定),本文就讨论四个角色:数据模型.领域模型.视图模型和命令模型. 四个角色 数据 ...

随机推荐

  1. Oracle12c CDB架构图

  2. 【转】js 对象按照键值(不分区大小写)排序,生成签名方法

    客户需求小程序端用js生成签名,我们按照要求一步一步解决,并且将请求方法封装到一个utils.js里: 第一步:对关联数组按照键名做正序排序. 第二步:拼接字符串 第三步:将拼接的字符串加上私钥 第四 ...

  3. 解决VS Code保存时候自动格式化

    VS code 保存会自动格式化.以前都是alt+shift+F格式化的,现在一保存就格式化 解决方式:找到你的VScode扩展,把JS-CS-HTML Formatter这个插件禁用就可以解决

  4. install sz rz linux

    1◆ ready 2◆ controller component   Xshell 注册码:690313-111999-999313 Xftp 注册码:101210-450789-147200   3 ...

  5. Win10系列:VC++ Direct3D模板介绍1

    Visual Studio为开发Direct3D应用程序提供了便捷的模版,读者可以不必手动去新建Direct3D中所使用到的基础资源,而只需专注于图形的绘制.本小节主要为读者介绍这个模版中用于绘制图形 ...

  6. NOIP2018复赛获奖分数线及名额分配办法

    中国计算机学会CCF NOI科学委员会.竞赛委员会召开会议,确定了CCF NOIP2018复赛获奖分数线及获奖名额分配方案. 提高组一等奖名额分配方案 提高组一等奖全国基准分数线: 245分 CCF ...

  7. Resharper插件如何启用原VS的智能提示

    第一步:vs2015选择工具—>选项—>文本编辑器—>C#—>常规—>语句结束,勾选自动列出成员,如下图: 第二步: 关闭Resharper智能提示,并设置为Visual ...

  8. leetCode 典型回溯例子

    39题,翻译题目:给定一组候选集和一个目标值,在c的所有组合中,找出所有总和等于T的组合. 候选数组c中同一个数可以被选择多次(不限次数) 分析: 典型的回溯法应用 对数组里面的每个数,用递归的方式相 ...

  9. [HDU3726]Graph and Queries

    Problem 给你一张图,点的权值,边和几个操作: D x: 删除第x条边 Q x y: 询问包含x的联通块中权值第y大的权值 C x y: 将x这个点的权值改为y Solution 一看就要离线处 ...

  10. Linux系统分区方案(CentOs 6)

    装Linux如何分区: 方案1:(监控服务器,负载均衡器) 1./boot 引导分区,存放引导文件和Linux内核.       启动文件:用于判断你需要启动哪个操作系统或启动哪个内核.        ...