统计学习方法-李航(第8章 提升方法笔记)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u014248127/article/details/78982139

这一章主要讲boosting提升方法,代表方法是AdaBoost算法,我会从算法的本质去解释算法,尽量用简单的语言其描述,具体推导过程参考原文。
提升方法就是从弱学习算法出发,反复学习,得到一系列弱分类器(又称为基本分类器),然后组合这些弱分类器,构成一个强分类器。
一、 提升方法AdaBoost(AdaptiveBoosting)算法

第一部分主要简述算法的过程,这个算法的本质是把训练好的一些弱分类器集成起来,达到一个好的效果。算法的关键是点是样本权重的修改,以及各个过分类如何加权集成。

样本权重:AdaBoost的做法是,提高那些被前一轮弱分类器错误分类样本的权值,而降低那些被正确分类样本的权值。这样一来,那些没有得到正确分类的数据,由于其权值的加大而受到后轮的弱分类器的更大关注。于是,分类问题被一系列的弱分类器“分而治之”。

弱分类器的组合:AdaBoost采取加权多数表决的方法。具体地,加大分类误差率小的弱分类器的权值,使其在表决中起较大的作用,减小分类误差率大的弱分类器的权值,使其在表决中起较小的作用

二、 AdaBoost算法的训练误差分析

这里推导出来AdaBoost的训练误差是以集成弱分类器个数指数速率下降。这也是算法广泛应用的原因。

三、AdaBoost算法的解释

这里解释了AdaBoost算法是前向分步加法算法的特例。这时,模型是由基本分类器组成的加法模型,损失函数是指数函数。

同时这里用数学公式解释了AdaBoost里面样本权重更新以及弱分类器集成权重公式的由来。就是最小化误差函数计算得到。

四、提升树:提升树是以分类树或回归树为基本分类器的提升方法。(简单说就是用提升方法,把决策树集成起来)

1,提升树模型:提升方法实际采用加法模型(即基函数的线性组合)与前向分步算法。以决策树为基函数的提升方法称为提升树(boosting tree)。对分类问题决策树是二叉分类树,对回归问题决策树是二叉回归树。

2,提升树算法:提升树算法采用前向分步算法。不同问题的提升树学习算法主要区别在于使用的损失函数不同。包括用平方误差损失函数的回归问题,用指数损失函数的分类问题,以及用一般损失函数的一般决策问题。

二类分类问题:提升树算法只需将AdaBoost算法中的基本分类器限制为二类分类树即可,是AdaBoost算法的特殊情况。

回归问题的提升树算法:求解经验风险极小化的问题只需简单地拟合当前模型的残差(也就是去拟合当前模型的残差)

3,梯度提升:当损失函数是平方损失和指数损失函数时,每一步优化是很简单的,此时的提升树利用加法模型与前向分步算法实现学习的优化过程。当一般损失函数而言,这样并不容易,采用最速下降法的近似方法,其关键是利用损失函数的负梯度在当前模型的值作为残差的近似值。

猜你喜欢

转载自blog.csdn.net/u014248127/article/details/78982139