life‘s_a_struggle

导航

集成学习——rft & adaboost

集成学习

集成学习主要有两种思想:

  1. 集成弱学习器,提升分类能力
  2. 集成强学习器,提升泛化能力

Random Forest 随机森林 强分类器的方差(泛化能力)提升

思想:若干个独立训练的分类器,并行训练,每个分类器对应于一个f1输出,得到(f1,f2,。。。,fn),求和取平均得到新的F。

选用什么分类器: DT、KNN等分类能力强的模型

理解:怎样确保独立?

  1. 训练数据的独立,每个分类器训练时使用的训练集之间相互独立:
    •   例如,真实数据集合有100w条数据,随机抽取20w条数据作为训练集。
    •        独立性要求抽取的比例不能太高,训练效果又要求训练样本不能太少。需要tradeoff
  2. 每组训练集的特征相互独立:
    •   比如数据是n维度特征的,每组数据都随机抽取int(√n)位特征组成新的训练集。

 

分类结果方差
f1 0.9
f2 0.88
f3 0.92

 

假设分类前每个分类器的方差为D = δ2  ,两个分类器集成后

 

 

 一般来说,继承之后训练器的方差在0.5δ2 ~ δ之间。

 

 

Adaboost  弱分类器的(偏差)分类能力提升

思想:若干个分类器串行训练,每一轮训练更新每个训练数据的权重和每个Gm模型的权重。知道M个分类器都训练完成,得到的分类器GM为所求分类器。

选用什么分类器: LR等弱分类器

算法:(学短板)

随机初始化第一轮训练集中每个数据的圈子中为1/n(共n组数据)
第m轮,

    1.   计算该轮分类的error(错误率)error = ∑wi*I(yi!=Gm(xi))
    2.   该轮分类器的权重αm为:αm = 0.5*log[(1-e)/e]
    3.   更新下一轮训练样本中数据的权重wm+1,i+1 = wm,i * exp(-αmm*yi*Gm(xi))

      第m+1 轮,重复,第m轮步骤

      直到训练完M个分类器。

 

 

 

posted on 2021-06-04 09:58  life‘s_a_struggle  阅读(100)  评论(0编辑  收藏  举报