论文阅读——学习与知识图交互背后的意图以供推荐

 Wang X ,  Huang T ,  Wang D , et al. Learning Intents behind Interactions with Knowledge Graph for Recommendation[J].  2021.

原文出处:https://dl.acm.org/doi/10.1145/3442381.3450133

摘要

知识图谱(KG)在推荐系统中起着越来越重要的作用。最近的一个技术趋势是开发基于图神经网络(GNNs)的端到端模型。然而,现有的基于GNN的模型在关系建模中是粗粒度的,因为(1)未能在细粒度的意图水平上识别用户-项关系,以及(2)利用关系依赖关系来保持长距离连接的语义。在该研究中,作者利用辅助项知识来探索了用户项目交互背后的意图,并提出了一个新的模型,基于知识图谱的意图网络(KGIN)。从技术上讲,作者将每个意图(intent)建模为KG关系的注意力组合(attentive combination),鼓励不同意图的独立性,以获得更好的模型能力和可解释性。此外,还设计了一种新的GNN信息聚合方案,它递归地集成了远程连接的关系序列(即关系路径),该方案允许提取有关用户意图的有用信息,并将其编码为用户和项目的表示形式。在三个基准数据集上的实验结果表明,KGIN与KGAT、KGNN-LS和CKAN等最先进的方法相比,取得了显著的改进。进一步的分析表明,KGIN通过识别有影响的意图和关系路径,为预测提供了可解释的解释。

关键词

推荐,知识图谱,图神经网络。

1 介绍

知识图(KG)在提高推荐的准确性和可解释性方面显示出了巨大的潜力。KG中丰富的实体和关系信息可以补充用户与项之间的关系建模。它们不仅揭示了项目之间的各种相关关系(例如,由一个人共同导演),而且还可以用来解释用户偏好(例如,将用户选择的电影归因于其导演)。从这种结构性知识中学习高质量的用户和项目表示已经成为知识感知推荐的主题。早期的工作从KG三元组中生成嵌入,并将它们视为先前或内容信息,以补充项目表示(也就是基于嵌入的方法)。一些后续研究丰富了从用户到项目的多跳路径的交互,以更好地描述用户-项目关系(基于路径的方法)。然而,这些方法很难获得高质量的路径,它们面临着各种问题,如劳动密集型特征工程、到不同领域的可转移性差和/或性能不稳定。最近,一种技术趋势、是开发基于图形神经网络(GNNs)的端到端模型。关键思想是利用信息聚合方案,可以有效地将多跳邻居集成到表示中。得益于连接性建模和表示学习的集成,这些基于GNN的模型实现了良好的推荐性能。尽管它们的有效性,我们认为目前基于GNN的方法在建模两个因素方面有不足。(1)用户意图。据知,这些研究都没有考虑到更细粒度层次上的用户项关系。(2)一个重要的事实被忽略了:用户通常有多种意图,从而驱动用户使用不同的项目。以图1的右图为例,意图p1强调导演(r1)和明星(r2)方面的组合,驱动用户u1观看电影i1和i5;而另一个意图p2突出明星(r2)和合作伙伴(r3)方面,用户选择电影i2。忽略用户意图的存在,限制了用户-项交互的建模。(2)关系路径。在这些研究中,信息聚合方案大多是基于节点的——也就是说,从邻近节点收集信息,而不区分它的路径。此外,KG关系通常在相邻矩阵的衰减因子[38,41]中建模,以控制邻居的影响。如图2左侧所示,u1的表示混合了来自一、二、跳和三跳邻居的信号(即{i1、i2}、{v1、v2、v3}、{v3})的信号。它无法保留从v3到u1的三跳路径路径(例如(p1、r2、r3)所携带的关系依赖关系和序列)。因此,这种基于节点的方案不足以捕获关系之间的相互作用。

