码迷,mamicode.com
首页 > 其他好文 > 详细

Adaboost

时间:2019-09-15 01:13:00      阅读:97      评论:0      收藏:0      [点我收藏+]

标签:sub   boosting   分类   com   ati   公式   math   XML   函数   

Adaboost是boost提升算法中的一种,Boosting算法是将“弱学习算法“提升为“强学习算法”的过程,主要思想是“三个臭皮匠顶个诸葛亮”。一般来说,找到弱学习算法要相对容易一些,然后通过反复学习得到一系列弱分类器,组合这些弱分类器得到一个强分类器。Boosting算法要涉及到两个部分,加法模型和前向分步算法。加法模型就是说强分类器由一系列弱分类器线性相加而成。一般组合形式如下:

                                  技术图片

其中,h(x;am) 就是一个个的弱分类器,am是弱分类器学习到的最优参数,βm就是弱学习在强分类器中所占比重,P是所有am和βm的组合。这些弱分类器线性相加组成强分类器。

前向分步就是说在训练过程中,下一轮迭代产生的分类器是在上一轮的基础上训练得来的。也就是可以写成这样的形式:

                                 技术图片

由于采用的损失函数不同,Boosting算法也因此有了不同的类型,AdaBoost就是损失函数为指数损失的Boosting算法。

Adaboost算法流程

Adaboost每次选择一个二分类算法,然后计算当前误差,将错误的样本的权值提高,分类正确的样本权值降低,这个算法有一个权重alpha作为这个分类算法最后的权重,然后再次迭代下一次算法模型,遇到m个算法模型或者分类误差率为0时退出算法。

AdaBoost算法的解释

AdaBoost还有一种解释,即可认为AdaBoost算法是模型为加法模型、损失函数为指数函数、学习算法为前向分布算法时的二类分类学习方法。

前向分布算法

加法模型 additive model
                             技术图片
其中, 技术图片 为基函数, 技术图片 为基函数系数, 技术图片 为基函数参数。

在给定训练数据及损失函数 技术图片 的条件下,学习加法模型 技术图片 成为经验风险极小化问题
              技术图片

学习加法模型,从前向后每一步只学习一个基函数及其系数,即每步只优化
                           技术图片

前向分布算法 forward stagewise algorithm:
输入:训练数据集 技术图片 ,损失函数 技术图片 ;基函数集 技术图片
输出:加法模型 技术图片
1. 初始化 技术图片
2. 对 技术图片
2.1 极小化损失函数
技术图片
得到参数 技术图片
2.2 更新
技术图片
3. 得到加法模型
技术图片

定理:AdaBoost算法是前向分布加法算法的特例。这时模型是由基本分类器组成的加法模型,损失函数是指数函数。

证明:

加法模型等价于AdaBoost的最终分类器

技术图片

由基本分类器 技术图片 及其系数 技术图片 组成, 技术图片 。前向分布算法逐一学习基本函数,这一过程与AdaBoost算法逐一学习基本分类器的过程一致。下面证明前向分布算法的损失函数是指数损失函数(exponential loss function)

技术图片

时,其学习的具体操作等价于AdaBoost算法学习的具体操作。

假设经过$m-1$轮迭代前向分布算法已经得到 技术图片 :

技术图片

在第 技术图片 轮得到 技术图片 和 技术图片 .

技术图片

目标是使前向算法得到的$\alpha {m}$和$G{m}$使$f_{m}(x)$在训练数据集$T$上的指数损失最小,即:

技术图片

可以表示成:

技术图片

其中, 技术图片 ,因为 技术图片 不依赖于 技术图片 ,也不依赖于 技术图片 。

首先求 技术图片 ,进一步展开:

技术图片

技术图片 技术图片

所以最小化 技术图片 由下式得到:

技术图片

之后我们求解 技术图片 :

技术图片

技术图片

对 技术图片 求导:

技术图片

技术图片

即得:

技术图片

其中 技术图片 是分类错误率:

                           技术图片

原式 =

                   (e^α + e^(-α)) / (e^(-α)) = 1 / em

                    e^(2*α)  = 1 / em - 1 = (1 - em) / em

  技术图片

这里的 技术图片 与AdaBoost算法的 技术图片 完全一致。

再看一下每一轮的权值更新,由:

技术图片

以及 技术图片 ,可得:

技术图片

这与AdaBoost算法的样本权值的更新,只相差规范会因子,因此等价。

 

参考链接:

【1】https://www.cnblogs.com/ScorpioLu/p/8295990.html

【2】https://zhuanlan.zhihu.com/p/39972832

【3】《统计学习方法》李航

Adaboost

标签:sub   boosting   分类   com   ati   公式   math   XML   函数   

原文地址:https://www.cnblogs.com/lalalatianlalu/p/11520624.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!