Advertisement

Sequential Recommendation with Graph Neural Networks sigir 21

阅读量:

摘要

顺序推荐旨在利用用户的历史行为来预测他们的下一次交互。现有的工作还没有解决序列推荐中的两个主要挑战。首先,用户在其丰富的历史序列中的行为往往是隐含的、噪声的偏好信号,不能充分反映用户的实际偏好。此外,用户的动态偏好通常会随着时间的推移而快速变化,因此很难捕捉其历史序列中的用户模式。在这项工作中,我们提出了一个称为Surge的图神经网络模型来解决这两个问题。具体地说,Surge通过基于度量学习将松散的项目序列重构为紧凑的项目-项目兴趣图,将长期用户行为中的不同类型的偏好整合到图中的簇中。通过在兴趣图中形成密集的簇,这有助于明确区分用户的核心兴趣。然后,我们在构造的图上进行簇感知和查询感知的图的卷积传播和图的池化。它从噪声的用户行为序列中动态融合和提取用户当前激活的核心兴趣。我们在公共和专有工业数据集上进行了广泛的实验。实验结果表明,与最先进的方法相比,我们提出的方法具有显著的性能提升。对序列长度的进一步研究证实,该方法能够有效、高效地对长行为序列进行建模。

1引言

顺序推荐试图通过利用用户的历史行为序列来预测用户的下一步行为,这在现代在线信息系统(如新闻、视频、广告等)中已被广泛采用。与传统的静态建模用户偏好的推荐任务不同,顺序推荐能够捕获用户的进化和动态偏好。例如,用户可能更喜欢只在世界杯期间观看足球新闻,这可以被视为一种短期偏好。

已有的研究从三个角度认识到对快速变化的短期偏好进行建模的重要性。具体地说,早期的努力[23,46]采用人类设计的规则或注意力机制来为历史上相互作用的项目分配随时间衰减的权重。第二类工作[10,45]利用递归神经网络来总结行为序列,但由于难以对长期依赖关系进行建模,它们在捕捉用户动态兴趣方面存在短期瓶颈。最近的解决方案[39]联合建模长期和短期利益,以避免忘记长期利益,但长期/短期利益的划分和整合仍然具有挑战性。简而言之,上述工作通常更多地集中在近期的用户行为上,而不能充分挖掘较旧的行为序列来准确地估计他们当前的兴趣。因此,在顺序推荐中有两个主要挑战,到目前为止还没有得到很好的解决,如下所示。

长序列中的用户行为反映了隐含的和嘈杂的偏好信号 ,用户可能会与许多具有隐含反馈的项目进行交互,例如点击和观看。与可以推断用户偏好(如喜欢和收藏)的显式反馈不同,单个隐式反馈不能反映用户偏好。用户可以在大多数时间点击不是他们感兴趣的项目,并且之后不会选择类似的项目用于交互。然而,这些记录将成为用户行为历史中的噪音,恶化了对他们真正兴趣的建模。

由于用户偏好的多样性,用户偏好总是随着时间的推移而变化,正如我们已经提到的,用户偏好是在变化的,无论是慢还是快。在给定的时间点,某些首选项可能仍处于激活状态,而另一些则可能已停用。因此,即使我们已经从隐含的和噪声的行为中提取了用户偏好,但仍然很难建模它们在历史上是如何变化的,并估计当前时刻激活的偏好,这是推荐模型的核心。

为了解决这两个问题,我们提出了一种基于图的卷积网络提取隐含偏好信号的方法。然后使用动态图池来捕获偏好的动态。具体地说,我们首先将松散项序列转换为紧项-项图,并设计了一个关注图卷积网络,将弱信号收集成能准确反映用户偏好的强信号。然后,我们提出了一种动态图池技术,该技术自适应地保留激活的核心偏好,用于预测用户的下一步行为。

综上所述,本文的主要贡献如下:

  • 通过考虑隐含信号行为和快速变化的偏好,我们从一个新的角度对序贯推荐进行了研究。
  • 我们提出通过在构建的项-项兴趣图上设计基于图神经网络的模型,将用户行为中的隐含信号聚合为显性信号。然后,我们设计了动态池来过滤和保留激活的核心偏好以供推荐。