在该文中,作者重点通过使用项KG来探索用户项交互背后的用户意图,以提高推荐的性能和可解释性。我们提出了一种新的模型,基于知识图的意图网络(KGIN),它由两个组件组成,以相应地解决上述局限性:(1)用户意图建模。每个用户-项的交互都用潜在的意图来丰富。虽然我们可以将这些意图表示为潜在向量,但它们的语义是不透明无法理解的。因此,我们将每个意图与KG关系上的分布联系起来,考虑到关系组合的重要性。从技术上讲,意图嵌入是关系嵌入的一个注意组合,其中重要的关系被分配为较大的归因分数。此外,还引入了独立性约束,以鼓励意图之间的显著差异,以获得更好的可解释性。(2)具有关系路径感知功能的聚合。与基于节点的聚合机制不同,我们将关系路径视为一个信息通道,并将每个通道嵌入到一个表示向量中。由于用户意图项三元组和KG三元组是异构的,作者为这两部分设置了不同的聚合策略,以分别提取用户的行为模式和项的相关关系。简而言之,这种关系建模允许我们识别有影响力的意图,并将关系依赖关系和路径的语义编码到表示法中。作者在三个真实世界的数据集上进行了广泛的实验。实验结果表明,他们的KGIN的性能优于最先进的方法,如KGAT、KGNN-LS和CKAN。此外,KGIN能够以意图的粒度来解释用户的行为。作者总结了这项工作的贡献如下:

1.在基于KG的推荐中揭示了交互背后的用户意图,以便获得更好的模型能力和可解释性;

2.提出了一种新的模型KGIN,在GNN范式下考虑用户项目关系和关系路径的远程语义;

3.对三个基准数据集进行了实证研究,以证明了KGIN的优越性。

2 问题定制

本文使用了两种数据结构

1.具有交互作用的数据(Interaction Data)这里关注隐式反馈(查看、点击、购买)等,这里有用户集 U,项目集 I,和交互集O^{+}{(u,i)|...}

2.知识图谱:KG以异构图或异构信息网络的形式存储真实事实的结构化信息,如项目属性、分类法或外部常识知识。通过项目与KG实体之间的映射(I⊂V),KG能够配置项目,并为交互数据提供补充信息。

考虑到交互集和KG,作者的知识感知推荐的任务是学习一个函数,可以预测用户采用一个项目的可能性。

3 方法论

作者提出了基于知识图的意图网络(KGIN)。图3显示了KGIN的工作流程。它由两个关键组件组成:(1)用户意图建模,使用多个潜在意图来描述用户项关系,并将每个意图表述为KG中关系的注意力组合,同时鼓励不同的意图相互独立;(2)关系路径感知聚合,强调了远程连通性中的关系依赖性,以保持关系路径的整体语义。KGIN最终会产生对用户和项目的高质量表示。

3.1 用户意图模型

之前基于GNN的研究假设没有或只有一个与用户与项目之间的关系交互,本文与之不同,作者的目标是捕捉一种直觉,即用户的行为受到多重意图的影响。在这里,将意图定义为用户选择项目的原因,这反映了所有用户行为的共性。以电影推荐为例,可能的意图是对电影属性的各种考虑,比如明星和合作伙伴的组合,或导演和类型。不同的意图抽象了用户不同的行为模式。这可以用更细粒度的假设来叠加协同过滤效应——由类似意图驱动的用户会对项目也有类似的偏好。这种直觉激励我们以意图的粒度建模用户-项目关系。

假设P是所有用户共享的意图集,可以将统一的用户项目关系分割到|P|个意图中,并将每个(u、i)对分解为{(u、p、i)|p∈P}。因此,将用户项交互数据重新组织为一个异构图,称为意图图(IG),这不同于之前工作中采用的同构协作图。

3.1.1 学习意图的表示

虽然我们可以用潜在的向量来表达这些意图,但很难明确地识别每个意图的语义。一个直接的解决方案是KTUP提出的将每个意图与一个KG关系耦合。然而,该解决方案只孤立地考虑单一关系,而不考虑关系的交互和组合,因此无法完善用户意图的高级概念。例如,关系r1和r2的组合对意图p1有影响,而关系r3和r4对意图p2更有用。因此,我们为每个意图分配知识图谱的一个分布。在技术上,运用注意力策略来创建意图嵌入如下:

