机器学习判别式与生成式模型理解与总结

2018-09-28  本文已影响0人  奔向算法的喵

在学习机器学习的算法过程当中,肯定会遇到判别式模型和生成式模型,然后我想在这里归纳总结一下:

一、生成模型与判别式模型的区别

生成式模型和判别式模型的本质差异在于模型中观测序列x和状态序列y之间的决定关系。观测序列x是可以观测到的,可以把x看成是结果。而状态序列是不能观测的,所以可以把y看成是原因或者条件。那么从这个角度上来思考。生成式模型假设的y决定x,而判别式模型是假设y决定了x。
我们的分类器是:给定输入x,分类变量y,求得p(y|x)。

生成式模型

思想是先计算联合概率密度p(x,y),然后通过贝叶斯公式计算出条件概率p(y|x)。
p(y|x)=\frac{p(x|y)p(y)}{p(x)}=\frac{p(x,y)}{p(x)}

判别式模型

直接估算p(y|x)
就是通过训练得到模型权重之后,直接进行计算。
典型代表:逻辑回归

一般情况下,大家更倾向于使用判别式模型一些。Vapnik说过“人们应该更直接去解决问题,永远不要把求解更加复杂的问题作为中间阶段”。
Andrew.Ng的有一篇文章就对这两个模型进行了全面的比较。生成式模型(朴素贝叶斯(NB))在少量样本的情况下,能够获得很好的精确率,而判别式模型(逻辑回归)在样本量增加的情况下,逐渐逼近前者的精确率。
下面就是对生成式和判别式模型的一个思维导图:

生成式与判别式分类

二、概率图模型的相关性

常见模型的分类如思维导图:
在宗成庆老师统计自然语言处理书中的105页,这个图很好的解释了概率图模型中的演变过程,概率图模型真是挺强大了,把这些理解透了,感觉这些概念就跟玩儿一样了。
横向:从点到线(序列结构),到面(图结构)
纵向:在一定的条件下,生成式模型可以转变为判别式模型。



参考资料:
1、
2、

上一篇下一篇

猜你喜欢

热点阅读