嘿,记得给“机器学习与推荐算法”添加星标
TLDR: 本文提出了一种新的去偏的对比学习范式DCRec,以解决在序列推荐中引入对比学习机制而造成或者加重的流行度偏差问题。作者设计了一个多通道网络来建模用户在序列行为上表现出的从众程度(conformity),并且以用户的从众程度为权重,动态地增强序列编码与图编码的用户兴趣建模之间的对比学习机制。在后者中,本文设计两种全局的图编码方式:序列图与协同图,来反映用户兴趣的从众部分和个性化部分。DCRec可以学习自适应的对比学习权重,来平衡用户从众表示和个性化兴趣表示的增强程度,以实现去偏化对比学习的优势。
论文:arxiv.org/abs/2303.11780 代码:github.com/HKUDS/DCRec
近年来,随着深度学习技术的不断发展,越来越多的深度学习方法被应用于序列推荐这一场景。这些方法通常采用神经网络模型,例如RNN、Transformer和GNN,通过学习用户和商品的embedding向量表示来实现推荐下一物品的目标。这些深度学习方法通常能够更好地捕捉用户的兴趣和行为规律,从而取得更好的推荐效果。
为了解决序列推荐场景下的数据稀疏性问题,挖掘序列中更加复杂的用户兴趣模式,研究者们近年来提出在序列推荐中应用对比学习方法。目前的研究工作主要关注两种数据增强方法:(i)序列数据的随机增强(例如,随机mask、重新排序reorder),代表性工作:S3Rec [1],CL4SRec [2];(ii)用预先定义的规则构建对比视图,并对齐视图下的商品表示,代表性工作:DuoRec [3]。尽管这些方法带来了表现提升,但本文认为这些方法在考虑流行度偏差以及区分用户的从众动机与用户的真实兴趣方面存在不足,甚至可能加重推荐模型本身的流行度偏差问题。
作者在上图中展示了Reddit数据集中的一个启发性的例子来更好地说明这个问题。用户订阅了一系列关于篮球的小众主题(蓝色),最终订阅了流行(红色)的主题“nba”。另一个用户在其行为序列中订阅了许多流行主题;最后一个商品也是“nba”。显然,第一个用户订阅“nba”是因为他对篮球运动真正感兴趣。然而,第二个用户偏爱许多流行主题。在DuoRec中,这两个用户序列被错误地视为正样本对,而忽视了用户行为中的主导因素是个性化兴趣还是从众因素。此外,还可以观察到本文提出的DCRec模型和当前最先进的自监督序列推荐模型对于用户的预测有显著的不同。DCRec能够准确捕捉用户兴趣并正确地将ground truth排在首位。然而,另外两种模型受到流行度偏见的影响,无法做出正确的排名。因此,动态地捕捉用户意图中的兴趣和从众部分,并以解耦的方式对其进行建模,对于在训练数据中广泛存在的流行度偏差提高序列推荐模型的性能是至关重要的。
为了解决上述挑战,本文提出了一种针对序列推荐的去偏差对比学习框架DCRec。具体而言,受到GNN用于序列推荐的工作的启发,作者首先设计两种全局的图编码方式:序列图与协同图,来反映用户兴趣的从众部分和个性化部分。为了进一步将用户的从众程度(Conformity)个性化的兴趣从其商品交互序列的表示中以解耦合的方式学习,作者设计了一个新颖的多通道用户从众度建模网络CWNet来评估用户的从众程度。学习到的从众程度被用来动态地加权序列表示和两个图编码表示之间的对比学习机制,来实现对于用户的从众表示和个性化兴趣表示之间的平衡建模,以更好地应对流行度偏差问题。本文还为这一机制提供了理论分析,来证明其带来的对比学习梯度动态性能够带来更好的表征学习过程。
DCRec包含两个主要部分,即序列表示与图表示之间的去偏化对比学习过程(左部分)以及多通道的用户从众度建模网络CWNet(右部分)。CWNet产生的权重被用来加权去偏化对比学习过程,实现用户从众度感知的自适应性和动态性。
迄今为止,Transformer已成为最常见的序列编码解决方案,可以将时间有序的token序列投影编码到潜在的序列语义空间中,以强化序列中item之间的关联度。与之前的工作保持一致,我们将DCRec的序列编码部分构建在Transformer之上。对于输入的embedding,我们由原始的商品embedding和可学习的位置embedding相加得到:
然后,一个多头注意力机制用来以线性的方式编码序列中item的表示:
为了进一步增强embedding表示的非线性,我们采用一个前馈神经网络来变换生成的embedding:
在实际的序列推荐系统中,常常存在长尾序列,这些序列仅包含有限数量的物品。这些序列很难为神经序列编码器提供足够的上下文信号,从而导致次优的模型性能。为了解决这个问题,本文提出了将物品转换的序列视图和用户-物品交互的协作视图统一起来的方法。通过这种设计,模型可以捕捉隐含的跨序列用户兴趣依赖性,从而允许在序列推荐中进行基于用户的兴趣建模知识转移。
为了实现这一目标,我们首先生成两种图,分别对应于序列视图(Item Transition Graph)和协同视图(Item Co-Interaction Graph)。具体而言,序列图是基于所有序列集合通过全局的前后连接关系构建的,它反映了全局的商品之间基于所有用户兴趣的转移关系;协同图则反映了用户和商品之间的交互关系在商品语义上的体现。进一步,这样设计为我们带来了额外的好处,即我们可以将序列图看作是用户从众兴趣模式的建模,因为对于任意一个商品,我们在其邻居节点中囊括了所有用户对于它的“窗口交互”,即前后交互的其它商品;将协同图看作是用户在商品上体现的个性化兴趣的表征,因为对于个性的兴趣而言,用户喜欢一个商品也会喜欢其类似的商品,而这一语义恰恰可以由协同过滤的信号进行建模。
至此,我们可以通过GNN编码图信号,以增强用于推荐的信息源:
基于目前的设计,DCRec可以以序列表示、序列图以及协同图之间的表示形成天然的跨视图对比学习范式。然而,用户的从众性经常耦合于其真实兴趣以影响用户行为,由此导致的流行度偏差常常会影响模型的表现。例如,用户可能会因为从众性而跟随他人点击产品或查看短视频,而不是真正的兴趣驱动。如果在生成对比学习中的增强信号时未将用户兴趣和从众性分离开来,对比学习方法可能会关注不正确的正负样本对,因而引入偏差信息。
从直觉上讲,用户的从众性和真实兴趣可能以复杂的方式耦合在一起,共同驱动交互行为。为了解决这个挑战,本文提出了一种去偏化的多视图对比学习方法,通过自适应增强来产生单个交互级别的用户从众度打分。为了实现这个目标,作者设计了一个多通道从众度加权网络(CWNet),以得出用户交互的从众程度。
在CWNet中,用户u和商品v之间的交互从众程度可以由序列图上的三个语义通道进行计算:
最终的用户交互从众度打分由以上三个通道的平均值得到。为了使得这一权重的总体分布更有区分度,并且满足整体用户从众度大致符合正态分布的假设,我们按照以下方法对权重值进行变换:
其中为超参数,控制了从众度权重的均值,用来反映该数据集中用户的平均从众度。为了进一步规范化权重值的分布,我们假设在一个数据集上,用户的从众度分布接近于正态分布。因此,我们对施加正态分布的KL散度正则化约束,避免其分布的不合理性:
其中是正态分布均值为,标准差为(实际实验中固定为0.1)的随机样本。
为了使我们的DCRec具有自适应的去偏增强功能,我们将交互的从众因素纳入我们的embedding对比学习范式,以确定对比学习在单个交互粒度上的正则化强度。如前所述,序列编码、序列图编码和协同图编码都是通过不同的编码器,即Transformer和GNN生成的。我们为DCRec引入两个关键维度的对比学习:
最终的序列表示由序列上最后一个商品embedding的不同视图信息融合得到。我们设计了一个可学习的注意力机制来融合序列编码和图编码的信息:
我们采用整个item集合上的交叉熵损失来优化模型的参数。并且将推荐学习主任务的loss和自监督loss以多任务训练的方式进行联合的端到端优化:
我们进一步从梯度的理论层面分析为什么我们的交互从众度感知可以为对比学习的去偏过程带来优化。根据对于对比学习损失函数的推导,正样本对与正负样本对关于梯度的贡献可以表达为:
根据这一关系,通过在模型学习中采样一个实际的batch,我们可以画出在有无从众度正则项下正样本对和正负样本对关于梯度的贡献与其pairwise相似度的函数图:
其中上图是无正则权重时样本对对于梯度的贡献,而下图是在随机采样一批权重下梯度贡献的情况。不难发现,我们对于从众程度权重的引入使得在跨视图对比学习过程中,一些样本的效果得到了加强,而另一些则被削弱了。增强和削弱的程度取决于正样本对关于目标商品交互的从众程度的判断。这赋予了学习过程更丰富的语义,允许样本以消偏化的方式对对比学习梯度做出动态的、适应性的贡献,从而引导更好的表征学习。
本文在四个公开数据集上对比11个最新的基线模型进行了广泛的实验,实验结果表明提出的DCRec在总体表现、冷启动推荐、长尾推荐场景均有更好的性能。
作者还进行了完整的消融实验,实验结果表明本文提出的各个子组件均有提升推荐效果的功能:
这些实验结果表明以去偏化对比学习的方式考虑用户在单次交互上反映出的兴趣与从众性的解耦可以更好地消除推荐系统中的流行度偏差,以进一步提升推荐性能。
在这一工作中,我们的目标是以动态对比学习的方式分解用户的真正兴趣和从众性,以针对流行度偏差改进序列推荐模型。为了实现这一目标,本文提出了一个新的自监督的推荐模型DCRec,它能自动提炼出交互从众度感知的对比学习增强信号。这项工作阐明了最新的对比学习方法在序列推荐方面的局限性。我们提出的总体解决方案有效地缓解了序列推荐系统的数据增强中的流行度偏差的影响。通过广泛的实验,我们证明了所提出的的DCRec的有效性。值得注意的是,DCRec在面对数据稀缺问题(冷启动、长尾)时也表现出了较好的性能。
[1] Zhou, Kun, et al. "S3-rec: Self-supervised learning for sequential recommendation with mutual information maximization." Proceedings of the 29th ACM international conference on information & knowledge management. 2020.
[2] Xie, Xu, et al. "Contrastive learning for sequential recommendation." 2022 IEEE 38th international conference on data engineering (ICDE). IEEE, 2022.
[3] Qiu, Ruihong, et al. "Contrastive learning for representation degeneration problem in sequential recommendation." Proceedings of the fifteenth ACM international conference on web search and data mining. 2022.