916c9915d9efe386a40ca9cd54c89a01.gif

©PaperWeekly 原创 · 作者 | 杨雨豪

单位 | 香港大学

研究方向 | 推荐系统

81ce133521aee58ce34eb087bbe18d73.png

论文题目:

Multi-Behavior Hypergraph-Enhanced Transformer for Sequential Recommendation

收录会议:

KDD 2022

论文链接:

https://arxiv.org/pdf/2207.05584.pdf

代码链接:

https://github.com/yuh-yang/MBHT-KDD22

港大数据智能实验室(指导老师:黄超)

https://sites.google.com/view/chaoh

ac743a5d817d5e0af0f99e79b453f7ba.png

研究背景

旨在学习动态用户偏好的序列推荐(Sequential Recommendation)任务已经成为许多在线平台(如视频分享网站、电子商务系统)的一个重要的组成部分。已有的工作在建模用户序列中的动态兴趣方面已经做了很多成功。这些模型基于各种架构,例如,循环神经网络(GRU4Rec)和自注意力机制(SASRec)。在这一任务最新的进展中,图神经网络(GNN)也被越来越多研究者作为骨干模型。


尽管这些方法都在 benchmark 中报告了阶段性的 SOTA 表现,然而现有的方法都集中在单一类型的互动的商品序列表示上,因此对于捕捉用户和商品之间在序列上表现出的动态异质关系结构(例如,点击、页面浏览、收藏、购买)是有限的。在实际的在线平台上,用户行为往往同时表现出时间依赖性和交互类型的异质性,涉及不同类型的用户-商品互动。

fe8162ab5c867f5192c1e9a2e2c3798d.png

上图(a)中展示了一个 Tmall 数据集的例子,这一用户在时间序列上以不同的方式交互了不同的商品。我们还在(b)中可视化了 SOTA 模型 BERT4Rec 和我们提出的 MBHT 模型所学到的权重分别在同一商品的短期的多行为依赖性(在相邻的交互 [4], [5], [6] 之间)和长期的多行为依赖关系(在 [2], [13], [15] 之间)的表现。

在这个场景中,我们更希望模型关注到用户在序列上对于同一商品的不同交互行为。容易发现,相比于捕捉短期多行为语义依赖的容易,BERT4Rec 很难注意到跨度较长的有效语义依赖。而我们提出的 MBHT 模型则更好地建模了这一重要的语义关系。

总的来说,通过对动态序列中的异质用户-商品互动的探索,有效地增强用户偏好学习,是在多行为序列推荐任务下做出准确的排序的关键。然而,我们的挑战存在于:

1. 动态的、行为感知的商品转移关系。对于不同类别的物品(如日常用品、季节性服装),存在不同的周期性行为模式(如每天、每周、每月)。因此,有必要显式地捕捉行为感知的商品转移关系在不同时间粒度上反映的用户兴趣。

2. 用户个性化的全局多行为交互。不同类型的行为之间的隐性依赖关系因用户而异。例如,对于感兴趣的商品,一些用户希望将商品加到收藏夹中,而另一些人只会将那些非常可能购买的商品加入收藏。此外,多行为项目的依赖性超出了 pairwise 的关系,可能会表现出三阶或四阶的高阶关系。因此,所设计的模型需要对不同用户的多行为依赖关系进行有针对性的建模,并采用动态多阶关系学习范式。

因此,为了应对这一挑战,我们设计了一个多行为超图增强的 Transformer 框架(MBHT),以在交互序列中捕捉短期和长期的跨行为依赖。基于不同范式的低秩注意力,我们设计了一个多尺度的 Transformer 以联合编码来自细粒度和粗粒度的行为感知的序列用户兴趣。

此外,我们将全局的多行为依赖性建模纳入到超图神经网络中,以个性化的方式捕捉不同用户的长程行为关联。实验结果表明,我们的 MBHT 在不同的环境中比各种先进的推荐解决方案更有优势。

960ea250f70bd45e9e13682cfa43ed29.png

模型介绍

2.1 多力度行为感知序列建模

我们在这一部分介绍 MBHT 如何捕捉用户多行为交互分布的多尺度性质。首先,为了使得序列编码器能够建模多行为的特性,我们在商品 item embedding 的基础上加入了行为类别 embedding:

f97c6cbb6b42ce7ef1a0f2cfaea93d1c.png

其中 表示序列的位置编码, 是此次交互的行为类型编码。

f2b91a01ddd5d4075c99542f6f248d4a.png

在实际的推荐场景中,用户与商品的交互偏好可能会随着时间的推移呈现出多尺度的模式。这一特性不仅反映在周期性的交互模式中(如,季节性时装),更由不同用户的个性化多行为交互模式所表现(如,一些用户在收藏某件商品后会很快购买,而另一些用户则会在更多的交互后决定)。因此,我们设计了一个基于 Transformer 架构的多尺度序列兴趣编码器。