其中e_{r}是关系r的ID嵌入,通过分配注意力分数α(r,p)来量化其重要性,正式地: 

 其中w_{rp}是特定关系r和特定意图p的可训练的权重。在这里,我们为了简单使用权重,并在未来的工作中留下对复杂关注模块的进一步探索。值得一提的是,这些注意力不是针对单一用户而定制的,而是改进了所有用户的普遍模式。

3.1.2 意图的独立建模

不同的意图应包含有关用户偏好的不同信息。如果一种意图可以被另一种意图推断出来,那么描述用户项目关系可能是冗余的,而且是信息缺乏的。相比之下,具有独特信息的意图将提供一个有用的角度来描述用户的行为模式。因此,为了更好的模型能力和可解释性,我们鼓励意图的表示相互不同。

在这里,我们介绍了一个独立建模模块来指导独立意图的表示学习。该模块可以简单地通过应用统计测量来实现,如互信息[2]、皮尔逊相关系数[33]和距离相关系数。这里我们提供了两种实现:

这里贴一个互信息的介绍:https://blog.csdn.net/qq_15111861/article/details/80724278

• 互信息

我们最小化任意两种不同意图的表示之间的相互信息,以量化它们的独立性。这种想法与对比学习相吻合。更正式地说,独立性模型是:

