首页
学习
活动
专区
工具
TVP
发布

性能超越最新序列推荐模型,华为诺亚方舟提出记忆增强的图神经网络

作者 | Chen Ma, Liheng Ma等

译者 | Rachel

出品 | AI科技大本营(ID:rgznai100)

用户-商品交互的时间顺序可以揭示出推荐系统中用户行为随时间演进的序列性特征。用户与之交互的商品可能受到用户曾经接触的商品的影响。但是,用户和商品数量的大量增加,使得序列推荐系统仍然面临很多重要问题:(1)对短时用户兴趣建模的困难;(2)捕捉用户长期兴趣的困难;(3)对商品共现模式的建模效率较低。为了应对这些挑战,本文提出了一个记忆增强的图神经网络(memory augmented graph neural network, MA-GNN),以捕捉用户的长期和短期兴趣。

特别地,本文使用图神经网络对短期的商品语境信息建模,并使用共享的记忆网络来捕捉商品之间的长期依赖。另外,本文使用双线性函数以捕捉相关商品的共现模式。在模型评估上,本文在五个真实场景的数据集上进行了评测,并使用一系列评估指标和多个当前效果最优的模型进行了对比。试验结果显示,本文模型在Top-K序列推荐中效果极佳。

介绍

随着网络服务和移动设备的快速增加,个性化推荐系统在现代社会中正扮演着越来越重要的角色。个性化推荐系统能够降低信息负载、满足多种服务需求,并至少在以下两方面起到极大助力:(i)帮助用户发现上百万候选产品中的合适商品;(ii)为产品提供商创造增长营业额的机会。

在网络中,用户以线性顺序访问商品。用户在未来查看的商品可能收到历史浏览记录的影响,这创造了一个具有操作性的应用场景——序列推荐。在序列推荐任务中,除了和通用推荐系统一样需要捕捉用户的整体兴趣之外,我们认为还有另外三个重要因素需要考虑:用户短期兴趣,用户长期兴趣,商品共现模式。用户短期兴趣描述了用户在短期内访问商品的偏好。用户长期兴趣捕捉用户之前访问的和未来将访问的商品之间的长期以来。商品共现模式则对相关商品的共现规律进行阐释。

尽管目前已有很多序列推荐模型,但我们认为已有模型尚不能完整捕捉前文提到的三个因素。首先,Caser, MARank, Fossil等人仅对用户短期兴趣进行了建模,忽略了商品的长期依赖关系。第二, SARSRec等类似模型没有对用户短期兴趣进行有效的建模,使得模型难以理解用户在短期内的兴趣变化。第三,GC-SAN,GRU4Rec++等类似模型未能明确捕捉商品序列中的商品共现规律。由于相关商品经常共同出现,推荐模型应当对此因素加以考量。

为将上述三个因素加入序列推荐模型,本文提出了一个记忆增强的图神经网络(MA-GNN)。该模型包括一个整体兴趣模块,一个短期兴趣模块,一个长期兴趣模块,以及一个商品共现模块。在整体兴趣模块中,我们使用矩阵分解对用户整体兴趣建模,该模块不包含商品对序列变化信息。在短时兴趣模块中,我们使用一个GNN结构加入商品的邻接关系信息,以构成用户的短期兴趣。

这一结构能够捕捉较短时期的情境信息和结构。为了对用户的长期兴趣建模,我用使用一个键值记忆网络(key-value memory network)以基于用户的长期商品序列形成对用户兴趣的表征。通过该方法,在推荐一个商品时,其他具有相似偏好的用户也会成为影响因素。为了综合用户的长期和短期兴趣,我们在GNN框架中引入了门机制,和LSTM网络中的门机制类似。这一机制对长时和短时兴趣在模型中的贡献度进行控制。在商品共现模块中,我们使用了一个双线性函数以捕捉商品序列中高度相关的商品。我们在五个真实世界的数据集上对模型进行了评估,并使用一系列评估指标,和多个当前最先进的模型进行了对比。试验结果显示了本文模型相较于其他模型在推荐效果上的提升,并展示了上述模块的有效性。

