文章名称
【KDD-2021】【DAMO Academy, Alibaba Group】Contrastive Learning for Debiased Candidate Generation in Large-Scale Recommender Systems
核心要点
文章旨在将ULTR应用到E-commerce的场景,解决原有(检索场景中提出的)方法的两个问题。1)在E-commerce推荐结果不是单列瀑布流而是两列或多列grid-based layout;2)E-commerce中存在多个不同的隐式反馈信息,包括点击和购买(转化),原检索场景方法无法适用或没法充分利用这些信息。作者首先提出了一个通用框架来利用多种隐式反馈信息,同时提出了俩种点击模型,row skipping和slow decay,来估计propensity。
方法细节
问题引入
深度召回模型在推荐系统中已经非常流行,现有做法主要采用类似语言模型的方法(优化MLE),把候选物品当做词典中的词,尽可能的拟合语言模型。然而,物品的个数远超过词典中词的个数,并且推荐系统的观测数据会受到各种偏差的影响,模型为了更好地弥合偏差影响后的数据表现,可能会加剧偏差对后续推荐模型的影响。
首先,定义数据集,其中
表示用户第
次点击以前,所有点击的信息
的聚合(聚合方式可以有多种,拼接、平均、LSTM等等)。
表示物品的特征,可以是向量表示也可以直接就是商品标号。
深度召回模型可以被表示为学习两个encoder ,在同一个向量空间中,分别计算当前用户的状态和所有物品的特征表示。利用余弦相似度
,可以在所有物品中召回符合用户当前状态的物品,一般利用knn选择top k近邻的物品。
为了学习的参数,一般采用在实际点击数据上优化MLE的方法,对参数进行点估计,具体估计公式如下图所示。
一般需要在所有物品上进行计算,实际场景中是不显示的,所以采用负采样的方法。那么问题就来了,观测的点击数据是有偏的,用户点击的是推荐物品集合里的物品,而不是所有物品集合里的物品。用户可能根本不知道有其他更高质量,更让他喜欢的物品存在。(其它各个讲推荐偏差的文章都会讲到的段子...)。所以,新模型的训练会受到老模型的影响(以前推不出来的的高质量物品,现在还是推不出来)。
具体做法
作者发现一种流行度对比损失,理论上等价于用IPW方法进行曝光偏差的纠正。
Sampled Softmax
首先我们回顾一下Sampled Softmax[6, 26],(后续的方法和Sampled Softmax有千丝万缕的联系),其一种变种如下图所示。
其中,表示从proposal distribution
中采样出来的负样本。公式中减去这个proposal distribution的步骤是为了保证收敛到和公式1一样的目标。一般,proposal distribution会与
独立,变为
,且与物品
的流行度相关(可能流行度就会有更大的概率被采样出来,取决于采样策略)。大量结果证明Sampled Softmax比NCE等方法要好。
Contrastive Loss
一种对比损失[39, 43]的计算公式如下图所示,其中是负采样分布。由于在公式中没有
,所以这种的对比损失没有纠正采样带来的偏差。很多文献都致力于提出合理的采样分布
,其中InfoNCE[3]表示,如果
,即
被采样到的概率正比于其在数据中出现的频率,那么,被优化的目标是
互信息的一个下界。
Contrastive Learning and Exposure Bias Reduction
IPW是常用的Unbias Learning方法,其损失如下图所示。其中是物品被曝光的propensity,公式可以被理解为是在数据有偏差的情况下,也促使
学习用户的实际偏好。可以证明,如果设定负采样分布
。那么,公式3以及公式4就都是在优化
与
的KL散度,对于证明感兴趣的同学可以查看文章的附录(后续也可以不在这里)。
这种理论揭示了这种CL损失函数成功的原因,也给出了一种思路,来解决IPW两阶段学习的效率问题。
这一节讲述了,作者如何把Sampled Softmax和Contrastive Learning建立联系。下一节重点介绍,作者提出的解决IPW问题的方法CLRec。
心得体会
Contrastive Learning
个人认为,对比学习的魅力在于他能够利用更多信息,并且可以在无监督下进行。所谓利用更多信息,其实源于CL是站在信息论的角度,优化了某种信息指标,比如MI。作者通过分析损失函数,主要是拆解对比项,推导了与IPW的关系,虽然正向看,是解释CL成功的秘诀。反向看,也说明IPW确实是在及解决信息偏差,是可以做到对真实数据的无偏估计的。
文章引用
[1] Yoshua Bengio and Jean-Sébastien Senécal. 2008. Adaptive importance sampling to accelerate training of a neural probabilistic language model. IEEE Trans. Neural Networks 19, 4 (2008), 713–722.
[2] Sébastien Jean, Kyunghyun Cho, Roland Memisevic, and Yoshua Bengio. 2014. On using very large target vocabulary for neural machine translation. arXiv preprint arXiv:1412.2007 (2014).
[3] Aaron van den Oord, Yazhe Li, and Oriol Vinyals. 2018. Representation learning with contrastive predictive coding. arXiv preprint arXiv:1807.03748 (2018).
[4] Kihyuk Sohn. 2016. Improved deep metric learning with multi-class n-pair loss objective. In NeurIPS. 1857–1865.