1 问题引入
1.1 强学习与弱学习
提升方法的思想是,对于一个复杂任务,多个专家综合的判断所得出的结果要比一个专家号,即三个臭皮匠赛过诸葛亮的道理。弱学习算法是指学习的正确率比随机猜测略好,强学习算法不仅可以学习,还能得到很高正确率。经学者证明,强可学习和弱可学习是等价的,即同时成立。所以我们的目标是找到一个弱学习算法,然后通过提升措施,将其升级为正确率高的强可学习。
1.2 boosting和bagging
boosting:通过串行训练得到,每一个分类器都根据前一个分类器的性能来进行训练,集中关注被前分类器错分的数据,并且每个分类器的权重不同,最后综合所有分类器的结果。本文介绍其中最流行的adaboost。
bagging:从原始数据集中选择s次后得到s个新数据集,将某个弱学习算法分别应用到这些新数据集上,得到s个分类器,使用分类器投票结果中最多的类别作为最终的分类结果。与boosting不同的是,分类器是并行得到,并且所有分类器权重相等。
2 算法概述
2.1 工作原理
递归的在数据集上进行训练得到分类器,每一个分类器的训
练依赖于前一个分类器的性能,即每次将误分类的数据给予更高的权值,使新的分类器更关注上一轮误分类的数据,综合所有分类器的结果,误差率低的分类器给予更高的权值,直到分类误差率为零。
2.2 三要素
模型:加法决策模型
策略:指数函数
算法:前向分步算法
3 提升树
3.1 工作原理
提升树是以分类树或回归树为基本分类器的提升方法。对分类问题决策树基函数是二叉分类树,对回归问题决策树是二叉回归树。同样是采用前向分步算法的加法模型。
3.2 具体步骤
(1)初始化回归树T1
(2)计算残差,构建残差表
(3)拟合残差求回归树T2
(4)更新加法模型
3.3 梯度提升
当损失函数是平方损失和指数损失的情况,每一步的优化比较简单,但对一般损失函数而言,每一步的优化并不容易,这时利用最速下降法的近似方法,关键是利用损失函数的负梯度在当前模型的值作为残差的近似值。
优点:泛化错误率低,可以应用在大部分分类器上,无参数调整
缺点:对离群点敏感
参考资料:统计学习方法(李航)、机器学习实战(Peter)