关闭

机器学习中的判别模型和生成模型

582人阅读 评论(0) 收藏 举报
分类:

两个模型是啥

我们从几句话进入这两个概念:
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、简单的说,生成模型是从大量的数据中找规律,属于统计学习;而判别模型只关心不同类型的数据的差别,利用差别来分类。


参考文章:
http://blog.csdn.net/zouxy09/article/details/8195017
http://www.cnblogs.com/kaituorensheng/p/3379170.html
http://www.zhihu.com/question/20446337

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:142000次
    • 积分:2957
    • 等级:
    • 排名:第11977名
    • 原创:152篇
    • 转载:53篇
    • 译文:1篇
    • 评论:25条
    最新评论