生成模型与判别模型
监督学习任务:学习一个模型,应用这个模型,对给定的输入预测相应的输出。
模型形式:
- 决策函数: Y = f ( X ) Y = f(X) Y=f(X)
- 条件概率分布: P ( Y ∣ X ) P(Y|X) P(Y∣X)
学习方法:
-
生成方法(generative approach)
由数据学习联合概率分布 P ( X , Y ) P(X,Y) P(X,Y),然后求出条件概率分布 P ( Y ∣ X ) P(Y|X) P(Y∣X)作为预测的模型,即生成模型:
P ( Y ∣ X ) = P ( X , Y ) P ( X ) P(Y|X)=\frac{P(X,Y)}{P(X)} P(Y∣X)=P(X)P(X,Y)?
这样的方法称为生成方法,因为模型表示了给定输入X产生输出Y的生成关系。 -
判别方法(discriminative approach)
由数据直接学习决策函数 f ( X ) f(X) f(X)或者条件概率分布 P ( Y ∣ X ) P(Y|X) P(Y∣X)作为预测的模型,即判别模型,判别方法关心的是对给定的输入X,应该预测什么样的输出Y。
学到的模型:
- 生成模型(generative model):朴素贝叶斯法和隐马尔可夫模型
- 判别模型(discriminative model) :k近邻法、感知机、决策树、逻辑斯谛回归模型、最大熵模型、支持向量机、提升方法和条件随机场
生成方法特点:
- 生成方法可以还原出联合概率分布 P ( X , Y ) P(X,Y) P(X,Y),而判别方法则不能
- 生成方法的学习收敛速度更快,即当样本容量增加的时候,学到的模型可以更快地收敛于真实模型
- 当存在隐变量时,仍可以用生成方法学习,此时判别方法就不能用
判别方法特点:
- 判别方法直接学习的是条件概率 P ( Y ∣ X ) P(Y|X) P(Y∣X)或决策函数 f ( X ) f(X) f(X),直接面对预测,往往学习的准确率更高
- 由于直接学习 P ( Y ∣ X ) P(Y|X) P(Y∣X)或 f ( X ) f(X) f(X),可以对数据进行各种程度上的抽象、定义特征并使用特征,因此可以简化学习问题。