生成模型和判别模型

最近写项目申请书涉及到这个问题,基于贝叶斯的概率生成模型和常规的CNN模型。

CNN模型是一个判别过程,在训练过程,每一个中间层可以看做是一个滤波器,但是具体每个滤波器承担的功能,并不知道。

而基于贝叶斯概率的生成模型,因为能够在建模中对噪声进行建模,所以训练时候会对噪声更鲁棒。而且这个生成过程既可以用MLP,CNN, NN等建模,所以灵活性更好。


*************************以下内容来自http://blog.csdn.net/zouxy09/article/details/8195017********************

监督学习分为生成方法和判别方法,所学到的模型分别称为生成模型和判别模型

判别方法:由数据直接学习决策函数Y=f(x)或者条件概率分布p(y|x)作为判别模型。基本思想就是在有限条件下建立判别函数,不考虑样本的产生模型,直接研究判别模型。

生成模型:由数据学习联合概率密度分布p(x,y),然后求出条件概率分布p(y|x)作为预测的模型,即生成模型:p(y|x)=p(y,x)/p(x)。基本思想是首先建立样本的联合概率密度p(x,y),然后再得到后验概率p(y|x),在利用它进行分类。

准确地说,生成模型应当是对输入x和特征y的联合分布p(x, y)建模。可以通过计算p(y|x)=p(x, y)/p(x)计算特征的后验概率.

相比判别模型,生成模型需要先求出p(y,x)和p(x)才能做出正确分类,这里p(x)是训练数据的概率分布,一般说来,只有在训练样本很多的情况下,统计出的概率分布才是接近真实情况的。之所以叫做生成方法,是因为模型表示了给定输入x产生输出y的生成关系。

生成方法的特点:生成方法学习联合概率密度分布P(X,Y),所以就可以从统计的角度表示数据的分布情况,能够反映同类数据本身的相似度。但它不关心到底划分各类的那个分类边界在哪。生成方法可以还原出联合概率分布P(Y|X),而判别方法不能。生成方法的学习收敛速度更快,即当样本容量增加的时候,学到的模型可以更快的收敛于真实模型,当存在隐变量时,仍可以用生成方法学习。此时判别方法就不能用

判别方法的特点:判别方法直接学习的是决策函数Y=f(X)或者条件概率分布P(Y|X)。不能反映训练数据本身的特性。但它寻找不同类别之间的最优分类面,反映的是异类数据之间的差异。直接面对预测,往往学习的准确率更高。由于直接学习P(Y|X)或P(X),可以对数据进行各种程度上的抽象、定义特征并使用特征,因此可以简化学习问题。

由生成模型可以得到判别模型,但是判别模型得不到生成模型。

再假如你的任务是识别一个语音属于哪种语言。例如对面一个人走过来,和你说了一句话,你需要识别出她说的到底是汉语、英语还是法语等。那么你可以有两种方法达到这个目的:

1、学习每一种语言,你花了大量精力把汉语、英语和法语等都学会了,我指的学会是你知道什么样的语音对应什么样的语言。然后再有人过来对你哄,你就可以知道他说的是什么语音,是哪国语言。

2、不去学习每一种语言,你只学习这些语言模型之间的差别,然后再分类。意思是指我学会了汉语和英语等语言的发音是有差别的,我学会这种差别就好了。

那么第一种方法就是生成方法,第二种方法是判别方法。

生成算法尝试去找到底这个数据是怎么生成的(产生的),然后再对一个信号进行分类。基于你的生成假设,那么那个类别最有可能产生这个信号,这个信号就属于那个类别。判别模型不关心数据是怎么生成的,它只关心信号之间的差别,然后用差别来简单对给定的一个信号进行分类。

********************************************end***************************************************

 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值