总体而言,本文的主要共现为:

为了对用户短期和长期兴趣建模,提出一个记忆增强的图神经网络,以捕捉短期情境信息和长期依赖;

为了高校融合短期和长期兴趣信息,提出了GNN框架中的门机制;

为对商品共现模式进行建模,使用双线性函数来捕捉商品之间的特征关联;

在五个真实世界数据集上进行评估试验,结果显示MA-GNN的效果显著由于已有的序列推荐模型。

相关工作

整体推荐

早期的推荐模型主要研究显性反馈,近期研究则逐渐转向隐性数据。使用隐性反馈的协同过滤(collaborative filtering, CF)往往被认为是一个Top-K推荐认为,该任务的目标即为用户推荐一个可能感兴趣的商品列表。这一任务更具有实际性和挑战性,且更适合真实世界的推荐场景。早期的相关工作主要使用矩阵分解技术学习用户和商品的隐性特征,基于神经网络的方法也经常被采用。

序列推荐

序列推荐模型将商品序列作为输入信息。一个经典方法是使用马尔可夫链对数据建模。FPMC, TransREC都属于此类方法。近期,受自然语言处理中序列学习的启发,学者们提出了基于(深度)神经网络的方法,包括基于卷积神经网络(CNN)、基于循环神经网络(RNN)等。注意力机制、记忆网络也在序列推荐模型中得到应用。

本文和已有模型的不同之处在于,模型使用记忆增强的图神经网络以捕捉长期和短期兴趣。另外,本文加入了一个商品共现模块,以对高度相关的商品建模。

问题定义

本文考量的推荐任务将序列的隐性反馈作为训练数据。用户兴趣通过一个用户-商品的线性序列进行表征,公式如下:

M个用户的用户偏好即:

对于M个用户,问题即可定义为从N个商品中为每个用户推荐一个长度为K的商品列表,并评估下述偏好中的商品是否出现在推荐列表中:

方法

本部分对MA-GNN模型进行了介绍,该部分介绍了四个对用户偏好和意图进行学习有所影响对因素,以及该模型了预测和训练步骤。

图1:MA-GNN模型结构

整体兴趣建模

模型假定用户的整体兴趣相对于时间保持稳定。模型使用矩阵分解以捕捉整体兴趣,且不考虑商品的序列动态变化。使用Pu代表用户u的嵌入表示,Qj表示商品j的输出嵌入,d表示隐空间的维度,矩阵分解公式如下:

短时兴趣建模

用户短期兴趣基于用户近期浏览的多个商品。我们使用滑动窗口策略,将商品序列分割为细粒度子序列。之后,我们使用近期子序列预测下一个浏览的商品,并忽略影响较小的无关商品。对于每一个用户u,抽取每 |L| 个连续商品作为输入,之后的 |T| 个商品为预测目标,则用户u的长度为l的子序列即:

则问题可定义为,在用户-商品互动序列             中,给定一个具有 |L| 个连续商品的序列,有多大可能为该用户推荐 |T| 序列商品。由于GNN能够聚合邻接信息并学习本地结构,该模型较适用于学习用户短期兴趣。

商品图构建

由于商品序列不天然适用于GNN,需要构建图结构以捕捉商品之间的关系。对序列中的每个商品,抽取多个商品子序列(本文选取子序列长度为3),并在其之间添加边。我们对每一用户记性呢此操作,并计算所有用户被抽取商品对的边数量。之后,我们对邻接矩阵进行列归一,即可得到序列中关系更近的商品。图2展示了抽取商品邻接对并构建邻接矩阵的方法。

图2:商品邻接矩阵构建示例

短时兴趣聚合

为捕捉用户短期兴趣,我们使用一个两层GNN以聚合邻接商品,并学习用户短期兴趣表征。对于在长度为l的窗口中的商品j,其输入嵌入为ej,用户短期兴趣可表示如下:

基于用户短期兴趣信息,即可预测用户将浏览的下一个商品。

但是,近使用上一公式预测,未能考虑到用户过去的长期兴趣:

