作 者 | Yuchen Guo, Menghan Wang, Marshall Wu, Shawn Zhou
供 稿 | eBay Ads team
原文标题 | MP2: A Momentum Contrast Approach for Recommendation with Pointwise and Pairwise Learning
导读
1
Part.1
标注偏差
Pointwise label使用显式的反馈来标记用户的偏好,如点击/未点击、购买/未购买等,用户点击了商品则标记为正样本1,表示用户对该商品的正向反馈,未点击则标记为负样本0。然而用户的偏好不是绝对的,有程度之分。
在不同的场景下,同一个商品可能使用户产生不同的行为。如图2所示,itemB在两个不同的上下文(与A比较和与C比较)中分别被标记为0和1,但无论是值0或1都无法表征出用户对itemB的准确偏好0.7。本文将这种偏差称为标注偏差。
标注偏差对深度模型的一个主要影响是,在训练过程中,同一个item的不同标签会给予模型方向相反的优化信号,从而使得网络权重的在训练过程中更加波动。
而 pairwise label表征的是用户对不同商品偏好的序关系,如在一次商品曝光中,用户选择点击itemA而未点击itemB,则产生一条样本:itemA > itemB。Pairwise label可以补充 pointwise label所缺失的偏好程度的信息,因此它可以辅助矫正pointwise label的标注偏差。
图 1 pointwise label vs. pairwise label
(点击可查看大图)
图2 推荐系统中的标注偏差
(点击可查看大图)
2
Part.2
模型框架
图3 「MP2」模型结构图
(点击可查看大图)
MP2采用当下流行的多塔结构
主要由三个子网络构成,包含一个user子网络和两个item子网络,两个item塔的损失函数分别对应pointwise loss和pairwise loss。
图4 三塔结构
(点击可查看大图)
MP2利用两个子网络的差异来解决训练过程中的标注偏差,这包括两个阶段:
(1)动量更新
由于受到标注偏差的影响,Pointwise loss对应的表示向量
(2)值标签加权
利用两个item向量之间的差异来拟合波动性,并对pointwise loss进行加权。两个item向量差异越大,则pointwise label可信度越低,应置更低权重。
3
Part.3
动量更新
什么是动量更新?
动量更新的算法思想是,参数更新时在一定程度上保留之前更新的方向,同时又利用当前batch的梯度微调最终的更新方向,简言之就是通过积累之前的动量来加速当前的梯度。当前后梯度方向一致时,动量梯度下降能够加速学习;而前后梯度方向不一致时,动量梯度下降能够抑制震荡。
图5 item塔的参数更新机制
(点击可查看大图)
与通过梯度反向传播更新权重
公式如下:
动量更新使得
尽管具有标注偏差的样本可能给出方向相反的优化信号,但是item表示向量的波动可以被控制到很低水平。
图6 模型表现与alpha大小的关系
(点击可查看大图)
学习目标通过
整个网络的训练过程如图7所示
图7 网络训练过程
(点击可查看大图)
4
Part.4
值标签加权
图8 值标签加权
(点击可查看大图)
本文利用两个item向量之间的差异
因此可以使用与pointwise label置信度呈正相关
总的损失函数如下:
其中,
5
Part.5
实验结果
(点击可查看大图)
从实验结果可以看出 MP2 在几个数据集上都取得了SOTA的表现(HitRate和NDCG),展示了该方法的有效性。此外,我们可以得到以下发现。
1) 使用多个loss的模型(即 MP2、T3 和 APPL)通常优于只用pairwise loss(Ranknet-NN 和 BPR)或pointwise loss(NeuMF)的模型,表明将pointwise learning和pairwise learning相结合在推荐系统中是一种有潜力的方法。
2)基于pairwise learning的模型表现通常优于pointwise learning。
结语
文章研究了推荐系统中标注偏差,这一广泛存在却经常被忽视的问题,提出了MP2,一个基于动量更新的对比学习框架,结合值学习与序学习,从而缓解样本标注偏差。实验结果表明MP2比其他方法在通用指标上具有更大的优越性。
原文链接:
https://arxiv.org/abs/2204.08326
参考文献:
[1].https://blog.csdn.net/CRW__DREAM/article/details/124466642
[2].https://zhuanlan.zhihu.com/p/505769002