zoukankan      html  css  js  c++  java
  • 集成方法-概念理解

    集成方法(ensemble method)又叫元算法(meta-algorithm):将不同的分类器组合起来。

    通俗的说:就是三个臭皮匠赛过诸葛亮。做决定时,考虑多个人的意见,不是一个人的意见

    集成方法:

      1. bagging(自举汇聚法):基于数据随机重抽样的分类器构建方法。并行算法

      2. boosting(再学习):基于所有分类器的加权求和的方法。              串行算法

    bagging:从原始数据集选择S次后得到S个新数据集的一种技术。新数据集和原数据集的大小相等。

    其实就是有放回采样,获得一个和原来大小一样的新数据集。这个新数据集可能会有重复值,原始数据集的某些值在新数据集中可能不在出现。

    用这样的方法构建S个新的数据集参与训练,就会得到S个分类器。测试新数据时,送到S个分类器里,得到的结果投票,数量最多的就是分类结果(得民心者得天下)。

    boosting:串行训练。第一个训练完,第二个在第一个的基础上接着训练。重点关注前面分类器错分的数据(说白了就是背锅侠,前面哥们犯的错,后面的去解决)。

    目前 bagging 方法最流行的版本是: 随机森林(random forest)
    选男友:美女选择择偶对象的时候,会问几个闺蜜的建议,最后选择一个综合得分最高的一个作为男朋友

    目前 boosting 方法最流行的版本是: AdaBoost
    追女友:3个帅哥追同一个美女,第1个帅哥失败->(传授经验:姓名、家庭情况) 第2个帅哥失败->(传授经验:兴趣爱好、性格特点) 第3个帅哥成功

    bagging和boosting共同点和差异点:

    1. bagging 是一种与 boosting 很类似的技术, 无论是boosting还是bagging,所使用的多个分类器的类型(数据量和特征量)都是一致的(就是说要用KNN,都用KNN,要用决策树,那就都用决策树)。
    2. bagging 是由不同的分类器(1.数据随机化 2.特征随机化)经过训练,综合得出的出现最多分类结果;boosting 是通过调整已有分类器错分的那些数据来获得新的分类器,得出目前最优的结果。
    3. bagging 中的分类器权重是相等的;而 boosting 中的分类器加权求和,所以权重并不相等,每个权重代表的是其对应分类器在上一轮迭代中的成功度。(就是说bagging投票是一人一票,权重相等。而boosting权重不等,可能有的权重大,有的权重小)

     

  • 相关阅读:
    SublimeText3激活
    Mysql数据备份
    supervisor介绍与使用
    spark-submit介绍
    Spark之spark.sql
    MarkDown编写方法
    Nginx配置多级代理后获取用户真实IP
    Hive之UDF解释
    Hive之分组取前几条记录
    Hive之Map和Reduce的优化
  • 原文地址:https://www.cnblogs.com/gezhuangzhuang/p/10004304.html
Copyright © 2011-2022 走看看