机器学习之集成学习(二)AdaBoost算法

本文详细介绍了AdaBoost算法,包括boosting算法的基本原理,AdaBoost在分类和回归问题中的应用,误差率计算,弱学习器权重系数的确定,样本权重更新,结合策略以及损失函数优化。此外,还阐述了AdaBoost的二元分类和回归问题的算法流程,以及正则化方法,最后进行了AdaBoost算法的总结。
摘要由CSDN通过智能技术生成

一、boosting算法的基本原理

        集成学习器根据个体学习器的生成是否存在依赖关系,可以分为两类:个体学习器间存在强依赖关系,必须串行生成,代表算法是boosting系列算法;个体学习器之间不存在强依赖关系,可以并行生成,代表算法是bagging和随机森林系列算法。在boosting系列算法中,AdaBoost是最著名的算法之一。AdaBoost既可以用作分类,也可以用作回归。
 
        Boosting算法的工作机制是首先从训练集中用初始权重训练出一个弱学习器1,根据弱学习器的学习误差率来更新训练样本的权重,使弱学习器1学习误差率高的训练样本点的权重变高,在后面的弱学习器2中得到更多的重视,然后基于调整权重后的训练集来训练弱学习器2,如此重复,直到弱学习器数目达到事先指定的数目T,最后将T个弱学习器通过集合策略进行整合,得到最终的强学习器。从偏差-方差分解的角度看,Boosting主要关注降低偏差,因此Boosting能基于泛化性能相当弱的学习器构建出很强的集成。
        Boosting系列算法需要解决以下几个具体问题:
        1、如何计算学习误差e?
        2、如何得到弱学习器权重系数a?
        3、如何更新样本权重D?
        4、使用何种结合策略?

二、AdaBoost算法的基本思路

        假设训练数据集

        训练集的第k个弱学习器的输出权重为

        初始权重

2.1 Adaboost的分类问题

误差率e
        由于多元分类是二元分类的推广,这里假设是二元分类,输出为{-1, 1},则第k个弱分类器Gk(x)在训练集上的加权误差率为

弱学习器权重系数a
        对于二元分类问题,第k个弱分类器Gk(x)的权重系数为
 
        从上式可以看出,分类误差率e_k越大,则对应的弱分类器权重系数越小,误差率小的弱分类器权重系数越大。这个权重系数公式的来源在后文AdaBoost损失函数优化时再讲。
更新样本权重D
        假设第k个弱分类器的样本集权重系数为 ,则第k+1个弱分类器的样本集权重系数为

        这里Z_K是规范化因子

        从 的计算公式可以看出,如果第i个样本分类错误,则
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值