其中s(·)是测量任意两种意图表示关联的函数,这里设置为余弦相似函数;\tau是softmax函数中的超参数(不会翻译这一句,原文,and τ is the hyper-parameter to the temperature in softmax function。 

• 距离相关系数

它度量任意两个变量的线性和非线性关联,当且仅当这些变量是独立时,该变量的系数为零。最小化用户意图的距离相关性,使我们能够减少不同意图的依赖性,其表述为:

其中,dCor()为意图p‘与意图p’之间的距离相关关系: 

其中,dCov(·)是两个表示的距离协方差,而dVar(·)是每个意图表示的距离方差。优化这种损失使我们能够鼓励不同意图之间不同,并使这些意图具有不同的边界,从而赋予用户意图更好的可解释性。

3.2 具有关系路径感知功能的聚合

在建模了用户的意图之后,继续在GNN基础范式下进行用户和项的表示学习。以往基于GNN的推荐模型表明,邻域聚合方案是一种很有前途的端到端邻居集成到表示中的方法。更具体地说,一个自我节点的表示向量是通过递归地聚合和转换其多跳邻居的表示来计算的。然而,我们认为,目前的聚合方案大多是基于节点的,这限制了结构知识的好处。有两个问题:1.聚合器专注于结合邻域的信息,而不区分它们来自哪条路径。考虑到图2中的示例,自我节点u1与其2跳相邻节点v2之间有三个信息通道:在构造由v2传递的神经消息时,基于节点的聚合器在很大程度上通过衰减因子转换和重新调整v2的表示,而不考虑不同通道的影响。因此,它们不足以在表示形式中保存结构信息。此外,2.当前基于节点的聚合器通常通过注意力网来建模衰减因子中的KG关系,以控制从邻居传播的信息。这限制了KG关系对节点表示的贡献。此外,没有以显式的方式捕获关系依赖关系。因此,我们的目标是设计一个具有关系路径感知的聚合方案来解决这两个限制性。例如((p2,r2,r3),在路径中。

3.2.1 意图图上的聚合层

作者首先从IG中细化协作信息。如前所述,CF效应假设行为相似的用户有相似的偏好来描述用户模式。这启发作者将个人历史(即用户以前采用的项目)视为个人用户预先存在的特征。此外,在IG中,可以通过假设具有相似意图的用户会对项目表现出相似的偏好,在用户意图的颗粒化程度上捕获更细粒度的模式。考虑到IG中的用户u,我们使用Nu={(p、i)|(u、p、i)∈C}来表示意图感知历史和u周围的一阶连接。技术上,我们可以集成历史项目的意图感知信息,创建用户u的表示:从技术上讲,我们可以从历史项目中整合意图感知信息,创建用户u的表示形式:

 其中e_{u}^{(1)}\in R^{d}是用户u的表示,f_{IG}(\cdot )是描述每个一阶连接(u、p、i)的聚合器函数。在此,实现了f_{IG}(\cdot ),具体如下:

其中,e_{i}^{(0)}是项目i的ID嵌入,\odot是element-wise product;对于该式子有两个见解。1.对于一个给定的用户,不同的意图将会有不同的贡献来激励他的行为。因此引入了一个注意力评分\beta (u,p)来区分意图p的重要性。

 其中e_{u}^{(0)}是用户u的嵌入,使重要性评分个性化。2.与在之前的研究中使用衰减因子或正则化项的想法不同,我们强调了意图关系在聚合过程中的作用。因此,我们通过按element-wise的乘积来构建项目i信息。因此,我们能够在用户表示中显式地表达一阶意图感知信息。

3.2.2 知识图谱层上的聚合

 然后,专注于KG中的聚合方案。由于一个实体可以参与多个KG三元组,因此它可以将其他连接的实体作为其属性,以反映项之间的内容相似性。例如,电影《霍比特人我》可以由导演彼得·杰克逊和主演马丁·弗里曼来描述。更正式地,使用Ni={(r、v)|(i、r、v)∈G}来表示项i的属性和一级连通性,然后整合来自与之连接的实体的关系感知信息来生成项i的表示:

其中,e_{i}^{(1)}\in R^{d}是从一阶连接中收集信息的表示;FKG(·)是从每个连接(i、r、v)中提取和集成信息的聚合函数。 在这里,我们解释了聚合器中的关系上下文。直观地说,每个KG实体在不同的关系上下文中都有不同的语义和意义。例如,实体昆汀·塔伦蒂诺分别用两个三元组(Quentin Tarantino, director, Django Unchained)(Quentin Tarantino, star, Django Unchained),分别表达了与导演和明星概念相关的信号。然而,之前的研究只通过注意机制模拟衰变因子中的KG关系来控制Quentin TarantinoDjango Unchained表示的贡献。这里,作者将聚合器中的关系上下文建模为:

 其中e_{v}^{(0)}是实体v的ID嵌入。对于每个三元组(i、r、v),作者通过将关系r建模为投影或旋转算符来设计一个关系消息。因此,关系消息能够揭示三元组所携带的不同含义,即使它们得到了相同的实体。类似地,可以得到每个KG实体v∈V的表示e_{v}^{(1)}

3.2.3 捕获关系路径

在建模了方程式(6)和(9)中的一阶连通性之后,我们进一步堆叠了更多的聚合层,以收集来自高阶邻居的有影响的信号。从技术上讲,递归地将用户u和项i的表示表示为:

其中e_{u}^{(l-1)},e_{i}^{(l-1)},e_{v}^{(l-1)}分别表示用户u、项i和实体v的表示,它们记住从它们的(l-1)跳邻居传播的关系信号。得益于我们的关系建模,这些表示能够存储多跳路径的整体语义,并强调关系的依赖关系 .让这一条路径是根植于i的l跳路径,它包含一系列相连的三元组。它的关系路径仅仅被表示为关系的序列,即(r1,r2,···,rL),因此可以重写e_{i}^{(l-1)}表示如下:

 其中N_{i}^{l}是所有项目i的l跳路径的集合。显然,这种表示反映了关系之间的相互作用,并保留了路径的整体语义。这与目前在知识感知推荐者中所采用的聚合机制有显著的不同,他们的机制忽略了KG关系的重要性,因此未能捕获关系路径。

3.3 模型预测

在L层之后,我们得到用户u和项i在不同层的表示,然后将它们总结为最终表示:

通过这样做,路径的意图感知关系和KG关系依赖关系被编码在最终的表示中。此后,在用户和项目表示上使用内部乘积来预测用户采用该项目的可能性: 

3.4 模型优化

作者选择了成对的BPR损失[26]来重建历史数据。具体地说,它认为对于给定用户,其历史项目应分配比未观察项目更高的预测分数:

 BPR Loss是用得比较多的一种raking loss。它是基于Bayesian Personalized Ranking。BPR Loss 的思想很简单,就是让正样本和负样本的得分之差尽可能达到最大。

通过结合独立性损失和BPR损失,我们最小化以下目标函数来学习模型参数:

3.5  模拟分析法

4 实验

实验选择了三个数据集,在验证阶段使用全排序策略,而不是抽样指标或抽样较小的用户集。更具体地说,对于每个用户,她以前未采用的完整项目(full items)被视为负项,并且测试集中的相关项目被视为正项。所有这些项目都是基于推荐模型的预测进行排名的。基线采用了MF,CKE,KGCN-LS,KGAT,CKAN,R-GCN.实验使用pytorch实现,嵌入维度64,优化器采用Adam,批量大小为1024,采用网格搜索以确认每种方法更具体的最佳设置。使用KGIN-3来表示具有三个关系路径聚合层的推荐模型,以此类推。将用户意图数|P|固定为4,并将关系路径聚合层数L固定为3。此外,在后文中,分别通过改变{1、2、4、8}中的K和{1、2、3}中的L来研究它们的影响。

 实验结果如图表2,将KGIN的效果归结为下列原因:(1)通过揭示用户的意图,KGIN能够更好地描述用户和项目之间的关系,并导致用户和项目的更强大的表示。相比之下,所有基线都忽略了隐藏的用户意图,并将用户项边缘建模为齐次通道来收集信息;(2)受益于本文提出的关系路径聚合方案,KGIN可以保留路径的整体语义,并比基于GNN的基线(即KGAT、CKAN、KGNN-LS)相比,可以从KG收集更多的信息信号;(3)在IG和KG上应用不同的聚合方案,使KGIN能够更好地将协作信号和项知识编码为用户和项表示。

KGAT、CKAN、KGNN-LS)在Amazon-Book和Last-FM中的性能优于CKE,这表明了建模远程连接的重要性。这些改进来自于使用节点的局部结构——更具体地说,是多跳邻域——来改进表示学习。然而,在阿里巴巴-时尚中,CKE的表现比他们好。一些可能的原因是:(1)这些基于GNN的方法涉及额外的非线性特征转换,这是相当繁重的训练,从而降低性能[(2)CKE中的TransR成功地捕获了阿里巴巴-iFashon中的主要一阶连通性。(是不是可以将连通性考虑在内)

KGAT、KGNN-LS和CKAN的结果在同一水平上,比R-GCN更好。虽然在R-GCN中通过KG关系转换邻居信息的效用比在其他信息中作为衰变因子更好,但R-GCN最初不是为推荐而设计的,因此无法正确地建模用户项关系。

4.4 可解释性讨论

文中举了一个例子。

KGIN首先通过KG关系的各种组合引入了意图——所有用户的通用性。对于一个意图,一个关系的权重反映了其影响用户行为的重要性。例如,在Amazon-Book中,第一意图p1的前两个关系是theater.play.genre和theater.plays.in-this-genre,而date-of-the-first-performance and fictional-universe为第二意图p3,它被分配了最高的分数。显然,学习的意图抽象了用户选择的共同原因。此外,由于独立性建模,意图倾向于有不同的边界,从而从不同和独立的角度描述用户行为。然而,右图中,p1和p3是高度相关的。这是有意义的,因为在Last-FM中只有9个关系。

可以发现,一些关系在多个意图中获得高权重,比如Last-FM中的版本。这表明,这种关系是与用户行为相关的常见因素。结合它与其他关系,如featured-artist,,KGIN引入了意图p1作为由特定艺术家创作的音乐的特殊版本。

KGIN为每个交互创建实例式解释—也就是用户的个性化。对于Amazon-Book中的交互u231-i21904,KGIN根据关注分数搜索最有影响力的意图p1(公式(8))。因此,它解释了用户u231选择音乐i21904的原因,是它符合她对特色艺术家和某些版本的兴趣。

 5 相关工作

现有的与KG合并的推荐模型大致分为四组。

基于嵌入的方法:主要关注一阶连通性(即交互数据中的用户项对、KG中的三元组),使用KG嵌入技术(如Transe和TransH[)来学习实体嵌入,然后使用它们作为项的先前或上下文信息来指导推荐模型。例如,CKE对KG三元组应用TransE,并将项的知识感知嵌入输入矩阵分解(MF)。KTUP在用户项交互和KG三元组同时是同TransH,学习用户偏好并完成知识图谱建立。虽然这些方法展示了知识感知嵌入的好处,但它们忽略了高阶连接性。这使得它们无法捕获两个节点之间路径的远程语义或顺序依赖关系,从而限制了它们发现底层用户-项关系的能力。

基于路径的方法通过提取通过KG实体连接目标用户和项目节点的路径来构建远程连接。然后使用这些路径来预测用户偏好,例如通过递归神经网络和记忆网络。例如,RippleNet记忆项目表示以及基于每个用户的路径,并使用它们来增强用户表示。显然,推荐的准确性在很大程度上依赖于路径的质量。然而,两种主流的路径提取方法存在一些固有的局限性:(1)当涉及到大尺度图时,应用暴力搜索很容易导致劳动密集型和耗时的特征工程;(2)在使用元路径模式过滤路径实例时,需要领域专家预先定义领域特定模式,从而导致不同领域的可转移性差。

基于策略的方法从最近强化学习(RL)的成功中获得灵感,并设计RL代理来学习路径查找策略。例如,PGPR利用策略网络来探索目标用户感兴趣的项目。这些基于RL的策略网络可以被视为暴力搜索的有效和廉价的替代品,暴力搜索是会话推荐系统的主干模型[10,21]。然而,稀疏的奖励信号、巨大的动作空间和基于策略层次的优化使这些网络难以训练并收敛到一个稳定和令人满意的解决方案。

基于GNN的方法是基于图神经网络(GNNs)的信息聚合机制。通常,它包含了来自单跳节点的信息来更新自我节点的表示;当递归地执行这种传播时,来自多跳节点的信息可以被编码在表示中。因此,这些方法能够建模远程连通性。例如,KGAT将用户-项交互和KG结合为一个异构图形,然后在其上应用聚合机制。CKAN使用两种不同的策略来分别传播协作信号和知识感知信号。最近,NIRec被提出结合基于路径和GNN的模型,它通过元路径引导的邻域传播两个节点之间的交互模式。

然而,据作者所知,目前基于GNN的方法假设用户和项目之间只存在一种关系,但隐藏的意图有待探索。此外,其中大多数都未能保持路径中的关系依赖关系。作者的工作与它们在这些关系建模中的不同——专注于以意图的粒度展示用户-项关系,并将关系路径编码成表示,以实现更好的性能和可解释性。

6 总结与展望

在这项工作中,作者专注于知识感知推荐的关系建模,特别是在基于GNN的方法中。我们提出了一个新的框架,KGIN,它从二维更好的关系建模:(1)揭示意图粒度的用户项关系,与KG关系耦合,以展示可解释语义;(2)关系路径感知聚合,它集成了多跳路径的关系信息来细化表示。我们进一步对KGIN w.r.t进行了深入的分析。推荐的有效性和可解释性。目前的工作通常将基于kg的推荐框架为一个监督任务,其中监督信号只来自历史上的相互作用。这种监督太稀疏,无法提供高质量的表示。在未来的工作中,我们将探索推荐中的自我监督学习,以便通过自我监督任务生成辅助监督,并揭示数据实例之间的内部关系。此外,我们想将因果概念,如因果效应推理、反事实推理和反建立,引入到知识意识的建议中,以发现和放大偏差。

个人的总结

该方法结合基于嵌入和基于路径两种方法,使用意图图上的聚合结果丰富用户的表示,使用知识图谱上的聚合丰富项目的表示。

在意图图从层聚合部分,分为两部分,首先用知识图谱中的关系采用注意力机制加权表示意图,然后采用独立性约束,使意图之间相互独立。获取用户的历史集,采集历史集的意图感知信息。采用公式7进行意图图上的聚合。

在知识图谱上聚合部分,首先采用公式10整合来自与项目连接的实体的关系感知信息来生成项i的表示。

堆叠多层,将各个层的结果相加得到用户和项目的最终表示。最后进行预测。

模型优化采用bpr损失,独立性约束和正则化。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值