生成模型与判别模型
- 监督学习的任务是学习一个模型,对给定的输入预测相应的输出
这个模型的一般形式为一个决策函数或一个条件概率分布(后验概率):
$$Y=f(X)\quad \text{or}\quad P(Y|X)$$- 决策函数:输入 X 返回 Y;其中 Y 与一个阈值比较,然后根据比较结果判定 X 的类别
- 条件概率分布:输入 X 返回 X 属于每个类别的概率;将其中概率最大的作为 X 所属的类别
监督学习模型可分为生成模型与判别模型
判别模型直接学习决策函数或者条件概率分布
- 直观来说,判别模型学习的是类别之间的最优分隔面,反映的是不同类数据之间的差异
生成模型学习的是联合概率分布
P(X,Y)
,然后根据条件概率公式计算P(Y|X)
$$P(Y|X)=\frac{P(X,Y)}{P(X)}$$
两者之间的联系
- 由生成模型可以得到判别模型,但由判别模型得不到生成模型。
当存在“隐变量”时,只能使用生成模型
隐变量:当我们找不到引起某一现象的原因时,就把这个在起作用,但无法确定的因素,叫“隐变量”
优缺点
- 判别模型
- 优点
- 直接面对预测,往往学习的准确率更高
- 由于直接学习
P(Y|X)
或f(X)
,可以对数据进行各种程度的抽象,定义特征并使用特征,以简化学习过程
- 缺点
- 不能反映训练数据本身的特性
- …
- 优点
- 生成模型
- 优点
- 可以还原出联合概率分布
P(X,Y)
,判别方法不能 - 学习收敛速度更快——即当样本容量增加时,学到的模型可以更快地收敛到真实模型
- 当存在“隐变量”时,只能使用生成模型
- 可以还原出联合概率分布
- 缺点
- 学习和计算过程比较复杂
- 优点
常见模型
- 判别模型
- K 近邻、感知机(神经网络)、决策树、逻辑斯蒂回归、最大熵模型、SVM、提升方法、条件随机场
- 生成模型
- 朴素贝叶斯、隐马尔可夫模型、混合高斯模型、贝叶斯网络、马尔可夫随机场