首先,受到 [1] 的启发,我们设计了一个基于低秩投影的自注意力机制,以近似线性的复杂度来逼近原始的注意力运算。我们定义两个可学习的投影矩阵 ,以进行注意力矩阵的低秩变换。这里, 表示低秩尺度, 表示输入的交互序列在低秩的隐空间的长度。在低秩投影空间中的注意力操作可以表示为:

f79103040c9d3259b0a9edc06848c245.png

简单来说,相比于普通的自注意力在 的尺度上计算 item 的 pairwise 关系,我们在 中计算。这样做的好处是两方面的:1)降低了单注意力层的运算时间,使得我们能够后续叠加更加复杂的序列建模操作;2)将原始长度 J 的用户序列抽象为 J/C 的低秩序列,能够更好地在捕捉用户反映在交互序列上的兴趣中更为抽象、全局性的部分。

进一步地,我们在低秩注意力的基础上引入一个层次化的结构来捕捉不同时间粒度的用户行为动态多样性。我们提出一个时间粒度感知的聚合器来生成特定粒度的序列表示 ,它保留了短期行为中的用户兴趣。其中 被定义为子序列的长度。我们用如下的方式生成时间粒度感知的序列 embedding:

7b9b3fd130cf3f1b51db166184cf91d4.png

其中 表示为了捕捉短期兴趣所在连续的一段 item embedding 上作用的聚合器,在模型实现中,它被设定为 mean-pooling 函数。接下来,我们将时间粒度感知的序列表示送入一个自注意力层来进行编码:

00dff109f54a65359b78bc56bfc19c71.png

注意到该计算的形式与上面提到的低秩注意力操作相似,而不同的是 query 向量也进行了聚合操作,所以该注意力计算在 空间中进行,在很好地捕捉用户短期兴趣变化的同时,也节省了计算的时间复杂度。

在 MBHT 模型中,我们将超参数为 的低秩注意力和两个不同粒度 的时间粒度感知注意力机制进行堆叠,引入一个层级化的注意力操作,它可以表达为:

0c51ca80dacffbc5614e3a686f443126.png

其中

61869ed5c5a1f8da519400b5ae12849a.png

表示进行 的映射函数,是一个可学习的权重,它将层次化的序列表示还原到原始的序列长度空间中。注意到低秩注意力与时间粒度感知的注意力不仅仅能够从有用的视角更好地捕捉序列中的用户兴趣,由于它们各自的时间复杂度都低于 vanilla 注意力机制,这一层次化的计算并没有带来不可接受的额外时间开销。这一部分的模型框架如下图所示:

fbcc77dad481693f7f493294f574525f.png

2.2 基于超图的个性化全局多行为关联学习

对于用户个性化的、长程的多行为依赖,准确的建模有以下两个挑战:

• 多阶的多行为依赖性。当决定向用户推荐一个特定的商品时,探索用户和这个商品之间过去的多行为互动是很有用的。但这样的关系不再是简单的 user-item 一阶交互关系,而是引入了更加复杂的多行为信号。

• 个性化的交互模式。用户的多行为模式因人而异。在现实生活中,一些用户喜欢将许多商品添加到他们的最爱列表或购物车中,但以后只会购买其中的几件。相反,另一些用户只有在表现出强烈的购买意愿时才会将他们感兴趣的产品标记为收藏。因此,这种复杂的、个性化的多行为模式需要我们的模型来保留不同的跨类型行为依赖。

因此,我们选在超图结构上建立全局多行为依赖性编码。超图具有通过一条边连接任意个节点的灵活性,因此可以利用它结构来捕捉高阶的多行为依赖关系。此外,考虑到不同用户的行为意识交互序列,我们根据序列构建不同的超图结构,以个性化的方式编码不同用户的多行为依赖。

ad3b8e6d3ebe1b408543e79f42f03abe.png

多行为关联超边。根据训练集中已观测到的多行为交互记录,我们构建超图结构,将同一 item 的不同行为使用不同语义的超边连接:

0313f5ab28a80ead97114431e9367130.png

其中 表示用来连接 item 所属的多行为交互集 的超边。

商品语义关联超边。为了编码随着时间演变的商品语义和出于同一类用户兴趣的潜在长程商品依赖信息,我们引入了一个基于度量学习的商品语义编码器。我们设计了一个商品 pairwise 的可学习度量函数如下所示:

6010caa653f5736c4895bfc940d46ac6.png

