Java教程

生成模型与判别模型

本文主要是介绍生成模型与判别模型,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

决策函数

监督学习的目标是学习到一个模型,通过这个模型对给定的输入,得到一个特定的输出,从而预测该数据的类别。这个模型对应的函数一般是\(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

举例说明

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

这篇关于生成模型与判别模型的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!