机器学习实战中文版:利用AdaBoost元算法提高分类性能
1. 概述
- 基于数据集多重抽样的分类器
将不同的分类器组合起来,组合有多种形式:不同算法的,也可以是同一算法不同设置,还可以是数据集和分类器都不同,书上主要对AdaBoost进行了实现 - 前人栽树,后人乘凉
AdaBoost全称是自适应增强算法,是顺序级联的结构,使用的分类器类型是一样的,分类的结果是基于所有分类器的加权求和结果,每个权重代表的是其对应分类器在上一轮迭代中的成功度
优点:泛化错误率低,易编码,可以应用在大部分分类器上,无参数调整。
缺点:对离群点敏感。
适用数据类型:数值型和标称型数据。
2. 实现
- 基于单层决策树构建弱分类器
是决策树的一个简化版本 - 确定权重向量,也就是样本困难度,根据上次训练结果更新权重
正确的降低,错误的增加,一直迭代,直到误差允许范围 - 根据分类器性能评估的值加权求和得到最后的结果
3. 总结
- 可以把弱分类器想象成SVM中的一个核函数,也可以按照最大化某个最小间隔的方式重写AdaBoost算法 。而它们的不同就在于其所定义的间隔计算方式有所不同,因此导致的结果也不同。特别是在高维空间下,这两者之间的差异就会更加明显。(这一段是书上的原话,并没有很理解,可能在几何上可以理解为类似的方式)