其中商品 间的语义相似度由一个多头的可学习权重来表示, 被设置为余弦相似度计算, 是特定学习头的度量权重。通过对不同商品之间的语义依赖性进行编码,我们用超边同时连接多个高度依赖的商品来生成全局的语义依赖超图。具体地说,我们为序列中特定的 item_id 构建一组超边,这条超边连接着商品的 top-k 语义依赖商品,超边的权重被设定为它们之间语义依赖相似度的可求导值:

380c1f95c1f148740fcf3e29cc1e4c84.png

其中 表示商品 的 top-k 语义依赖商品集合。

综上,我们将得到的多行为依赖超图与商品语义依赖超图进行拼接,即 作为最终的超图矩阵。注意到,不同用户的行为模式导致了不同的子图,这允许了我们的 MBHT 模型以个性化的方式建模用户的多行为依赖。

之后,我们引入了一个通用的超图卷积模块来将 item embedding 按照超图矩阵进行编码。一个通用的超图卷积层一般包括两阶段的信息传递 [2],即在超图矩阵上的节点——超边和超边——节点的传播。这一过程可以形式化地写成:

301fd96c9fea42f06816b8ff22f84e9a.png

注意到这一两阶段的信息传播比起经典的 GNN 模型要花费额外的时间。为了加速模型的训练和推理,受到 [3] 的启发,我们利用前置知识来逼近这一两阶段的信息传递过程以降低时间复杂度。详细的做法可以参考原文的附录 A.3。

2.3 多视图学习信号融合与模型学习

我们进一步提出一个简单的多视图注意力机制来融合 Transformer 和超图模块学习到的丰富信息。这一过程可以形式化地表达为:

9ec237c52e22164d1f95ecd604165620.png

其中 和 分别是来自两个学习视图的商品 embedding 编码。

为了更好地利用丰富的序列信息,我们引入 Cloze task 作为训练目标来挖掘序列中的双向信号。在我们的多行为序列任务中,Cloze task 可以被描述为:对序列中的所有预测目标行为类型(如购买)进行 mask 操作。我们用 [mask] 标记取代被屏蔽的商品 id 以及相应的行为类型,并在超图构建时同样屏蔽标记为 [mask] 的商品。

对于 [mask] 商品的超图 embedding,我们引入一个窗口机制,将该商品在序列上的周围 位置内的商品 embedding 进行 mean pooling 后作为该商品的超图 embedding 编码。最后,我们基于常用的点积模型 来预测用户序列中的下一个购买商品。通过对 mask 位置的预测结果计算交叉熵,我们可以用以下的损失函数来优化模型参数:

7532b91239bd7059e2f948a66dfe58be.png

其中 是序列中 mask 位置的集合, 是对应于这些 mask 位置的真实商品 ID 标签。

457d53f484e473979e416f23e9cc84de.png

实验结果

在 MBHT paper 中,我们设置实验主要来回答以下几个研究问题:

• MBHT 对比多条 research line 的 SOTA 推荐算法能否取得更好的效果?

• MBHT 的关键组件是否能够通过消融实验的验证?

• MBHT 在对抗典型问题(如冷启动、模型收敛)时能否取得更好的效果?

• 不同超参数对 MBHT 模型的影响?(原文附录A.4)

实验所用的三个公开数据集的详细统计如下:

97e2c228d1f66865e84b4bdd622a69e8.png

可以发现,用来模型评估的数据集在交互量级、稀疏性、多行为模式、序列长度等方面表现出了很好的多样性。

3.1 总体效果对比

42a3c25da10aa1a85bf98bf514a95e6c.png

以上表格的实验结果表明,我们提出的 MBHT 在针对不同数据集、不同指标(HR@5、10;NDCG@5、10;MRR)以及不同 research line 丰富的 baseline模型(通用序列推荐、基于图的序列推荐和多行为推荐)时都表现出了目前最好的效果。另外,加入多行为信号通常能够直接提升模型的表现(如 BERT4Rec-MB 对比 BERT4Rec),但如何更好地利用复杂的多行为信号建模更加丰富的用户兴趣隐向量表示,是研究的关键点之一。

3.2 消融实验

我们进一步为 MBHT 模型生成四个变体(variant)来研究关键部分在推荐效果提升中产生的影响。这四个变体分别是:

• MB-Hyper:消除模型超图编码中的多行为超图部分

• ML-Hyper:消除模型超图编码中基于 Metric Learning 的商品语义依赖超图部分

• Hypergraph:移除模型中全部的超图学习视图

• MS-Attention:将模型中提出的多尺度自注意力机制替换为 Vanilla Attention 机制

15503e81f5b2ba4a4bb3dca168b83623.png

