欢迎来到RankFan的Blogs

扩大
缩小

随机森林

随机森林的基本介绍可以参考 随机森林scikit-learn随机森林调参小结 ,
具体原理可以参考 Bagging与随机森林算法原理小结 , 我认为重点在于如何分类,如何计算损失函数?
sklearn中RandomForest详解

随机森林和GBDT有什么不同?

  • 随机森林由多棵树组成,最终的结果由多棵树共同决定。
  • RF中的树可以是回归树,也可以分类树;GBDT只包含回归树。
  • RF时基于Bagging并行,GBDT是串行生成
  • RF树的深度小,GBDT树的深度大,GBDT的训练时长由树的深度、树的数量、样本量相关。

补充:

XGB 和 GBDT 有什么区别?

  • GBDT 的损失函数是一阶泰勒展开,XGB的损失函数基于二阶泰勒展开,优化更快更准
  • Xgb引入了树的正则化,将叶节点数量和叶子节点输出作为 L1 和 L2 加入到损失函数中。
  • XGB可以直接输入缺失值,也可以将LR作为基学习器。
  • XGB引入近似直方图的算法,防止过拟合和提高运算速度。

LGB 和 XGB 的区别?

  • 选取最佳特征分割点,lgb使用的是histogram算法,不需要对数据进行排序,可以直接分割成两部分,
  • xgb采用的 level-wise树生长策略, lgb采取的是 leaf-wise的树生长策略,容易发生过拟合。
  • lgb优化了对应类别特征的输入,支持直接输入,不用转化为0或1
  • lgb做了一些并行优化
    • 特征并行
    • 数据并行
    • 投票并行

posted on 2022-03-26 15:46  RankFan  阅读(62)  评论(0编辑  收藏  举报

导航