参考书籍:《机器学习-公式推导和代码实现》
官方文档提供的原生接口代码参考书籍的P187~P188
简介
全称是Categorical + Boosting,由俄罗斯搜索引擎巨头Yandex于2017年提出。突出的优势是在于可以高效地处理数据中的类别特征
ML中对类别特征的处理方法
硬编码
-
对类别特征进行数值映射,有多少类别就有多少数值。适用于类别特征取值有明显的“顺序性”,如学历特征取值为“高中”、“本科”、“硕士研究生”和“博士研究生”
one-hot编码
类别特征的取值较多的话,特征会比较稀疏,增加训练负担。折中的方式:将类别数目进行重新归类,降低类别数目后再进行one-hot编码
目标变量统计(target statistics,TS)
计算每个类别对于目标变量的期望值,并将类别特征转换为新的数值特征。CatBoost在常规TS的基础上做了改进。
模型详解
分为处理类别变量的目标变量统计、特征组合和排序提升算法、其它这4个纬度进行介绍
目标变量统计
维度 | 内容 |
目标 | 更好地处理类别特征 |
思路 | 常规的TS算法:对类别对应的标签平均值进行替换。缺点:训练集、测试集会因为数据分布不一样而产生条件偏移问题CatBoost:增加先验项,用以减少噪声、低频类别型数据对数据分布的影响。提供的方法有holdout TS、leave-one-out TS、ordered TS等几种改进的TS算法 |
类别特征组合
维度 | 内容 |
目标 | 对类别特征之间的组合进行筛选,避免类别特征数量称指数及增长,而且避免了联合信息的丢失。比如,考虑用户ID、广告主题之间的联合信息 |
思路 | 采用贪心的策略考虑特征的组合将当前树的所有组合、类别特征与数据集中的所有类别特征相结合,并将新的类别组合型特征动态地转换为数值特征 |
排序提升算法(order boosting)
维度 | 内容 |
目标 | 解决预测偏移(predict shift) |
相关概念 | 预测偏移:训练样本的分布和测试样本的分布之间产生的偏移 |
思路 | 采用基于ordered TS的排序提升算法 |
其它
基分类器
相比于GBDT、XGBoost、LightGBM,采用对称树作为基分类器
- 对称树:在树同一层,分裂标准相同,具有平衡、不宜过拟合、大大缩短测试时间特点
多GPU训练
提供多GPU训练加速支持
结尾
亲爱的读者朋友:感谢您在繁忙中驻足阅读本期内容!您的到来是对我们最大的支持❤️
正如古语所言:"当局者迷,旁观者清"。您独到的见解与客观评价,恰似一盏明灯💡,能帮助我们照亮内容盲区,让未来的创作更加贴近您的需求。
若此文给您带来启发或收获,不妨通过以下方式为彼此搭建一座桥梁: ✨ 点击右上角【点赞】图标,让好内容被更多人看见 ✨ 滑动屏幕【收藏】本篇,便于随时查阅回味 ✨ 在评论区留下您的真知灼见,让我们共同碰撞思维的火花
我始终秉持匠心精神,以键盘为犁铧深耕知识沃土💻,用每一次敲击传递专业价值,不断优化内容呈现形式,力求为您打造沉浸式的阅读盛宴📚。
有任何疑问或建议?评论区就是我们的连心桥!您的每一条留言我都将认真研读,并在24小时内回复解答📝。
愿我们携手同行,在知识的雨林中茁壮成长🌳,共享思想绽放的甘甜果实。下期相遇时,期待看到您智慧的评论与闪亮的点赞身影✨!
万分感谢🙏🙏您的点赞👍👍、收藏⭐🌟、评论💬🗯️、关注❤️💚~
自我介绍:一线互联网大厂资深算法研发(工作6年+),4年以上招聘面试官经验(一二面面试官,面试候选人400+),深谙岗位专业知识、技能雷达图,已累计辅导15+求职者顺利入职大中型互联网公司。熟练掌握大模型、NLP、搜索、推荐、数据挖掘算法和优化,提供面试辅导、专业知识入门到进阶辅导等定制化需求等服务,助力您顺利完成学习和求职之旅(有需要者可私信联系)
友友们,自己的知乎账号为“快乐星球”,定期更新技术文章,敬请关注!