2 PROBLEM FORMULATION

在这里插入图片描述

3 模型

在这里插入图片描述

图1说明了我们提出的SURGE模型,该模型由以下四个部分组成,我们将逐一详细说明。

  • 兴趣图的构建 :通过基于度量学习将松散的项目序列重构为紧密的项目-项目兴趣图,明确整合和区分长期用户行为中不同类型的偏好。
  • 兴趣融合图卷积层 :在构建的兴趣图上进行图形卷积传播,动态融合用户兴趣,强化重要行为,弱化噪声行为。
  • 兴趣提取图池层 考虑用户在不同时刻的不同偏好,进行动态图池化操作,自适应地保留动态激活的核心偏好。
  • 预测层 :在将汇集的图形展平成简化的序列后,我们对增强的兴趣信号的演变进行建模,并预测用户有较高概率与之交互的下一项。

3.1 兴趣图的构建

为了在用户丰富的历史行为中整合和区分不同类型的偏好,我们可以将松散的项目序列转换为紧凑的项目-项目兴趣图。两个项目之间的共现关系是一个合理的构建标准,但挑战在于,共现关系的稀疏性不足以为每个用户生成一个连通图。在这一部分中,我们提出了一种基于度量学习的新方法,为每个交互序列自动构建图结构,以探索其兴趣分布。

3.1.1原始图形构造
在这里插入图片描述

通过将每个用户的交互历史表示为图形,更容易区分他/她的核心兴趣和外围兴趣。由于连接了更多的相似兴趣,核心兴趣节点比外围兴趣节点具有更高的度,并且相似兴趣的频率越高,子图就越密集、越大。这样就构建了一个先验框架,即邻居节点相似,密度子图是用户的核心兴趣。

3.1.2节点相似性度量学习。

由于我们需要邻居节点相似的先验图,因此可以将图学习问题转化为节点相似性度量学习,并与下游推荐任务联合训练。这种图构造方法是通用的,易于实现,并且能够完美地应对归纳学习(在测试过程中有新的项目)。度量学习可以分为基于核的方法和基于注意力的方法[48]。基于核的方法的常见选项包括余弦距离[30,41]、欧几里德距离[38,43]和马氏距离[18,34]。一个好的相似性度量函数应该是可学习的,以提高表达能力并具有可接受的复杂性。为了平衡表达性和复杂性,我们采用加权余弦相似度[5,42]作为度量函数,公式如下:
在这里插入图片描述
在这里插入图片描述

具体来说,我们使用a(头数)权重向量来计算使用上述相似性度量函数的独立相似性矩阵(每个表示一个视角),并将其平均值作为最终相似性:
在这里插入图片描述
使用K个权重向量来计算两个项目间相似度(K个角度),最后求平均。

3.1.3 Graph sparsification via 𝜀-sparseness

通常,邻接矩阵元素应该是非负的,但是根据度量计算出的余弦值M_{ij}的范围在[−1,1]之间。简单地对其进行归一化不会对图的稀疏性施加任何约束,并且可以产生完全连通的邻接矩阵。这在计算上是昂贵的,并且可能引入噪声(即,不重要的边),并且它还不够稀疏,以至于后续的图卷积不能集中在图的最相关的方面。
因此,我们只考虑连接最重要的节点对,从M中提取对称稀疏非负邻接矩阵A。为了使抽取阈值的超参数不敏感,又不破坏图的稀疏性分布,我们采用了对整个图进行相对排序的策略。具体地说,我们屏蔽M中那些小于非负阈值的元素(即,设置为零),非负阈值是通过对M中的度量值进行排序而获得的。
在这里插入图片描述
它不同于整个图的绝对阈值策略[5]和节点邻域的相对排序策略[4,19]。前者设置一个绝对阈值来删除邻接矩阵中较小的元素。当超参数设置不当时,随着嵌入的不断更新,度量值分布也会发生变化,可能无法生成图形或生成完整的图形。后者返回邻接矩阵中每行固定数量的最大值的索引,这将使生成的图的每个节点具有相同的度。强制均匀稀疏分布会使下游GCN不能充分利用图的密集或稀疏结构信息。

