判别模型和生成模型总结

区别

判别模型:在有限样本的条件下建立判别函数,也就是最优分类面,实现分类(估计条件概率分布P(y|x))。
判别模型:建立样本的联合概率,再利用模型进行推理预测,要求样本尽可能大(估计联合概率分布P(x,y))。

常见模型

判别模型:最大熵模型(ME),条件随机场(CRF),最大熵马尔可夫(MEMM),SVM
生成模型:朴素贝叶斯(NB),隐马尔可夫模型(HMM),LDA主题模型,高斯混合模型

优缺点:

生成模型:

  • 优点:面向整体数据,可还原出联合概率分布,反应不同数据的联系;可以通过增量学习(样本容量增加时,快速收敛)得到;当含有隐变量时,仍可用生成学习方法,此时不能用判别方法。
  • 缺点:分类性能不高,识别精度不高;要产生联合概率,资源使用过大

判别模型:

  • 优点:简单,面向分类边界训练,可以清晰地分类出类别之间的差异性。
  • 缺点:不能反应数据本身的特性,变量间的的关系不可视。

在分类问题中,在样本较小的情况下,容易产生过拟合,而考虑先验可以减少过拟合,所以生成模型的效果较好;当样本增大时,判别模型会渐渐优于生成模型,因为判别模型本身的直接目标就是判别类与类之间的差别。

例子

数据样本:(1,0), (1,0), (2,0), (2, 1)

  • 联合分布P(x,y) :P(1,0) = 1/2; P(2,0) = 1/4; P(2,1) = 1/4
  • 条件分布P(y|x): P(0 | 1 ) = 1 ; P(1 | 1 ) =0 ; P(0 | 2 ) =1/2 ; P(1 | 2 ) =1/2 ;

你可能感兴趣的:(概率图模型)