本篇博文总结最近学习到的生成式模型与判别式模型的知识。
1. 简介
就像之前在总结分类和聚类时说的一样,机器学习基本在做的事情就是在分类、打标签,我们的模型也就像一个个分类机器(个人看法,欢迎指正)。而这么多的模型,可以分为两类:生成式模型与判别式模型。
当我们建立一个分类器以后,当我们丢进去 x 以后,那么我们到底该如何决定它该分到哪一个标签呢,也就是它会抛出的 y 会是多少呢?很自然地,我们会想到使条件概率 p(y|x) 最大的 y 是我们的理想值。说到这里,我们就可以接着简单介绍生成式模型和判别式模型了
判别式模型:按名字,并不严谨地,我们可以理解为它直接判别 y 到底应该为多少。它直接对后验概率 p(y|x) 建模,然后求使得 p(y|x) 最大的 y,从而得到 y 的估计值。
生成式模型:按名字,同样并不严谨地,我们可以理解为它是‘生成’一个分布。因为他是对联合分布 p(x,y) 进行建模处理的。那么生成式模型如何判别到底 y 为多少呢?它是通过对 p(x,y) 运用贝叶斯公式得到 p(y|x) ,然后再求使得 p(y|x) 最大的 y ,从而得到 y 的估计值。具体的公式为:
从上面的介绍也可以发现,从生成式模型可以推出判别式模型,但从判别式模型却不能推出生成式模型(二者联系)。
也有这么说二者的:判别式模型只形成一个模型,输入 x ,就根据 p(y|x) 的值返回标签;生成式模型则同时形成多个模型,一个类别形成一个模型,然后再每个模型中计算 p(y|x) ,比较后判定 y 的值
2. 常见的生成式模型与判别式模型
生成式模型 | 判别式模型 |
---|---|
1.判别式分析 2.朴素贝叶斯 3.K近邻(KNN) 4.混合高斯模型 5.隐马尔科夫模型(HMM) 6.贝叶斯网络 7.Sigmoid Belief Networks 8.马尔科夫随机场(Markov Random Fields) 9.深度信念网络(DBN) |
1.线性回归(Linear Regression) 2.逻辑斯蒂回归(Logistic Regression) 3.神经网络(NN) 4.支持向量机(SVM) 5.高斯过程(Gaussian Process) 6.条件随机场(CRF) 7.CART(Classification and Regression Tree) |
3. 生成式模型与判别式模型的比较
优点 | 缺点 | |
---|---|---|
生成式模型 |
|
|
判别式模型 |
|
|
参考链接:
【1】 判别式模型 vs. 生成式模型