您的位置:首页 > 其它

『机器学习算法』集成学习——AdaBoost

2017-08-07 20:00 330 查看
1、基本属性

a、算法名称

英文名:AdaBoost

中文名:

b、属于分类、回归或其它算法中的哪种类别

属于分类算法

c、属于有监督、无监督、半监督的哪种类别

属于有监督

d、对于数据分布是否有要求,如果有,要求是哪种分布?

e、是否属于集成学习方法,如果是,基学习器是否可以并行运行

属于集成学习方法;不可以并行运行,只可以串行运行

f、适应于哪种类型的数据集(如 数值型、标称型)?

g、是否可以处理数据集有缺失值的情况?

h、是否可以处理数据集有异常值的情况?

i、对异常值是否敏感?

j、数据抽样方式(如自助采样(有放回采样)、无放回采样等)

k、是否会改变训练集的样本分布?



2、什么是 AdaBoost 算法

AdaBoost 算法是针对同一训练集训练出不同的弱分类器,然后通过集成的方法,得到一个最终的强分类器。

3、工作原理

先从初始训练集训练出一个基学习器,再根据基学习器的表现对训练样本分布进行调整,使得先前基学习器做错的训练样本在后续受到更多关注,

然后基于调整后的样本分布来训练下一个基学习器;如此重复进行,直至基学习器数目达到事先指定的值 T ,最终将这 T 个基学习器进行加权结合

4、算法伪代码 (非 latent 版)

输入:训练集 D = {(x1, y1), (x2, yx), ... , (xm, ym)};

注:xm 是个向量

           基学习算法 a

           训练轮数 T 

过程:

1: D1(x) = 1 / m

2:f or t = 1, 2, ... , T do

3:     ht = a(D, Dt) ;   注:Dt 是样本分布

4:     et = Px ~ Dt(ht(x) ≠ f(x));

5:     if et > 0.5 then break

6:     αt = 1/2 ln((1 - et) / et);

7:     

步骤 6 的图像

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息