首页 > 技术文章 > 生成模型与判别模型

foghorn 2021-09-08 22:49 原文

决策函数

监督学习的目标是学习到一个模型,通过这个模型对给定的输入,得到一个特定的输出,从而预测该数据的类别。这个模型对应的函数一般是\(Y = f(X)\)或者\(P(Y|X)\)。对于决策函数\(Y = f(X)\)类型,一般需要设置一个阈值用于判断属于哪个类别;对于条件概率分布\(P(Y|X)\),只需要选取结果最大的那个类别。

判别模型

由数据直接学得一个判别函数\(Y=f(X)\)(或者\(P(Y|X)\))。判别模型只关注如何分类(如何对给定的数据空间进行特征映射和区分,找到最优的分类面)。模型主要反应的是不同类别之间的差异性。判别模型直接对预测进行建模,效率高,效果比较好。

生成模型

由数据学习联合概率密度分布\(P(X,Y)\),(概率密度分布函数用于采样,产生更多该数据集的数据),然后再根据贝叶斯公式求出\(P(Y|X)\)作为预测模型。也就是说生成模型可以表述为:

\[P(Y|X)=P(X,Y)/P(X) \]

生成模型需要无穷多的样本才可以达到理论是的预测,因为对于\(P(x)\)的学习,需要很多的样本才可以使得其比较可靠。

常见的判别模型和生成模型

判别模型

  • CRF
  • K近邻
  • SVM
  • 决策树
  • boosting
  • 简单神经网络

生成模型

  • HMM
  • 朴素贝叶斯
  • 高斯混合模型
  • LDA
  • RBM

举例说明

判别式模型举例:要确定一个羊是山羊还是绵羊,用判别模型的方法是从历史数据中学习到模型,然后通过提取这只羊的特征来预测出这只羊是山羊的概率,是绵羊的概率。
生成式模型举例:利用生成模型是根据山羊的特征首先学习出一个山羊的模型,然后根据绵羊的特征学习出一个绵羊的模型,然后从这只羊中提取特征,放到山羊模型中看概率是多少,在放到绵羊模型中看概率是多少,哪个大就是哪个。

优缺点及适用场景

生成方法的特点:
生成方法可以还原出联合概率分布\(P(Y|X)\),而判别方法则不能;生成方法学习收敛速度快,即当样本容量增加的时候,学到的模型可以更快地收敛于真实模型;当存在隐变量时,仍可用生成方法学习,此时判别方法就不能用。
判别方法的特点:
判别方法直接学习的是条件概率\(P(Y|X)\)或决策函数\(f(X)\),直接面对预测,往往学习的准确率更高;由于直接学习\(P(Y|X)\)\(f(X)\),可以对数据进行各种程度上的抽象、定义特征并使用特征,可以简化学习问题。

推荐阅读