catboost 简介
CatBoost据说是超越LightGBM和XGBoost的一大神器。
catboos的三个贡献点
- 它自动采用特殊的方式处理类别型特征(categorical features)。首先对categorical features做一些统计,计算某个类别特征(category)出现的频率,之后加上超参数,生成新的数值型特征(numerical features)。这也是我在这里介绍这个算法最大的motivtion,有了catboost,再也不用手动处理类别型特征了。
- catboost还使用了组合类别特征,可以利用到特征之间的联系,这极大的丰富了特征维度。
- catboost的基模型采用的是对称树,同时计算leaf-value方式和传统的boosting算法也不一样,传统的boosting算法计算的是平均数,而catboost在这方面做了优化采用了其他的算法,这些改进都能防止模型过拟合。
CatBoost详细内容技术介绍
1、类别型特征的处理
CatBoost采用了一种有效的策略,降低过拟合的同时也保证了全部数据集都可用于学习。也就是对数据集进行随机排列,计算相同类别值的样本的平均标签值时,只是将这个样本之前的样本的标签值纳入计算。
2、特征组合
为当前树构造新的分割点时,CatBoost会采用贪婪的策略考虑组合。对于树的第一次分割,不考虑任何组合。对于下一个分割,CatBoost将当前树的所有组合、类别型特征与数据集中的所有