CatBoost

Overview

  • CatBoost是一种基于对称决策树为基学习器Boosting模型,参数较少、支持类别型变量,准确性高

特点

基模型为对称树

  • 完全二叉树,节点是镜像的
  • 不易过拟合

自动将类别型特征处理为数值型特征

  • Target Statistics:计算某个category出现的频率,加上超参数,生成新的数值特征numerical features
  • Ordered boosting
    • 由于标签数据出现的顺序会影响结果,每一轮建树的时候需要随机排列样本 <- 仿照在线思维构造一种顺序
    • 每一轮利用历史数据计算target statistics
    • 改善GBDT处理类别特征的思路:利用对应标签的均值来进行预测
    • 解决Target leak问题:训练集和测试集中类别分布不一致的问题,导致预测偏移

贪心选择组合特征

  • 在分裂节点的时候,考虑所有类别特征的组合,选择其中最好的
  • 并将组合特征转化为数值特征

优劣

  • 不需要手动处理类别特征
  • 丰富特征维度
  • 不易过拟合

  • 对于类别型特征的处理需要大量的内存和时间
  • 不同随机数的设定对于模型预测结果有一定的影响

© 2020. All rights reserved.