Press "Enter" to skip to content

微信看一看基于对比学习的跨领域推荐模型丨KDD-2022

本站内容均来自兴趣收集,如不慎侵害的您的相关权益,请留言告知,我们将尽快删除.谢谢.

 

本文基于论文《Contrastive Cross-domain Recommendation in Matching》,发表于KDD-2022,论文作者来自微信看一看团队。

 

 

导语

 

跨领域推荐(cross-domain recommendation, CDR)关注如何充分利用源领域(source domain)的信息辅助目标领域(target domain)的推荐效果。真实推荐系统中常常能遇到需要跨领域推荐的场景(且目标领域往往只拥有极稀疏的用户行为),然而已有CDR模型往往关注于排序模块,缺少对于召回模块(matching)的设计。召回中的跨领域推荐在领域内表示学习和领域间知识迁移时都面临着严重的数据稀疏(data sparsity)和流行度偏差(popularity bias)问题。

 

在这篇工作中,我们针对召回中的跨领域推荐问题,提出了一个基于对比学习的跨领域推荐模型(Contrastive Cross-Domain Recommendation,CCDR) 。具体地,我们首先在每个领域建立一个全局异质的多样化偏好网络(diversified preference network),通过异质节点用户、物品、标签、分类、文字、公众号之间丰富的交互,引入额外的多样化用户偏好信息,然后,我们使用单领域图神经网络得到各领域下异质节点的表示向量。

 

我们创新性地提出并联合应用两种对比学习——领域内对比学习(intra-domain contrastive learning, intra-CL)和领域间对比学习(inter-domain contrastive learning, inter-CL)。领域内对比学习通过图增广加强稀疏目标领域内的节点表示学习,而领域间对比学习构建了三种不同的跨领域知识迁移桥梁,加强了不同领域间的用户偏好对齐。

 

我们在看一看推荐系统的不同跨领域推荐场景上进行了丰富的实验,CCDR模型在离线和线上实验中均获得显着提升效果。目前,CCDR模型已经部署于看一看推荐系统,服务千万用户。

 

模型背景与简介

 

工业级推荐系统常采用两阶段框架——召回和排序进行用户-物品匹配。召回模块(matching/candidate generation)负责从百万候选物品集中快速、多样、准确地筛选出用户可能感兴趣的数百个物品,而随后的排序模块(ranking)负责从这数百个召回输出中进行精排,最终输出展示给用户的推荐结果。由于排序模型的存在,召回模型更关心召回结果中是否有用户感兴趣的内容,而不在意它们的具体排序。因此,召回模块往往更关注召回效率、多样性和基于是否召回的准确性(例如hit rate)。

 

真实世界的推荐系统物品候选池往往是动态增加的。为了维持老用户的新鲜感同时扩充潜在的新用户,推荐系统常常会引入新的推荐领域或数据源(domain)。例如一个主打综合新闻的推荐信息流为了吸引人工智能从业者,可能会定向引入对应信息源,加强人工智能领域的内容。在引入的初期,这些新信息源的物品在推荐系统中缺乏充分的用户交互行为,因此推荐模型也不能很好地召回并推荐这些物品。

 

跨领域推荐(cross-domain recommendation, CDR)关注如何充分利用源领域(source domain)的信息辅助目标领域(target domain)的推荐效果,常常在以上新领域引入的场景中被广泛应用。以EMCDR和SSCDR模型为代表的CDR模型重点关注源领域到目标领域的映射函数的学习,但是这些工作未能充分利用丰富的用户/物品特征信息在不同领域间的桥梁作用,领域内表示学习和领域间知识迁移也未能很好地联动优化。以CoNet和DDTCDR等为代表的工作基于精细设计的多领域物品-用户交互的神经网络进行知识迁移,然而在召回模块中这些工作往往由于复杂度问题难以线上部署。近期,以ICAN和AFT为代表的工作针对召回模块设计了多领域推荐模型,但是这些工作的关注点集中于不同领域用户行为或特征域之间的交互建模,忽视了训练目标层级直接的知识迁移。

 

在这篇工作中,我们希望提升召回领域的跨领域推荐效果。我们关注的真实场景下,用户往往有大部分重叠,而物品不重叠,其中目标领域用户行为十分稀疏(甚至是严格冷启动)。下图展示了我们核心关注的召回领域跨领域推荐任务。召回模块跨领域推荐有着以下挑战:

 

 

▍ 如何解决少样本目标领域中的数据稀疏和流行度偏差问题?

 

在百万级用户和物品的工业级推荐系统中,数据稀疏已经很严重了。而在少样本目标领域中,大量曝光往往会(因为保守的冷启动策略和受限的探索机制)更加集中于少数热门物品,数据稀疏性问题和流行度偏差问题相互影响并加强。这两个问题不可避免地损害了用户物品的表示学习,特别是长尾/冷启动物品的学习。在召回模块,这种负面影响会产生更大的伤害,因为召回模型需要考虑并推荐所有(热门和冷门的)物品。

 

▍ 如何加强源领域到目标领域的知识迁移的准确性和多样性?

 

EMCDR等模型基于对齐用户进行跨领域迁移,而目标领域的数据稀疏性使得目标领域用户物品表示的鲁棒性下降,降低了知识迁移的准确性。另外,召回模型关注推荐多样性,我们也需要从不同角度构建多种跨域知识迁移桥梁,增加迁移到目标领域的用户偏好的多样性。

 

▍ 如何兼顾召回跨领域推荐的准确性、多样性和有效性?

 

我们需要在控制召回模型复杂度的前提下,尽可能考虑丰富信息设计跨领域推荐模型,使得模型尽可能简单但高效。我们也希望各个部分模型的设计考虑到召回的多样性,形成高效率的针对目标的联动。

 

为了解决这些问题,我们提出了一个全新的基于对比学习的跨领域推荐模型(Contrastive Cross-Domain Recommendation,CCDR)。 具体地,参考我们之前的单领域图召回模型GraphDR [1],我们首先在每个领域构建了一个全局异质的多样化偏好网络(diversified preference network)。这个网络通过异质节点用户、物品、标签、分类、文字、公众号之间丰富的交互,引入(用户点击物品信息之外的)多样化用户偏好信息,成为召回准确性/多样性的来源。然后,我们使用单领域图神经网络得到各个异质节点的表示向量,并使用基于邻居相似度的目标函数进行训练。 针对跨领域推荐,我们创新性地提出并联合应用两种对比学习——领域内对比学习(intra-domain contrastive learning, intra-CL)和领域间对比学习(inter-domain contrastive learning, inter-CL)。

 

领域内对比学习通过图增广加强稀疏目标领域内的节点表示学习,充分挖掘单领域的潜在信息。 领域间对比学习基于用户、分类和邻居信息,构建了三种不同的跨领域知识迁移路径,加强了不同领域间的知识共享。我们在看一看推荐系统的不同跨领域推荐场景上进行了丰富的实验,CCDR模型在离线和线上实验中均获得显着提升效果。目前,CCDR模型已经部署于看一看推荐系统,服务千万用户。我们的贡献主要如下:

 

■  我们提出了一个基于对比学习的跨领域推荐模型。据我们所知,这是第一个在跨领域推荐的知识迁移中使用对比学习的工作。

 

■   我们提出了三种不同的领域间对比学习任务,基于用户、类别标签和邻居信息的多种角度进行知识迁移,提升了知识迁移的信息传递效率和多样性。

 

■   CCDR模型是一个简单、通用、方便部署且有效的模型,并且已部署于看一看线上系统。我们提出的领域间对比学习的思路也可以应用于其它跨领域推荐或迁移学习的任务中。

 

模型方法

 

▍ 2.1 模型整体架构

 

我们本文的工作针对召回模块中的跨领域推荐任务。具体步骤如下:(1)在每个领域内构建一个单领域召回模型(本文参考之前线上的GraphDR模型);(2)在目标领域增加一个领域内对比学习(intra-CL),基于增广+自监督学习充分挖掘已有信息;(3)在跨领域中增加一系列领域间对比学习(inter-CL),使用多种跨领域知识迁移路径,挖掘不同领域中推荐对象的相关性;(4)基于线上多通道召回策略,高效且多样化地进行召回。

 

▍ 2.2 多样化偏好网络

 

我们想要充分利用真实推荐系统存在的多种信息和它们之间的交互,挖掘用户更全面和多样化的偏好信息。因此,我们参考团队在TBD-2021上的GraphDR图召回模型设计我们的单领域模型。具体地,我们认为用户(user)、物品(item)、媒体号(media)、标签(tag)、单词(word)、类别(category)是推荐系统重要的客体,将它们看做节点,并基于它们之间的全局交互信息构建了一张巨大的全局异质多样化偏好网络。为了充分理解用户对于物品的偏好来源,基于以上节点,我们选择了以下6种边构建用户的不同偏好信息:

 

■   物品-用户边 :反映用户点击物品的行为。这是传统推荐模型的主要监督信息。

 

■   物品-物品边 :两个物品在一个点击session中的相邻位置出现,则计为一次session共现,物品-物品session共现数超过一定阈值则产生连边。这个信息表示了物品间隐含的基于序列化行为的相关性(例如经典的啤酒->尿布),这种相关性难以被其他显式关系完全捕捉,是用户偏好信息的重要补充。

 

■   物品-标签边 :物品和其所属的标签之间的连边。这里的标签是一种物品的粗粒度分类信息。用户可能对于粗粒度标签而非细粒度物品有明显偏好。

 

■   物品-类别边 :表示物品和其所属类别之间的连边,兴趣粒度大于标签。

 

■   物品-单词边 :物品和其标题中的单词有连边。这种边关注的是用户在语义上的偏好信息。

 

■   物品-媒体号边 :物品和发表物品的媒体号之间有连边。这里保存的是用户对于信息来源(如用户喜欢的公众号/作者)的偏好。

 

 

这种多样化偏好网络的设计有着以下两项优势: (1)在传统的用户-物品交互信息之外,我们还考虑了用户序列观看pattern、粗粒度语义标签、信息来源、文本信息等多个角度的偏好信息。这些信息能够极大地增加召回模型的多样性,成为召回模块的准确性/多样性来源; (2)这种设计能够帮助我们在跨领域推荐时构建更多的知识迁移路径(通过多种异质节点),和后续的领域间对比学习以及线上多队列召回策略完美契合。

 

▍ 2.3 单领域召回模型

 

我们简单修改了GAT模型以适应异质节点输入,得到所有节点的聚合表示(当然可以使用更加复杂的图神经网络,不过我们为了召回模型的简便性,基于奥卡姆剃刀使用了GAT模型)。为了兼顾召回准确性和多样性,我们使用了GraphDR中的基于邻居相似度的优化目标,认为多样化偏好网络中的任意两个异质邻居节点之间都是相似的。如果只考虑用户-物品边,此优化函数则退化到基于GAT的双塔召回模型。优化函数具体如下:

 

 

使用此优化函数能够带来以下三项优势:(1)它可以充分考虑推荐系统各种异质客体之间的相关性,在表示学习中兼顾了用户对于物品多样化的偏好,从而平衡了准确性与多样性;(2)在少样本的目标领域中,用户-物品信息稀疏,考虑额外的交互信息能够使得冷启动/长尾物品得到充分的学习;(3)这种基于邻居相似度的优化目标假设多样化偏好网络中的任意两个异质邻居节点之间都是相似的。这一点使得后文领域间对比学习中考虑多跳路径的对比学习任务成为可能,进一步增加了跨域知识迁移的覆盖率。

 

 

▍ 2.4 领域内对比学习(intra-CL)

 

领域内对比学习旨在充分利用单领域异质信息提升表示学习的效果。具体地,我们在某目标节点的GAT聚合中多次随机sample待聚合的邻居节点,形成不同的多阶邻居子图。Intra-CL认为同一个节点的不同子图经过图神经网络得到的聚合节点向量之间应该更加相似,不同节点的向量相对不相似。

 

 

▍ 2.5 领域间对比学习(inter-CL)

 

领域间对比学习旨在增加两个领域间的知识迁移的效率和多样性。我们基于对齐用户节点、对齐分类节点(标签、类别、单词)、多跳对齐邻居节点构造了三种领域间对比学习任务:

 

■ User-based inter-CL :同一个用户在两个领域中的表示应该更加相近。这个对比任务是基于用户不同领域内的偏好相关性构建的;

 

■ Taxonomy-based inter-CL :同一个tag/category/word在两个领域中的表示应该更加相近。这个对比任务是基于这些语义/属性信息的跨域一致性构建的;

 

■ Neighbor-based inter-CL :一个user/tag/category/word节点在A领域的表示应该和其在B领域节点的邻居节点表示相似。这个对比任务扩充了之前只在对齐节点上进行知识迁移的方式。在前述基于邻居相似度的优化目标辅助下,这种对比学习的正确性和有效性得到了充分保证。这种对比任务也扩充了知识迁移目标能够直接优化的覆盖范围(从对齐节点扩充到全部节点),对于冷启动目标领域场景尤为重要。

 

 

最后,我们使用一个多任务训练的框架联合优化这些损失函数:

 

▍ 2.6 线上多队列召回

 

在线上,我们基于这些学得的异质节点之间的相似度进行兼顾准确性、效率和多样性的召回。具体地,我们在离线预先计算节点之间的相似度并保存top的近邻异质节点信息。在线上,我们为每一种节点设置一个子召回队列。以标签队列为例,我们首先基于用户历史行为中的物品和物品-标签相似度(当然也会考虑用户对物品的满意度以及时效性等因素加权),获取一批包含用户偏好信息的代表性标签。然后,我们再基于这些标签,获取其加权后的相似物品集合。最后,我们综合考虑6个队列召回的物品进行重排序,得到最终此召回队列的输出。

 

 

我们基于这种简单有效的多队列召回策略,兼顾了召回结果的准确性和多样性,异质队列召回也能部分缓解冷启动领域的数据稀疏性问题。需要注意的是,我们线上召回核心是基于物品和异质节点的相似度进行的——而这在离线训练中是被直接优化了的。由于我们离线预先得到了异质节点向量之间的k近邻,多队列召回也能够满足线上部署的复杂度需求。

 

实验结果

 

我们在微信看一看上进行了丰富的离线和线上实验,关注少样本和严格冷启动的新目标领域召回结果。 实验结果证明了领域内对比学习和领域间对比学习在跨领域召回问题中的有效性。我们也进行了充分的消融实验,证明了领域内对比学习和所有领域间对比学习的必要性。

 

 

 

 

总结

 

我们在这篇工作中关注了召回模块的跨领域推荐任务,其在工业级推荐系统中对新领域的推荐效果产生了重要影响。我们创新地提出了多种领域内和领域间的对比学习任务,并在离线和线上测试中取得了显着提升效果。

 

目前CCDR模型已经部署于微信看一看线上系统 。我们设计的跨领域对比学习任务是简单有效、通用且易于部署和维护的,在其它跨领域推荐模型甚至迁移学习任务中也能有充分的应用场景。 我们会继续探索对比学习在(跨领域)推荐中的应用,并期待有更多后续工作。

 

参考文献:

 

[1] Xie R, Liu Q, Liu S, et al. Improving accuracy and diversity in matching of recommendation with diversified preference network[J]. IEEE Transactions on Big Data, 2021.

 

[2] Xie R, Qiu Z, Rao J, et al. Internal and Contextual Attention Network for Cold-start Multi-channel Matching in Recommendation[C]//IJCAI. 2020: 2732-2738.

 

[3] Hao X, Liu Y, Xie R, et al. Adversarial Feature Translation for Multi-domain Recommendation[C]//Proceedings of the 27th ACM SIGKDD Conference on Knowledge Discovery & Data Mining. 2021: 2964-2973.

 

[4] Kang S K, Hwang J, Lee D, et al. Semi-supervised learning for cross-domain recommendation to cold-start users[C]//Proceedings of the 28th ACM International Conference on Information and Knowledge Management. 2019: 1563-1572.

 

[5] Li P, Tuzhilin A. Ddtcdr: Deep dual transfer cross domain recommendation[C]//Proceedings of the 13th International Conference on Web Search and Data Mining. 2020: 331-339.

 

[6] Man T, Shen H, Jin X, et al. Cross-domain recommendation: An embedding and mapping approach[C]//IJCAI. 2017, 17: 2464-2470.

 

[7] Wu Y, Xie R, Zhu Y, et al. Multi-view Multi-behavior Contrastive Learning in Recommendation[C]//International Conference on Database Systems for Advanced Applications. Springer, Cham, 2022: 166-182.

 

[8] You Y, Chen T, Sui Y, et al. Graph contrastive learning with augmentations[J]. Advances in Neural Information Processing Systems, 2020, 33: 5812-5823.

 

[9] Chen T, Kornblith S, Norouzi M, et al. A simple framework for contrastive learning of visual representations[C]//International conference on machine learning. PMLR, 2020: 1597-1607.

Be First to Comment

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注