从表格中总结的实验结果来看,我们在 MBHT 中设计的每个关键组件都起到了提升推荐表现的作用。特别地,超图模块和多尺度自注意力模块在不同数据集上发挥着不同的作用。我们进一步可视化了视图融合中的注意力权重来研究这两个组件对于数据集特性的敏感度:

411cc65f3abc2c0701e2b74d8443e68a.png

从可视化的注意力权重结果来看,超图学习模块对于更长序列的数据集上的预测起到了更大的作用(Taobao 和 IJCAI)。这进一步证实了我们的行为感知超图学习组件在捕捉多行为序列推荐中的长程兴趣依赖方面的效果。

3.3 模型进一步分析

在这一节中,我们从两个着眼点关注 MBHT 的设计为推荐模型的学习带来的益处:短序列问题和训练的收敛性问题。首先,我们将用户按其交互序列的长度分成五组,并对每组用户单独进行性能比较。结果展示如下:

5af89f11561322300d67565381118470.png

从结果来看,MBHT 不仅在较短的序列上,而且在较长的序列上都优于几个代表性的基线模型。这表明我们的推荐框架通过在序列嵌入中注入行为感知的短期和长期依赖关系而得以缓解短序列的数据匮乏的问题。

进一步地,我们可视化 MBHT 和表现最好的一些基线模型在训练时的收敛曲线如下图。可以发现,MBHT 能够在更少的训练 epoch 内达到更好的效果。这一观察结果表明,从序列和超图视图中探索增强的多行为信息可以提供更好的梯度来指导模型的优化。

9fdd161be58ca8f3af614a347d226e49.png

3.4 Case Study

在这一节中,我们希望通过深入的案例研究来探讨 MBHT 的建模是否具有很好的可解释性。具体地,我们给出以下 Tmall 数据集中的案例如图:

ac681157120df39c31de853ee8c4f158.png

在上图(a)-(d)中,我们展示了特定用户由 MBHT 学习的行为偏好依赖性。每一个 4×4 的热力图权重矩阵都是由多尺度的 Transformer 学习的,并且按照对应用户序列中的商品交互类型取平均来做可视化。(e)-(f)展示了多尺度自注意力机制中特定尺度下的平均权重关系。(g)展示了超图学习的平均多行为权重关系,(h)展示了基于 metric learning 学习的多行为权重关系。

从结果中可以看到,我们的 MBHT 模型针对不同用户学习到了多样化的多行为偏好权重,可以以个性化的方式反映用户的兴趣偏好。此外,在不同层、不同模块中,多行为的依赖模式也表现出了不同。这说明各个子模块能够注意到多行为交互中的不同特征,带来丰富的总体学习视角。

786fe78254bdb624fca5f7eaff2c1665.png

结论

在本文中,我们提出了一个新的序列推荐框架 MBHT 来解决序列推荐问题中的多行为问题。MBHT 期望以显式的方式捕捉短期和长期的多行为依赖。为此,我们设计了一个多尺度的 Transformer 结构来编码细粒度和粗粒度的行为感知序列模式。为了捕捉全局性的跨类型行为依赖,我们为 MBHT 配备了一个多行为超图学习组件。在多样化的真实世界的数据集上的实证研究结果验证了我们的 MBHT 在与最先进的推荐方法比较时的各方面优势。

outside_default.png

参考文献

outside_default.png

[1] Wang, S., Li, B. Z., Khabsa, M., Fang, H., & Ma, H. (2020). Linformer: Self-attention with linear complexity. arXiv preprint arXiv:2006.04768.

[2] Feng, Y., You, H., Zhang, Z., Ji, R., & Gao, Y. (2019, July). Hypergraph neural networks. In Proceedings of the AAAI conference on artificial intelligence (Vol. 33, No. 01, pp. 3558-3565).

[3] Yu, J., Yin, H., Li, J., Wang, Q., Hung, N. Q. V., & Zhang, X. (2021, April). Self-supervised multi-channel hypergraph convolutional network for social recommendation. In Proceedings of the Web Conference 2021 (pp. 413-424).

acc6ed5954247b197d74129289e504c7.jpeg

更多阅读

d18be60701dbe60eb8eab6247fe2ff48.png

1f83541f90f5bc0d2f86b61801556ec8.png

77d31ed1cd1cbef36045f60bb7044459.png

3f726a01bbd90e20c217a5f17ec4f6e7.gif

#投 稿 通 道#

 让你的文字被更多人看到 

如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。

总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 

PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。

📝 稿件基本要求:

• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注 

• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题

• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算

📬 投稿通道:

• 投稿邮箱:hr@paperweekly.site 

• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者

• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿

7e841ff173caf829ab387f186bd3f724.png

△长按添加PaperWeekly小编

🔍

现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧

·

·

679ca58b24a714817c5f9b2d6a8df0a1.jpeg

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