v2-a2e753542fc6384ee351cabdbe6dd523_r.jpg

判别式模型(Discriminative Model)

  • 判别模型直接对条件概率p(y|x;θ)建模。
  • 常见的判别式模型有线性回归模型、线性判别分析、支持向量机SVM、神经网络、boosting、条件随机场等。
  • 举例:要确定一个羊是山羊还是绵羊,用判别模型的方法是从历史数据中学习到模型,然后通过提取这只羊的特征来预测出这只羊是山羊的概率,是绵羊的概率。

    生成式模型(Generative Model)

  • 生成模型则会对x和y的联合分布p(x,y)建模,然后通过贝叶斯公式来求得p(yi|x),然后选取使得p(yi|x)最大的yi。

  • 常见的生成式模型有 隐马尔可夫模型HMM、朴素贝叶斯模型、高斯混合模型GMM、LDA、高斯、混合多项式、专家的混合物、马尔可夫的随机场。
  • 举例:利用生成模型是根据山羊的特征首先学习出一个山羊的模型,然后根据绵羊的特征学习出一个绵羊的模型,然后从这只羊中提取特征,放到山羊模型中看概率是多少,在放到绵羊模型中看概率是多少,哪个大就是哪个。

    生成模型就是去学习训练数据的分布,即学习联合概率P(X,Y)。主要是对数据分布建模
    判别模型就是直接学习特征与label之间的映射关系
    生成式模型的优点是:
  1. 实际上带的信息要比判别模型丰富, 研究单类问题比判别模型灵活性强
  2. 能更充分的利用先验知识
  3. 模型可以通过增量学习得到 (实验过)

缺点也很明显:

  1. 学习过程比较复杂;
  2. 在目标分类问题中准确度不高

而判别式模型的优点是:

  1. 分类边界更灵活,比生成模型实验效果好
  2. 能清晰的分辨出多类或某一类与其他类之间的差异特征
  3. 适用于较多类别的识别

缺点是:

  1. 不能反映训练数据本身的特性。
  2. 能力有限,可以分类, 但无法把整个场景描述出来。

    对比

    二者目的都是在使后验概率最大化,判别模型是直接对后验概率建模,但是生成模型通过贝叶斯定理这一“桥梁”使问题转化为求联合概率。

    参考文献

    1. 机器学习“判定模型”和“生成模型”有什么区别?