中国科学院大学机器学习——boosting
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Boosting
1. 判断题
(1)Boosting和Bagging都是组合多个分类器投票的方法,二者都是根据单个分类器的正确率决定其权重。
(2)在Boosting中,当训练误差为0时必须停止迭代,否则会发生过拟合。
(3)Boosting和Bagging都可以视为是对训练数据的重采样,但二者的重采样方式不同。(4)在AdaBoost算法中,所有被错分的样本的权重更新比例相同。(T)
(5)Boosting的一个优点是不会过拟合。
2. Boosting。(20分,每小题10分)
考虑如图3所示的训练样本,其中’+’和’O’分别表示正样本和负样本。图中还给出了采用AdaBoost算法经过若干次迭代后每个样本的权重。同时图中还给出了3个弱分类器:A、B 和C。则
图3:训练样本及其权重,A、B和C为3个可能的弱分类器
(1)下次将选择A、B和C等3个弱分类器的哪个弱分类器?为什么?
弱分类器B的加权错误率最小。
(2)图中所示权重最可能是上次采用A、B和C哪个弱分类器得到的?为什么?
上一轮选择的弱分类器在本轮中的加权错误率为0.5,因此上一轮的分类器是弱分类器C.
3.Boosting 与特征选择
考虑一个文本分类问题。每个文档用一些二值特征表示为()1,...,i i iD x x x =,其中1ij x =表示单
词j 出现在文档i 中,否则的话0ij
x =。现采用AdaBoost 算法进行分类,其中弱分类器为
(),,j h yx x θ=
(),j y θ=,其中j 为选择的单词索引,{}1,1y ?为对应的文档标签。即每个弱分类器为每个
单词与类别的关系。如有单词”足球”,类别有{运动,非运动},则我们有两个弱分类器: ● 如果文档中出现单词”足球”,判定该文档为“运动”; ●
如果文档中不出现单词”足球”,判定该文档为“运动”;
(1) 一共有多少个弱分类器?
每个单词对应两个弱分类器,D 个单词共有2D 个弱分类器。
(2) Boosting 可以实现特征选择,即运行算法,被选择的特征按其被算法选中的顺序加入最
终的模型。有些弱分类器可能会被选择多次吗? 可能。
Boosting 算法是在假定之前的投票权重不变的情况下优化当前的α,因此不是对所有的系数一起优化。因此只能通过再重新将弱分类器加入来修正之前的投票权重。
(3) 互信息也可以用来特征选择。如果我们对每个特征根据其与标签之间的互信息来排序,
那么该排序会比AdaBoost 的排序更有信息量吗? 不会。
AdaBoost 是多个弱分类器(特征)的线性组合,新的弱分类器是在考虑之前已有预测的基础上的。而单个特征与标签的互信息只考虑该特征本身的信息,不能发现多个特征队线性预测的交互作用。
4. 现采用AdaBoost 算法来集成多个弱分类器。图2给出了带标签的数据,其中输入特征为2维,同时还给出了第一个弱分类器。每个弱分类器根据某维特征预测输出1±。小箭头为决策边界的法线方向。初始时各样本的权重相同。
图2: 带标签的数据及第一个弱分类器。箭头方向为决策边界的正方向。
(1) 在图2中标出根据第一个弱分类器权重会增大的样本点。
错分样本的权重会增加。
11111,ln 0.804762t t
e e a e 骣
-÷ç÷===ç÷ç÷桫, 权重更新:()()()()
1exp t t i t i t t
D i y h D i Z α+-=
x ,
错误分类样本的权重:(1个)
()121111
1
11
1
exp 1
262
26
D D D Z a e =
=??
´, 正确分类样本的权重为:(5个)
()()1211111111
exp 521610
26
D D D Z αε=
-=⨯=⨯=-⨯. (2) 在图中画出下一轮选择的弱分类器。请给出决策边界及其方向。
如图。
(3) 第二轮弱分类器的系数会比第一次的大吗,即21a a >?
是的。
因为被第二个弱分类器分错的样本的权重较小(因为被第一个弱分类器分对了)
5.Boosting
考虑下述分类问题。我们打算采用boosting 来学习分类器,其中弱分类器为平行两个坐标轴的
线性分类器。
请给出AdaBoost 前3轮迭代的弱分类器、其对应的加权错误率、弱分类器的权重α、样本权重的更新。为了统一,第一轮弱分类器选择特征x1,即为竖直线。 并请给出每轮结束后的强分类器的训练误差。
6.AdaBoost 的损失函数
(1) AdaBoost 可视为最小化指数损失函数()()exp 1
exp N
i i i J y f x ==
-å
,其中{}1,1y ?
为类别
标签,()()1
T
t t f h x x a ==
å
为弱分类器的权重。证明指数损失是0-1损失函数
()()011
0N
i
i
i J y f x -==
<åI 的上界。
证明:
(2) 指数损失对outliers 敏感。请给出一个简单的解决方案。
由于每个被错分的样本的权重会增加,一种忽略outliers 的方法是对样本权重设置一个阈值,当样本的权重超过该阈值时,认为样本是outlier ,去掉该样本。
7.下图给出了8个数据点,其中正负样本各4个。图中也给出了AdaBoost 第一轮选择的弱分类器h 1 (弱分类器为平行坐标轴的直线)。
(1) AdaBoost 给弱分类器h 1的权重α1为多少? (各样本的初始权重相等,即
1/8.)
11111,ln 0.973082t t
e e a e 骣
-÷ç÷===ç÷ç÷桫 (2) 不管弱分类器是什么类型,AdaBoost 的训练误差最终将趋于0?
错。
只有当训练数据能被某种类型弱分类器的线性组合可分时,AdaBoost 的训练误差才能最终趋于0。
(3)赋予弱分类器的投票权重α总是非负。 对。
AdaBoost 选择的训练误差ε<1/2,因此α=1/2log(ε/(1-ε))>0.