Addressing Delayed Feedback for Continuous Training with Neural Networks in CTR prediction
Sofia Ira Ktena, Alykhan Tejani, Lucas Theis, Pranay Kumar Myana, Deepak Dilipkumar, Ferenc Huszá, Steven Yoo, Wenzhe Shi
https://arxiv.org/pdf/1907.06558.pdf
https://dl.acm.org/doi/abs/10.1145/3298689.3347002
展示广告中有一个挑战,即特征分布和点击率由于季节性、广告变更以及其他因素等,会随着时间变更而产生巨大迁移。
比较流行的策略是在新鲜数据上持续训练预测性模型,同时保持这些迁移性,进而防止数据样本及特征等过时。然而,很多广告系统中,正样本可能经过较长时间才返回,并且具有随机性的延迟。这些延迟的样本对连续训练中对数据新鲜性带来的挑战,会导致模型训练时比较新的数据没有完整的样本信息。
朴素的解决方案是先将未回传反馈的样本作为负样本,直到正样本反馈回来时更新为正样本,但是这种方案倾向于造成模型低估,进而不利于用户体验,同时对广告主来讲,效果也是次优的。
这篇文章的核心在于如何最佳组合损失函数和模型,进而在连续流式数据中存在延迟反馈时,助力大规模学习。这篇文章中,作者们对比了5种不同的损失函数,其中3种是第一次用于解决延迟反馈问题。作者们在公开数据集和自有数据集上,离线对比了几种损失函数分别跟浅层和深层模型结合的效果。
作者们也讨论了生产环境中实现每种损失函数所需要的工程代价。作者们在线上实验中也对比了效果较好的几种方法,验证了在持续训练场景中的效果。离线测试时,在6.68亿量级的数据集上,作者们所提方法相对先前的STOA方法提升了3%的相对交叉熵(RCE)。线上实验中,相对朴素的对数损失函数,作者们在千次请求收益指标上取得了55%的提升。
twitter一天时间的流量中截止到各个小时的新广告累计占比趋势图如下
三天内,某个连续特征的分布随时间分布变化图示如下