前言
在第7篇(上),我们介绍了CatBoost的代码实践,本篇来一起读一下算法原创论文《CatBoost: unbiased boosting with categorical features》,以期加深对于CatBoost的理解。
论文中心思想
笔者提炼了一下论文的核心逻辑如下图所示:
所以最核心的是要理解论文提出的排序原则到底是咋回事。
内容导读
CatBoost方法给笔者的第一印象是它可以直接处理类别型变量,但读论文时才发现它其实初心的目标是解决boosting集成算法中出现的“预测偏移”问题,只是说在类别型变量的处理过程中使用的方法也恰好同样会出现类似的问题,就使用同一种方法解决了。所以笔者觉得论文其实应该把第4部分的内容(讲预测偏移)与第3部分(讲类别变量的处理)换一下顺序。所以本文解读时换个顺序来聊。
预测偏移
作者在这一部分论证说,boosting集成学习算法都会遇到“prediction shift”(笔者本文姑且翻译为预测偏移)的问题,且在以往未得到识别,甚至就是否存在非零的偏移问题都未在理论上得到过证实。但作者自己在论证时只是在一个平方和损失函数的回归问题