生成模型和判别模型
2015-07-08 16:45
169 查看
生成模型与判别模型
监督学习的任务就是学习一个模型,应用这个模型,对给定的输入预测相应的输出。这个模型一般为决策函数:Y=f(X) 或 条件概率分布:P(Y|X)。监督学习的学习方法可以分为生成方法(generative approach)和判别方法(discriminative approach)。所学到的模型分别叫生成模型和判别模型。
生成方法
定义
由数据学习联合概率分布P(X,Y), 然后由P(Y|X)=P(X,Y)/P(X),求出概率分布P(Y|X)。该方法表示了给定输入X产生输出Y的生成关系。
典型模型
朴素贝叶斯方法、隐马尔可夫模型
特点
生成方法可以还原出联合概率分P(X,Y),而判别方法不能;生成方法的学习收敛速度更快,当样本容量增加的时候,学到的模型可以更快的收敛于真实模型;当存在隐变量时,仍可以利用生成方法学习,此时判别方法不能用。
注释
当我们找不到引起某一现象的原因的时候,我们就把这个在起作用,但是,无法确定的因素,叫“隐变量”
判别方法
定义
由数据直接学习决策函数Y=f(X)或条件概率分布P(Y|X)作为预测模型,即判别模型。判别方法关心的是对于给定的输入X,应该预测什么样的输出Y。
典型模型
k近邻法、感知机、决策树、逻辑斯谛回归模型、最大熵模型、支持向量机、提升方法、条件随机场
特点
判别方法直接学习的是决策函数Y=f(X)或条件概率分布P(Y|X),直接面对预测,往往学习准确率更高;由于直接学习P(Y|X)或f(X),可以对数据进行各种程度上的抽象、定义特征并使用特征,因此可以简化学习问题。
相关文章推荐
- SVM分类task1
- C++ Primer学习笔记(13)——封装、继承、多态
- 读书笔记----深入理解计算机系统
- mvc 中的传值
- 网页中图片预加载的原理
- Eclipse中的全局搜索
- 在C#应用程序中,利用表值参数过滤重复,批量向数据库导入数据,并且返回重复数据
- 公鸡3元每只,母鸡5元每只,小鸡1元3只,一百元钱买一百只鸡,请用伪代码写出求公鸡,母鸡和小鸡的数目
- 从另一服务器传输文件到本服务器(服务器间传输文件)
- chrome启用 NPAPI [转]
- 网页中图片预加载的原理
- JAVA_SE基础——12.运算符的优先级
- arm-2009q1-203-arm-none-linux-gnueabi 安装
- 【转播公告】
- Mongo库表操作命令
- MongoDB安装和简介
- 范数、奇异值
- 有1~5000一组乱序数列,请使用伪代码对该数进行排列
- The way it is connected with wristwatches connected with almost any bunch of Diesel-engined is unique
- C++学习笔记 extern C