我的理解是整个相似矩阵的前 (𝜀*n^2 )最大的值,其他的之为0

3.2兴趣融合图卷积层

如上所述,我们有可学习的兴趣图,将不同的兴趣分开。核心兴趣和外围兴趣分别形成大集群和小集群,不同类型的利益形成不同的集群。此外,为了将弱信号收集成能够准确反映用户偏好的强信号,我们需要在构建的图中聚合信息。

3.2.1基于图注意卷积的兴趣融合

我们提出了一个基于聚类和查询的图关注卷积层,在信息聚合过程中能够感知用户的核心兴趣(即位于聚类中心的项)和与查询兴趣相关的兴趣(即当前目标项)。
在这里插入图片描述
计算对齐分数 𝐸𝑖𝑗 以映射目标节点 𝑣𝑖 对其邻居节点 𝑣𝑗 的重要性。 一旦获得,归一化的注意力系数被用于执行对应于它们的嵌入的加权组合,在应用残差连接和非线性函数𝜎后作为每个节点的细化输出嵌入:
在这里插入图片描述
注意聚合函数可以是Mean、Sum、Max、GRU等函数,这里我们使用简单的sum函数,其他函数留待以后探索。 为了稳定注意力机制的学习过程,我们采用了类似于 [25, 26] 的多头注意力。 准确地说,𝜙 独立的注意力机制执行上述转换,然后将它们的嵌入连接为以下输出表示:
在这里插入图片描述
在这里插入图片描述

3.2.2 感知集群和查询的注意力

为了在整合兴趣时增强重要信号和减弱噪声信号,我们提出了一种聚类和查询感知的注意力机制。在消息传递过程中,我们使用关注系数对边缘信息重新分配权重。注意机制考虑以下两个方面。

为了识别目标节点是否是聚类的中心,使用目标节点嵌入及其聚类嵌入来计算以下关注分数,就是目标节点在这个集群中占的比重。(减弱噪声信号)
在这里插入图片描述

其次,为了服务于下游动态池方法,学习用户兴趣对于不同目标兴趣的独立演化,还考虑了源节点embeddingf ℎi 和目标项目embedding hj 之间的相关性。如果源节点与查询项的相关性更高,那么它在向目标节点的聚合中的权重将更大,反之亦然。由于最终的预测只有相关的行为才能发挥作用,所以我们只保留相关的信息,不相关的信息在聚合时会被丢弃。(增强重要信号)
在这里插入图片描述

我们遵循附加注意机制 [1] 同时考虑聚类和查询的因素。 我们将目标节点的集群分数和源节点的查询分数相加,作为源节点𝑗对目标节点𝑖的更新权重。 为了使不同节点之间的系数易于比较,我们使用 softmax 函数将它们在所有 𝑗 选择中归一化。 注意力系数𝐸𝑖𝑗计算如下:
在这里插入图片描述
其中节点𝑖的邻域N𝑖包括节点𝑖本身。 在包含自循环传播的上下文中(当𝑗等于𝑖时),𝛼𝑖控制目标节点可以接收多少信息,而𝛽𝑗控制源节点可以发送多少信息。

3.3 Interest-extraction Graph Pooling Layer

隐式兴趣信号到显式兴趣信号的融合通过对兴趣图执行信息聚合来完成。在本节中,我们使用图池方法[17,22,37]来进一步提取融合信息。类似于CNN Pooling中特征图的下采样,图池旨在合理缩小图的尺寸。通过对构建的图结构进行粗化,将松散的兴趣转化为紧密的兴趣,并保持其分布。

3 . 3 . 1通过图形池提取兴趣
在这里插入图片描述

上面的等式根据聚类分配矩阵S聚集节点嵌入和得分,从而为m个据类中每一个生成新的嵌入和得分。

接下来,我们讨论对于节点如何学习软聚类分配矩阵S。我们使用GNN体系结构[37]来生成分配矩阵。基于邻接矩阵和节点嵌入,通过标准消息传递和softmax函数得到分配映射的概率矩阵。
在这里插入图片描述
然后,重复上述等式可以执行多层汇集,以实现感兴趣的分层压缩。

3.3.2分配正规化

