使用GBDT+LR作点击率预测

xiaoxiao2021-02-28  83

主要内容来源于facebook的论文:Practical Lessons from Predicting Clicks on Ads at Facebook》 1、基本思路 使用GBDT根据用户特征转换生成新的特征,每棵树的每个叶子均作为一个特征,然后将这些特征代入LR。 举个例子: (1)训练GBDT树:我们现在m个样本,总共有6000个标签,将这些样本用于训练GBDT,生成10棵树,每棵树100个叶子(当然各棵树的叶子数可能不同),总共1000个叶子。上述的1000个叶子会作为特征。 (2)使用GBDT树转换特征:还是上面的m个样本,我们将这m个样本代入上面生成的10棵树,这些样本在每棵树上都会被分类到其中一个叶子,将这个叶子对应的位置设置为1,其余为0。这样就得到我们转换后的特征了。 (3)使用转换特征训练LR:使用上面转换后的特征作为样本特征,用于训练LR,得到最终的模型。 (4)当有新样本需要预测时,使用步骤2生成转换特征后代入第3步生成的模型,得出最终的预测结果。 附一张facebook的图: 2、问题 (1)使用GBDT抽取特征以后,这些特征就应该固定了,也就是说第一天GBDT就固定了,以后不再训练,只是用这棵树来根据样本生成特征。 但是我们的特征是会变化的,如果增加了一个特征,由于GBDT树不再发生变化,因此这个特征不会再被加入模型。唯一的处理方法是,重新训练GBDT树,但这样的话由于转换生成的特征发生了变化,因此LR要从最初的数据开始全部训练。 解决办法:原有特征继续进入GBDT,新来的特征作为一新特征开始训练。然后每隔一段时间重新训练GBDT,并且全部重新进入LR。
转载请注明原文地址: https://www.6miu.com/read-80349.html

最新回复(0)