简说机器学习--生成式模型与判别式模型

常见的判别式模型:

线性回归、逻辑回归、线性判别、集成学习、支持向量机、神经网络、条件随机场、最大熵模型

常见的生成式模型:

朴素贝叶斯、隐含马尔科夫模型、限制玻尔兹曼机、高斯混合以及其他混合模型、

 

生成和判别模型的区别?

判别式模型不关心数据的分布是什么样的,它直接学习数据决策边界(函数)、或者条件概率P(Y|X)。而生成式模型需要对联合概率分布P(X,Y)建模,并在给定观测数据X的条件下(也就是说知道了P(X)),那么知道了联合概率分布,知道了观测数据,那么才能由P(Y|X)=P(X,Y)/P(X)计算出它的后验概率。

它们之间有什么联系?

由生成式模型可以得到判别模型(由P(X,Y)),但是由判别式模型无法推断出生成式模型。判别式模型简单容易理解,但是在存在隐变量的情况下就只能用生成式。生成式虽然建模复杂但是收敛的速度更快,从概率统计的角度来说也反应数据本身的分布特性。

 

一个简单的例子:

我们有数据(X,Y):(0,1),(0, 1),(1,-1),(1 , 1)

生成模型对联合概率P(X,Y)建模:

  Y=1 Y=-1
X=0 1/2 0
X=1 1/4 1/4

对于判断式模型,学习它的条件概率P(Y|X):

  Y=1 Y=-1
X=0 2/2 0
X=1 1/2 1/2

只要我们数据的联合概率分布P(X,Y),我们是可以推断出它的条件概率分布P(Y|X)。但如果只给定条件概率分布,我们不能反推出数据的联合概率分布。

 

参考资料:https://shunliz.gitbooks.io/machine-learning/content/ml/pythonml/gen-descri.html

百面机器学习--第六章第3节

你可能感兴趣的:(机器学习,机器学习,生成式模型,判断式模型)