在这里插入图片描述
产生的问题。1.分配矩阵难训练,pooling后缺少时间信息。

  • 相同的映射正则化 。为了使连接强度更大的两个节点更容易映射到同一个簇,第一个正则化如下使用,
    在这里插入图片描述

  • 单一隶属关系正规化 。 为了清楚地定义每个聚类的隶属关系,我们通过如下正则化熵使每行S_{i}分配矩阵接近一个热点向量,
    在这里插入图片描述

  • 相对位置正则化

对于下游兴趣演化建模,需要保持用户兴趣在汇集前后的时间顺序。然而,交换集合簇嵌入矩阵索引的操作在这里插入图片描述
是不可微的。因此,我们设计了一个位置正则化,以确保池化期间簇之间的时间顺序,如下所示:
在这里插入图片描述
直观地说,对于原始序列中位置靠前的节点,其被分配到的簇的位置索引往往在前面。

3 . 3 . 3Graph readout.

在这一点上,我们得到了一个紧密粗化的图G*,代表用户更强的兴趣信号。与此同时,我们对原始图G执行加权读出,以约束每个节点的重要性,在传播层的正向计算之后,聚合所有节点嵌入,以生成图级表示h_{g}
在这里插入图片描述

其中权重是在池化之前汇集前每个节点的 打分 𝛾,读出函数可以是一个函数,如ean、Sum、Max等。我们在这里使用简单的和函数来确保排列不变,并为将来的探索留下其他函数。我们将这个图级别的表示馈送到最终的预测层,以便更好地提取池层中每个集群的信息。

3.4 Prediction Layer

3 . 4 . 1兴趣进化建模。

在外部环境和内部认知的共同影响下,用户的核心兴趣不断进化。用户可能一段时间对各种运动感兴趣,另一段时间需要书籍。然而,仅使用上述读出操作并没有考虑核心利益之间的演变,这无疑会造成时间顺序的偏差。为了给兴趣的最终表示提供更多的相对历史信息,还需要考虑兴趣之间的时间关系。
受益于相对位置正则化,合并聚类嵌入矩阵保持了用户兴趣的时间顺序,这相当于将合并图展平为具有增强兴趣信号的简化序列。直观地说,我们可以使用任何已知的顺序推荐方法来对集中兴趣序列进行建模。为了简单起见,并为了说明汇集方法的有效性,我们使用单个顺序模型来模拟兴趣的演变:
在这里插入图片描述

众所周知,GRU 克服了 RNN 的梯度消失问题,并且比 LSTM [11] 更快。 此外,为了更好地利用兴趣提取层中融合兴趣的重要性权重 \gamma_i^*,我们采用具有注意力更新门(AUGRU)[45] 的 GRU 将注意力机制和 GRU 无缝结合。 AUGRU 使用注意力分数 \gamma_i^* 来缩放更新门的所有维度,这导致相关性较低的兴趣对隐藏状态的影响较小。 更有效地避免兴趣漂移的干扰,推动相对兴趣平稳演化.

3.4.2Prediction.

我们将兴趣提取层和兴趣进化层的进化输出的图级表示作为用户当前的兴趣,并将它们与目标项目嵌入连接起来。给定连接的密集表示向量,完全连接的层用于自动学习嵌入的组合。我们使用两层前馈神经网络作为预测函数来估计用户在下一时刻与物品交互的概率,实验部分所有比较的模型都会分享这种流行的设计[39,45,46],
在这里插入图片描述

遵循现实世界行业中的 CTR(点击率)预测 [45, 46],我们使用负对数似然函数作为损失函数,并与所有比较模型共享此设置。 优化过程是最小化损失函数以及 𝐿2 正则化项以防止过拟合,
在这里插入图片描述
在这里插入图片描述

4实验

在这一部分中,我们在两个真实世界的数据集上进行实验,用于顺序推荐,以评估我们提出的方法,目的是回答以下三个问题。
RQ1:与最先进的顺序推荐相比,建议的方法表现如何?
RQ2:提议的方法能够有效和高效地处理不同长度的序列吗?
RQ3:方法中不同成分的效果如何?

全部评论 (0)

还没有任何评论哟~