本文作者:悦怿、珞家、惊寒、寒戍、孟诸
1. 摘要
深度学习的应用极大地提升了推荐模型的效果和性能,然而业界对于推荐系统中深度模型的基础问题,例如过拟合现象,关注度依然较少。在本文中,我们将介绍阿里妈妈展示广告Rank团队对点击率(CTR)预估模型过拟合问题的研究。我们观察到CTR模型的过拟合现象非常特殊:在训练的第一个epoch结束,第二个epoch开始时,预估模型发生过拟合现象,并且在测试集上的效果急剧下降,我们称其为“one epoch现象”。为了解释该现象,我们在工业生产数据集上进行了大量实验。结果显示模型结构、模型的快速收敛(例如强优化器和较大学习率)以及特征ID的稀疏性是导致one epoch现象的关键因素。令人惊讶的是,深度模型往往在训练一个epoch后就可以达到最佳性能,这也解释了为什么许多工业推荐系统只对数据进行一次训练。我们进而提出了one epoch现象的一个可能假设,并佐以相关验证实验。希望该项工作可以使相关领域的同学关注并进一步研究深度推荐模型的过拟合现象,也期待后续研究者能够提出一种支持模型多次训练的可行方案,以期进一步提升模型效果。基于该项工作的论文已被CIKM 2022接收,欢迎阅读交流。
论文:Towards Understanding the Overfitting Phenomenon of Deep Click-Through Rate Models
论文下载:https://arxiv.org/abs/2209.06053
代码链接:https://github.com/Z-Y-Zhang/one_epoch_phenomenon
2. 背景
近年来,大规模深度学习算法不仅仅在计算机视觉、自然语言处理等诸多领域取得了不错的成果,也不断扩展到了其他领域。推荐模型也逐渐从以Logistic Regression(LR)为代表的浅度机器学习模型转变为基于深度神经网络Deep Neural Networks(DNN)的深度模型,并取得了极大的效果提升。然而,对于推荐系统中深度模型的一些基本问题,例如过模型拟合现象,不管是在学术界,还是在工业界的关注都相对较少。
相比于普通的深度学习模型而言,推荐系统中的深度模型在数据和模型结构上有其特殊性。以点击率预估为例,推荐系统的数据特征通常是是高维和稀疏的 [7],模型通常需要在具有数十亿特征的大规模数据集上进行训练,但大多数特征的出现频率非常低,呈现非常显著的长尾分布。考虑到推荐系统的数据特性,现在的深度CTR模型一般采用Embedding和MLP的模型结构,如下图所示:

对于典型的CTR预估问题来说,模型的原始输入为一对用户和物品,并通常包含4类特征:用户特征(例如,用户ID、性别)、用户行为序列(例如,用户点击过的物品ID序列)、物品特征(例如,物品ID、物品类别)、上下文特征(例如时间、展示场景)。深度CTR模型首先将ID表示的离散特征通过Embedding层映射为低维向量,将用户行为序列通过pooling操作(例如取均值)转化为固定长度的向量。进而再把各个特征域的特征向量拼接到一起作为MLP层的输入,最终得到预测的点击率。
3. One-epoch现象
CV(计算机视觉)和NLP(自然语言处理)领域的深度学习模型通常需要训练几十个上百个epochs才能达到最优,如果发生过拟合现象,也往往是在训练过程中逐步发生。但在推荐系统中却并非如此,我们在阿里巴巴展示广告的生产环境下,将CTR模型训练3个epoch,得到的测试AUC曲线如下: