Multi-level Cross-view Contrastive Learning for Knowledge-aware Recommender System
Multi-level Cross-view Contrastive Learning for Knowledge-aware Recommender System

论文:https://arxiv.org/pdf/2204.08807
源码:https://github.com/CCIIPLab/MCCLK
摘要
知识图(KG)在推荐系统中发挥着越来越重要的作用。 近年来,基于图神经网络(GNN)的模型逐渐成为知识感知推荐 (KGR)的主题。 然而,基于GNN的KGR模型存在一个天然的缺陷,即监督信号稀疏 问题,这可能会使其实际性能有所下降。 受最近对比学习在从数据本身挖掘监督信号方面取得的成功的启发,在本文中,我们重点探索 KG 感知推荐中的对比学习,并提出了一种新颖的多级跨视图对比学习机制 ,称为 MCCLK 。 与传统的对比学习方法通过统一的数据增强方案(例如损坏或丢弃)生成两个图视图不同,我们综合考虑了知识图谱感知推荐的三种不同的图视图 ,包括全局级结构视图 、局部级协作视图 和语义视图 。 具体来说,我们将用户-项目图视为协作视图 ,将项目-实体图视为语义视图 ,将用户-项目-实体图视为结构视图 。 因此,MCCLK 在局部和全局层面上跨三个视图进行对比学习,以自我监督的方式挖掘综合图特征和结构信息。 此外,在语义视图中,提出了𝑘-最近邻(𝑘NN)项-项语义图构建模块 ,以捕获以前的工作通常忽略的重要项-项语义关系。
1 INTRODUCTION
推荐系统对于用户在实践中发现感兴趣的项目至关重要。 传统的推荐方法(例如,协作过滤(CF)[15,21,25,42])依赖于历史用户行为数据(例如,用户-项目交互[46,57])的可用性来捕获协作信号以进行推荐。 然而,它们严重遭受冷启动 问题,因为它们经常将每次交互视为独立实例,而忽略它们之间的关系,例如 NFM [15]、xDeepFM [21]。 一种广泛采用的解决方案是结合各种辅助信息 ,例如知识图谱(KG)[26],其中包含有关项目的丰富事实和联系,以学习高质量的用户和项目表示以进行推荐(又名知识- 意识推荐,KGR)。 事实上,已经有很多致力于 KGR 的研究工作[37,53,55],其核心是如何有效地将项目侧(异构)信息图利用到潜在用户/项目表示学习中。 大多数关于 KGR 的早期研究 [17,35,37,53] 侧重于采用不同的知识图嵌入(KGE)模型 (例如 TransE [2]、TransH [47])来预训练用于项目表示学习的实体嵌入 。 然而,这些方法表现不佳,因为它们独立地处理每个实体关系以进行学习。 因此,学习过程无法为项目表示提取足够的协作信号 。
许多基于连接的方法来对用户、项目和实体之间的多种连接模式进行建模以进行推荐,这些方法可以进一步分为两类,即基于路径 的[16,31,45]和基于图神经网络 (GNN)的[16,31,45]。 前者主要侧重于通过捕获知识图谱的长程结构来丰富用户-项目交互,例如选择知识图谱上的突出路径[33]或表示从用户到项目的多跳路径的交互[16, 45] 。 然而,这些方法严重依赖于手动设计的元路径,因此在现实中很难优化。 后者被广泛采用作为一种信息聚合范例,将多跳邻居集成到节点表示中[30,40,41,43],因为它具有在节点的邻居上有效生成局部排列不变聚合的强大能力 表示。
尽管有效,但当前基于 GNN 的模型由于交互的极端稀疏性而严重受到稀疏监督信号问题的困扰 [1, 49],甚至出现可怕的副作用,例如退化问题 [9],即将节点嵌入分布退化为 窄锥体,甚至导致生成的节点表示的不加区分。 然而,缓解监督信号稀疏问题面临着一个重大挑战,即训练标签的不足,因为在实际的推荐应用中标签通常是稀缺的。 最近,对比学习(一种经典的自监督学习(SSL)方法)被提出,为无需显式标签的训练模型铺平了道路[24],因为它具有从无标签样本数据中学习判别性嵌入的强大能力,通过最大化 负样本之间的距离,同时最小化正样本之间的距离。
在本文中,我们主要关注在对比学习范式中设计端到端的知识感知模型,这要求我们充分利用有限的用户-项目交互和额外的知识图谱事实 (例如,项目-实体) 隶属关系)进行推荐。 实际上,设计一个合适的对比学习框架仍然很重要,因为需要仔细考虑对比学习和知识感知推荐的特性以求平衡,这需要我们解决以下基本问题[44]:
(1)如何设计合适的对比机制? 由于异构性,设计的模型自然需要同时处理多种类型的节点(例如用户、项目和实体)和关系(例如用户-项目、项目-实体等)。
(2)如何构建正确的对比学习观? 一种直接的方法是,我们可以将输入的用户-项目-实体图增强(或破坏)为图视图,并将其与原始图进行对比,类似于[5,13,20]。
然而,仅仅考虑 KGR 的全局视图(即用户-项目-实体图)是远远不够的,因为它无法充分利用丰富的协作信息(即 项目-用户-项目共现) 和语义信息(即项目-实体-项目共现 )。 显然,仅在粗粒度级别使用一个图视图(例如,用户-项目-实体图)使得难以充分利用丰富的协作和语义信息进行推荐。

本文提出了一种基于自监督学习范式的新颖模型,称为知识感知推荐系统的多级跨视图对比学习 (MCCLK),以充分利用知识图谱和用户的丰富协作和语义信息。 KGR 的项目交互。 具体来说,我们首先综合考虑三个互补的视图 。 如图 1 所示,我们将用户-项目图 视为 协作视图 ,将项目-实体图视为语义视图 ,两者都是本地级视图。 此外,为了保留完整的结构信息(即远程用户-项目-实体连接),用户-项目-实体图被视为全局级别的结构视图。 然后提出了一种新颖的多级跨视图对比学习机制来协作监督三个图视图,该机制在协作视图和语义视图 之间进行局部级对比学习 ,在全局级和局部级视图之间进行全局级对比学习。
特别是,在较少探索的语义视图中,提出了一种有效的𝑘-最近邻(𝑘NN)项-项语义图构建模块 ,配备关系感知 GNN,用于明确考虑项-项语义对于模型设计不可避免的重要性。
本文贡献:
我们强调将自监督学习纳入知识感知推荐的重要性,它将节点自判作为自监督任务,为图表示学习提供辅助信号。
新颖的方法:我们提出了一种新颖的模型MCCLK,它构建了一个用于知识感知推荐的多级跨视图对比框架。 MCCLK从用户-项目-实体图考虑三个视图,包括全局级结构视图、局部级协作视图和语义视图。 然后MCCLK进行局部级和全局级的对比学习,以从多方面增强表示学习。 此外,在语义视图中,提出了𝑘NN itemitem 语义图构建模块来探索 item-item 语义关系。
2 RELATEDWORK
2.1 Knowledge-aware Recommendation
2.1.1 基于嵌入的方法。
基于嵌入的方法[3,17,35,37,39,53,55]使用知识图嵌入(KGE)[2,22,47]来预处理KG,然后将学习到的实体嵌入和关系嵌入合并到推荐中 。 协作知识库嵌入(CKE)[53]将 CF 模块与项目的结构、文本和视觉知识嵌入结合在统一的贝叶斯框架中。 KTUP [3] 在用户-项目交互和 KG 三元组上利用 TransH [47] 来共同学习用户偏好并执行 KG 补全。 RippleNet[36]通过沿着KG中的链接(关系)传播用户的历史点击项目来探索用户的潜在兴趣。 基于嵌入的方法在利用知识图谱方面表现出高度的灵活性,但知识图谱生成算法更侧重于建模严格的语义相关性(例如,TransE [2]假设头+关系=尾),这更适合链接预测而不是推荐。
2.1.2 基于路径的方法。
基于路径的方法[16,31,45,51,52,56]探索知识图谱中项目之间的各种连接模式,为推荐提供额外的指导。 例如,将知识图谱视为异构信息网络(HIN)、个性化实体推荐(PER)[52]和基于元图的推荐[16]提取元路径/元图潜在特征并利用用户和实体之间的连接性 沿着不同类型的关系路径/图表的项目。 KPRN [45] 进一步自动提取用户和物品之间的路径,并利用 RNN 对这些路径进行建模。 基于路径的方法以更自然的方式使用知识图谱,但它们严重依赖于手动设计的元路径,而这些路径在现实中很难调整。 此外,定义有效的元路径需要领域知识,这通常是劳动密集型的,尤其是对于复杂的知识图谱。
2.1.3 基于 GNN 的方法。
基于 GNN 的方法[16,45,51,52,56]建立在图神经网络(GNN)[7,11,19,50]的信息聚合机制之上。 通常,它将多跳邻居集成到节点表示中以捕获节点特征和图结构,从而可以对远程连接进行建模。 KGCN [40]和KGNN-LS [38]首先利用图卷积网络(GCN)通过迭代聚合项目的邻域信息来获得项目嵌入。 后来,KGAT[41]将用户-项目图与知识图结合起来作为异构图,然后利用GCN对其进行递归聚合。 最近,KGIN [43] 在意图级别对用户-项目交互进行建模,揭示了 KG 交互背后的用户意图,并结合 KG 交互在用户-项目-实体图上执行 GNN。 然而,所有这些方法都采用监督学习的范式来进行模型训练,依赖于它们原始的稀疏交互。 相比之下,我们的工作探索知识感知推荐中的自监督学习,利用数据本身的监督信号来改进节点表示学习。
2.2 Contrastive Learning
对比学习方法[34,44,49]通过对比正对和负对 来学习节点表示。 DGI [34]首先在图表示学习中采用Infomax [23],并重点对比局部节点嵌入与全局图嵌入 。 然后GMI[27]提出从节点特征和拓扑结构 来对比中心节点与其本地节点 。 类似地,MVGRL [12] 从两个结构图视图(包括一阶邻居和图扩散)学习节点和图级节点 表示,并对比两个图视图之间的编码嵌入。 最近,HeCo [44]提出从网络模式视图和元路径视图中学习节点表示,并在它们之间进行对比学习。 在传统的基于协同过滤(CF)的推荐领域中,SGL[49]在用户-项目交互的原始图和损坏图之间进行对比学习。 然而,很少有人致力于研究对比学习在知识感知推荐方面的巨大潜力。
3 PROBLEM FORMULATION


