• 集成学习——Bagging


    集成学习分成Bagging和Boosting两大类,这里也分成两篇来总结,两个类别的区别如下:

    主要根据集成的基学习期生成方式来分的,一个是强依赖关系,串行而成,代表是Boosting。另一种是不存在强依赖关系同时生成,代表是Bagging和随机森林(Random Forest)

    一、Bagging

    1、步骤

    1、在样本中使用重采样选出N个样本(跟原来的样本数量一致,这就导致会重复,没关系)

    2、对选出来的这N个样本建立模型,可以是ID3,C4.5,CART,logistic回归,SVM都可以

    3、重复第一步,第二步,抽取了M次这么多样本,同时建立了M个模型,根据这M个模型来投票最终的分类结果

    2、注意:

    这里由于使用重复抽样,所以导致样本会重复

    由于有一部分样本没有被抽中,我们把这部分样本叫做袋外数据,可以用来来检测模型的好坏。

    从方差—偏差角度上来看,Bagging主要关注降低方差,因此他在不剪枝的决策树和神经网络等若分类器上效果更好

    二、随机森林

    随机森林是在Bagging基础上做了一部分改进,Bagging只是对于样本使用了重复抽样,随机森林在此基础上,对于特征的选择也做了抽样

    1、步骤

    1、在样本中使用重采样选出N个样本(跟原来的样本数量一致,这就导致会重复,没关系)

    2、对选出来的这N个样本建立模型,可以是ID3,C4.5,CART,logistic回归,SVM都可以,这时候能使用的划分特征数并不是全部,只是其中抽取了一部分,这里的抽取数量一般使用 k = log2(d)  其中d为特征数

    这里到底是先选择完属性在建立决策树还是,决策树每个节点都要做一次抽样啊???如果是每个节点都做随机选择,那只能是决策树为基学习器了吧,如果是选做了属性选择在做树建立,那就能用logistic回归或者svm

    3、重复第一步,第二步,抽取了M次这么多样本,同时建立了M个模型,根据这M个模型来投票最终的分类结果

    三、结合策略

    1、平均法

    对于数值型输出,常常使用平均法:

    简单平均法:  加权平均法:

    2、投票法

    相对多数投票法:其实就是少数服从多数

    绝对多数投票法:在相对多数投票法的基础上,我们还要求这个标记的投票数过半,不然就拒绝

    加权投票法:各个学习期有一个权重,先加权在求和,选取最大的那个类别

    还有一种自己造公式:

    3、学习法

    学习法的代表是stacking,我们不是对弱学习器的结果做简单的逻辑处理,而是再加上一层学习器,也就是说,我们将训练集弱学习器的学习结果作为输入,将训练集的输出作为输出,重新训练一个学习器来得到最终结果。

    也就是说,我们将训练集弱学习器的学习结果作为输入,将训练集的输出作为输出,重新训练一个学习器来得到最终结果。

  • 相关阅读:
    【观点】停止编程 狼人:
    JavaScript之父谈语言诞生记 狼人:
    【评论】你在业余时间都开发过什么? 狼人:
    【心得】Web设计师应参考的技术 狼人:
    每天写出好代码的5个建议 狼人:
    如果编程语言是一条船 狼人:
    数据库测试——实用技巧及测试方法 狼人:
    【观点】我的PHP退役了 狼人:
    Google发布Swiffy 将Flash转换为HTML5 狼人:
    20个不错的CSS页面布局相关资源推荐 狼人:
  • 原文地址:https://www.cnblogs.com/jiegege/p/8582032.html
Copyright © 2020-2023  润新知