而对于序列推荐模型而言,如何对长期商品依赖关系建模,并平衡长期和短期信息的关系,是非常重要的问题。

长时兴趣建模

我们可以使用外部记忆单元存储随时间变化的用户兴趣。这一方法的问题在于,维护每一用户的记忆单元会占据大量的存储空间。另外,记忆单元可能捕捉和用户嵌入非常相似的信息。因此,本文使用记忆网络存储所有用户共享的隐兴趣表征,其中每一记忆单元表示一个特定类型的隐用户兴趣。对于一个用户在过去浏览的商品Hu,l,可以学习到一个多类型兴趣的组合,以反映用户在Lu,l之前的长期兴趣。

本文使用了多维度注意力模型以生成查询的嵌入表示。Hu,l中的商品嵌入表示为:

则生成查询嵌入Zu,l的多维度注意力计算公式如下:

对于查询嵌入Zu,l,我们使用下述查询在记忆网络中寻找合适的共享用户隐兴趣的组合。一般地,记忆网络中的键和值分别表示为K和V,则用户长期兴趣嵌入可表示为:

兴趣聚合

下一步即在GNN框架中对用户的长期和短期兴趣进行组合,以生成用户兴趣预测。我们借鉴LSTM中的门机制平衡两类信息,公式如下:

商品共现建模

对于推荐系统而言,学习商品间关系是最关键的步骤之一。在序列推荐问题中,关系紧密的商品会在商品序列中接连出现。为捕捉商品共现规律,我们使用双线性函数以显性表示Lu,l序列中的商品,函数如下:

预测和训练

为了推测用户偏好,我们使用了一个预测层以结合前述所有因素:

由于训练数据从用户隐性反馈中产生,我们通过梯度下降,使用贝叶斯个性化排序算法对模型进行优化,该优化同时对积极(可观测)和消息(不可观测)的商品的对偶排序进行优化:

评估

本部分介绍了评估实验的设置和结果。

数据集

我们在五个真实世界数据集上对模型的效果进行了评估:MovieLens-20M,Amazon-BooksandAmazon-CDs,Goodreads-ChildrenandGoodreads-Comics。我们保留评分不低于4星的商品作为积极输入,其他作为缺失输入。为过滤噪音信息,仅保留评分多于10个的用户和商品。预处理后数据集情况表1。

表1:数据集统计数据

评估指标

我们使用Recall@K和NDCG@K对所有模型进行了评估。

用于比较的推荐方法

我们比较了下述所有模型的表现:(1)BPRMF; (2) GRU4Rec; (3)GRU4Rec+; (4)GC-SAN; (5)Caser; (6)SASRec; (7)MARank; (8)MA-GNN。

实验设置

试验中,所有模型的隐维度均设定为50。对基于短序列的(session-based)方法,设定一个短时窗口中的商品作为一个序列。模型超参数依据验证集基于原论文设置进行微调。对于MA-GNN,设置 |L| = 5, |T| = 3。

性能比较

表2:所有方法的性能比较。其中,标下划线的是同任务中表现最佳的模型。 

消融实验

表3:消融分析。S 代表短期兴趣模块,H 代表长期兴趣模块,concat代表串接操作。

超参数的影响

多维度注意力模型的维度h和记忆单元数量m是本文模型中两个最重要的超参数。其对模型的影响见图3。

   图3:h和m的变化

记忆可视化

为验证每一记忆单元是否可以表示一个特定类型的用户兴趣,我们在MovieLens数据集上进行了一个案例研究。记忆网络的注意力可视化情况如图4。

图4:记忆网络注意力可视化

结论

本文对于序列推荐任务,提出了记忆增强的图神经网络(MA-GNN)。该模型使用GNN对商品对短期情境信息建模,并使用记忆网络捕捉长期商品依赖关系。除用户兴趣建模之外,我们还使用双显性函数对商品对特征关联进行了建模。在五个真实世界数据集上的实验结果显示,MA-GNN的性能超越了已有的许多最新的序列推荐模型。

论文链接:

https://arxiv.org/pdf/1912.11730

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200608A0NEAG00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券