4 METHODOLOGY

我们现在提出建议的 MCCLK。 MCCLK 旨在将自我监督学习纳入知识感知推荐 中,以改进用户/项目表示学习。 图 2 显示了 MCCLK 的工作流程,包括三个主要部分: 1) 多视图生成。 它生成三种不同的图视图,包括全局级结构视图、局部级协作视图和语义视图。 为了探索很少被注意到的语义视图,使用提出的关系感知 GNN 构建了项目-项目语义图。 2)局部对比学习。 它首先使用 LightGCN 对协作视图和语义视图 进行编码,然后在两个视图之间进行跨视图对比学习,以学习局部级别的综合节点嵌入。 3)全局级别的对比学习。 它首先使用路径感知 GNN 对结构视图进行编码,然后在全局和局部视图之间执行交叉视图对比学习 ,以学习全局级别的判别性节点嵌入。
4.1 Multi Views Generation
我们提出以更全面和细粒度的方式学习,通过同时考虑局部和全局水平的观点。我们首先根据它们的不同类型的物品-物品关系将用户-物品-实体图分为用户-物品图和物品-实体图。对于用户-物品图 ,我们将其视为协作视图 ,旨在挖掘物品之间的协作关系,即物品-用户-物品共现。对于物品-实体图,它被视为语义视图 ,旨在探索物品之间的语义相似性,即物品-实体-物品共现。对于原始的用户-物品-实体图,它被视为结构视图 ,旨在保留完整的路径信息,即用户-物品-实体的长程连接。尽管已经投入了大量研究工作来探索协作和结构视图,但它们通常不充分地探索语义视图,使关键的物品-物品语义相似性未被触及。为了明确考虑物品-物品语义关系,我们提出构建一个 𝑘-最近邻物品-物品语义图 𝑆 ,具有一个关系感知聚合机制 ,该机制保留了邻近实体和关系信息。 𝑆中的每个条目 𝑆𝑖 𝑗 表示物品 𝑖 和物品 𝑗 之间的语义相似性。特别地,𝑆𝑖 𝑗 = 0 表示它们之间没有链接。
4.2 Local-level Contrastive Learning
基于在本地级别获得的互补协作和语义视图,我们继续使用适当的图编码器探索两个图视图,并在它们之间进行对比学习以相互监督。 具体来说,在两个视图中执行有效的 Light-GCN [14] 以学习全面的项目表示。 然后,通过编码两个视图特定的嵌入,提出局部级对比学习,鼓励两个视图协作改进表示。
**4.2.1 Collaborative ViewEncoder. **
受到基于协同过滤(CF)的宝贵工作[14, 42]的启发,这里采用了Light-GCN,它递归地执行𝐾次聚合。 Light-GCN包含简单的消息传递和聚合机制,无需特征转换和非线性激活,有效且计算效率高。

4.2.2 Semantic View Encoder
语义视图关注项目之间的语义相似性,这一点已被证实很重要,但被以前的工作所忽视。 从项目-实体从属关系显式构建项目-项目语义图后,在其上采用 Light-GCN 并进行 𝐿 次聚合操作,通过将项目亲和力注入到嵌入中来学习更好的项目表示。 在第𝑙层(∀𝑙 ε 𝐿)中,消息传递和聚合过程可以表示为:

4.2.3 Local-level Cross-view Contrastive Optimization.


4.3 Global-level Contrastive Learning
尽管从局部视图中揭示了用户/项目特征信息,但尚未探索完整的图结构信息,即统一用户-项目和项目-实体图的远程连通性,即用户-项目 -实体连接。 因此引入了全局级对比学习,首先用路径感知编码器探索结构视图,然后在全局级和局部级视图之间进行对比学习以相互监督。 更具体地说,受[43]的启发,我们设计了一个路径感知的 GNN,将路径信息自动编码到节点嵌入中。 然后利用全局级视图和局部级视图的编码嵌入,执行全局级对比学习,用于监督两级视图学习综合表示。
4.3.1 Structural ViewEncoder


4.3.2 Global-level Cross-view Contrastive Optimization


4.4 Model Prediction
将三种视图获得的用户和物品embedding拼接
用户embedding:全局、局部
物品embedding:全局、局部、语义
4.5 Multi-task Training




