目前,纵观各种竞赛和论文,拿的出手的成果许多是采用了集成算法。
本文记录集成算法最基础的知识。

1. Bagging算法

原理:并行。训练多个模型最终结果取平均。
代表:随机森林(RandomForest),随机指的是每棵树的训练数据是随机的(原始数据有放回随机抽取)每棵树所选择的数据特征也是随机的。之所以要进行两个随机是为了提高随机,降低过拟合性;森林顾名思义,不只是一棵树而是多棵树。

【算法原理】集成算法
随机森林的优点

  1. 注重随机,提高泛化性。
  2. 能够处理高维数据,可以不对特征进行选择。
  3. 可以比较特征重要性(实现方式是控制其他特征不变,对目标特征破坏前后的结果进行评估,若目标特征在破坏前后结果差异大,则说明目标特征较重要)
  4. 采用并行化的方法,运行速度快。
  5. 不同于神经网络隐藏层的不可观测性,随机森林可视化便于分析研究。

2.Boosting算法

原理:串行。从弱学习器到强学习器,每一步是针对上一步的改进。
【算法原理】集成算法
代表

  1. Adaboost:在串行过程中,利用上一步的结果找出分错的数据,对这些分错的数据加大权重,在下一步学习中重点学习分错数据的分类。
  2. Xgboost:在后面的学习中介绍。

3.Stacking算法

原理:堆叠。叠加多种算法,计算出原始数据的结果值,再利用该结果值作为新数据传入相关算法。
【算法原理】集成算法

相关文章: