机器学习--AdaBoost详细推导

之前看过一次AdaBoost分类模型,现在结合大神的讲解准备自己从头理解一下。主要包含一下几个方面:

1.泰勒展开式

2.AdaBoost算法思想

3.指数损失函数的意义

4.迭代权重参数的求解

1.泰勒展开式

泰勒公式是将一个在x=x0处具有n阶导数的函数f(x)利用关于(x-x0)的n次多项式来逼近函数的方法。

若函数f(x)在包含x0的某个闭区间[a,b]上具有n阶导数,且在开区间(a,b)上具有(n+1)阶导数,则对闭区间[a,b]上任意一点x,成立下式:

其中Rn(x)为误差项。其中皮亚诺误差项:

将函数ex在x0=0处展开:

由于AdaBoost使用指数损失函数,后面要用到指数函数泰勒展开式来进行近似计算

2.AdaBoost模型思想

采用集成学习方式进行分类,采用多个基学习器的输出组合来确定最终输出,实现分类。

一般采用基学习器的加权平均来实现组合:

每个学习器的权重需要根据本轮的预测结果错误率来进行调整:

每个样本的权重分布也需要根据分类结果进行调整(分类错误,权重增加):

整体算法流程如下:

给定训练集,初始样本权重设置为一样1/m

根据最大迭代次数来进行迭代,

在每一轮中基于训练集以及样本分布权重来构建基学习器,

计算本轮的学习错误率,根据错误率来对学习器权重以及样本权重进行更新

最后加权组合每个基学习器组成最终学习器。

3.指数损失函数的意义

在分类问题中,损失函数一般使用0-1损失,即分类失败即累计1,在导出AdaBoost权重迭代式的过程中使用指数损失函数,在此指数损失函数与0--1损失是一致的。现在给出指数损失函数的意义:

第t轮输出为前几轮的加权平均:

在样本分布D下,希望指数损失函数的期望最小:

L对于H求导等于零:

解之得:

最终输出:

由指数损失函数期望最小,可以导出最优的H即为最优分类器,分类错误率最小,即可达到指数损失函数期望最小。若想指数损失函数的期望最小,则需要预测值等于真实值,即使用指数损失函数来作为优化目标等价于求解分类错误率最优。

4.迭代权重参数求解

数据样本在Dt分布下,调节参数使指数函数期望最小:

分类错误率的定义:

有:

L对于alphat求导等于零:

以上便是第k个基学习器的权重系数。

现在求Dt的迭代公式:

由于:

由于f(x)  ht(x)输出为1或-1,有:

泰勒展开式有:

最优的ht学习器要满足:

 为一常数,不会影响最终结果。

令Dt表示分布:

对Dt(f(x)h(x))求期望:

最优ht(x)等价于:

最优ht分类器如下:即错误期望最小

求解Dt+1与Dt关系:

最后一项为常数,不影响结果,进行归一化如下:

以上便是样本权重的迭代式。

参考地址:

http://www.cnblogs.com/pinard/p/6133937.html

  • 5
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值