定义
监督学习的任务就是学习一个模型,应用这一模型,对给定的输入预测相应的输出,这个模型的一般形式为决策函数:
或者条件概率分布:
监督学习方法又可以分为生成方法(generative approach) 和判别方法(discriminative approach). 所学到的模型分别称为生成模型(generative model) 和判别模型(discriminative model).
—— 李航《统计学习方法》
同样地,在李航老师的这本《统计学习方法》中,对生成方法和判别方法做出了如下定义:
生成方法由数据学习联合概率分布
,然后求出条件概率分布
作为预测的模型,即生成模型:
这样的方法之所以称为生成方法,是因为模型表示了给定输入
产生输出
的生成关系,典型的生成模型有:朴素贝叶斯法和隐马尔可夫模型.
判别方法由数据直接学习决策函数
或者条件概率分布
作为预测的模型,即判别模型. 判别模型关心的是给定输入
,应当输出什么样的
.典型的判别模型包括:k近邻法、感知机、决策树、逻辑斯谛回归模型、最大熵模型、支持向量机、提升方法和条件随机场等.
特点对比
生成模型(generative model)
优点
- 能计算出联合概率分布
,可以反映同类数据本身的相似度.
- 学习收敛速度更快,即当样本容量增加的时候,学习到的模型可以更快地收敛于真实模型.
- 能够用于数据不完整的情况,且能检测异常值.
缺点
- 含有更多的信息,但同样也需要更多的计算资源.
- 仅用于分类任务时,有许多冗余信息.
判别模型(discriminative model)
优点
- 学习的是条件概率
或决策函数
,直接面对预测问题,往往准确率更高.
- 可以对数据进行各种程度上的抽象、定义特征并使用特征,简化学习问题.
- 对分类任务,冗余信息更少,能节省计算资源.
缺点
- 不能反映数据本身的特性.
- 数据缺失或者异常值对预测结果的影响较大.
举例
假设有四个样本:
在生成模型的世界中是:
而在判别模型的世界中是:
模型实例
参考资料
[1] 李航. 统计学习方法[M]. 清华大学出版社, 2012: 17,18.
[2] politer. 知乎: 机器学习“判定模型”和“生成模型”有什么区别?[EB/OL]. www.zhihu.com/question/20…, 2018-06-07/2018-07-17