直观认识1

假设现在你想知道你对面的老外讲的是哪国语言,可以很直观的想到下面两种策略:

  • 对各种语言进行建模,然后判断最有可能属于哪种语言(生成模型)
  • 了解各种语言之间的区别(而不用去学习各种语言),然后进行分类(判别模型)

我们平时听到日语,俄语,德语啥的,很快就能分辨出来,但实际上我们并没有去系统学习每一种语言,主要是通过它们之间的差异进行辨别,这就是一种判别模型方法。

此处输入图片的描述


判别模型2

判别模型:由数据直接学习决策函数 $Y=f(X)$ 或者条件概率分布 $P(Y|X)$ 作为预测的模型,即判别模型。基本思想是在有限样本条件下建立判别函数,不考虑样本的产生模型,直接研究预测模型。

判别模型法直接学习决策函数 $Y=f(X)$ 或者条件概率分布 $P(Y|X)$,不能反映训练数据本身的特性,着重于寻找不同类别之间的最优分类面,反映的是异类数据之间的差异。

常见的判别模型有线性回归、对数回归、线性判别分析、支持向量机、boosting、条件随机场(CRF)、神经网络等。


生成模型

生成模型:由数据学习联合概率密度分布 $P(X,Y)$,然后求出条件概率分布 $P(Y|X)$ 作为预测的模型,即生成模型:$P(Y|X)= \frac{P(X,Y)}{P(X)}$。基本思想是首先建立样本的联合概率概率密度模型 $P(X,Y)$ ,然后再得到后验概率 $P(Y|X)$,再利用它进行分类。

生成模型学习联合概率密度分布 $P(X,Y)$ ,所以可以从统计的角度表示数据的分布情况,能够反映同类数据本身的相似度,但它不关心到底划分各类的分类边界在哪。

常见的生成模包括有隐马尔科夫模型(HMM)、朴素贝叶斯模型、高斯混合模型、LDA、Restricted Boltzmann Machine等。

此处输入图片的描述