学习笔记:Adaboost

Adaboost学习笔记

最近在看《机器学习实战》这本书,这次看到了Adaboost的章节,下面是关于我学习时的笔记

简介

AdaBoost算法是集成学习的一种。
集成学习就是构建多个“基学习器”,之后再将它们结合来完成学习任务的方法。集成学习通过将多个学习器进行综合,其性能通常比单个学习器要好。我们之前提过的随机森林就是集成学习的一种。

bagging方法
  在介绍adaBoost之前,首先介绍一种基于数据随机重抽样的分类器构建方法,bagging(bootstrap aggregating)方法,这是从原始数据集选择s次后得到s个新数据集的一种技术。需要说明的是,新数据集和原数据集的大小相等。每个数据集都是通过在原始数据集上先后随机选择一个样本来进行替换得到的新的数据集(即先随机选择一个样本,然后随机选择另外一个样本替换之前的样本),并且这里的替换可以多次选择同一样本,也就是说某些样本可能多次出现,而另外有一些样本在新集合中不再出现。
  s个数据集准备好之后,将某个学习算法分别作用于每个数据集就得到s个分类器。当要对新的数据进行分类时,就应用这s个分类器进行分类,最后根据多数表决的原则确定出最后的分类结果。

boosting方法
  boosting方法就是这次我们要讲到的分类算法,其与上面提到的bagging很类似,都是采用同一种基分类器的组合方法。而与bagging不同的是,boosting是集中关注分类器错分的那些数据来获得新的分类器
  此外,bagging中分类器权重相等,而boosting中分类器的权值并不相等,分类器的错误率越低,那么其对应的权重也就越大,越容易对预测结果产生影响。boosting有许多版本,而今天要介绍的是比较流行的AdaBoost。

Adaboost算法

一般流程:

(1)收集数据
(2)准备数据:依赖于所用的基分类器的类型,这里的是单层决策树,即树桩,该类型决策树可以处理任何类型的数据。
(3)分析数据
(4)训练算法:利用提供的数据集训练分类器
(5)测试算法:利用提供的测试数据集计算分类的错误率
(6)使用算法:算法的相关推广,满足实际的需要

算法原理:
上面所述的基分类器,或者说弱分类器,意味着分类器的性能不会太好,可能要比随机猜测要好一些,一般而言,在二类分类情况下,弱分类器的分类错误率达到甚至超过50%,显然也只是比随机猜测略好。但是,强分类器的分类错误率相对而言就要小很多,adaBoost算法就是易于这些弱分类器的组合最终来完成分类预测的。
  adaBoost的运行过程:训练数据的每一个样本,并赋予其一个权重,这些权值构成权重向量D,维度等于数据集样本个数。开始时,这些权重都是相等的,首先在训练数据集上训练出一个弱分类器并计算该分类器的错误率,然后在同一数据集上再次训练弱分类器,但是在第二次训练时,将会根据分类器的错误率,对数据集中样本的各个权重进行调整,分类正确的样本的权重降低,而分类错的样本权重则上升,但这些权重的总和保持不变为1.
  并且,最终的分类器会基于这些训练的弱分类器的分类错误率,分配不同的决定系数alpha,错误率低的分类器获得更高的决定系数,从而在对数据进行预测时起关键作用。alpha的计算根据错误率得来: α=12ln(1εε) α = 1 2 ln ⁡ ( 1 − ε ε )
其中, ε=

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值