TMER模型

TMER

论文名称:Temporal Meta-path Guided Explainable Recommendation

论文地址:https://arxiv.org/pdf/2101.01433.pdf

由于知识图谱的能够提供丰富的信息,在提升推荐系统的解释性方面进行很多的研究。目前的解释主要是针对静态图,忽略了user-item动态性。目前的时间序列推荐主要集中在user自身内部的序列交互。在本文,我们提出Temporal Meta-path Guided Explainable Recommendation(TMER),基于item-item path, 对动态图的user-item进行注意力机制建模,给出可解释推荐结果。

1 INTRODUCTION

在user-item相关知识图(KG)上进行路径推理已成为可解释推荐的流行手段。 基于路径的推荐系统通过搜索跨 KG 的user和item之间的连接信息,实现了推荐效果以及模型的解释提升。 关于基于路径的可解释推荐的一类现有工作寻求辅助元路径(KG 中各种类型实体之间的预定义高阶关系组合)作为user和item之间可能解释的相似性度量和证据。

TMER模型

然而,大多数现有的基于路径的可解释推荐方法只是将底层 KGs 视为静态图,而忽略了现实世界推荐场景中user-item交互的动态和演变性质。 user与item交互的动态和演变在推荐精度和对user真实意图的解释方面都起着关键作用。 以Figure1 中的场景为例,user在最近购买了一部新手机后,购买了一个手机壳和一个手机膜。 如果我们忽略每次购买之间的顺序信息,将整个信息视为静态图,系统可能会给出购买手机壳的解释,因为类似的客户也通过探索联购关系购买了这款手机壳。虽然在这种情况下,解释可能是有效的,并且可以使用潜在的推理机制(协同过滤信号)进行推荐,但它仍然不是最理想的,因为购买手机壳的更有吸引力的动机是由于最近购买了 一个新的手机。 出于这个原因,在这个例子中,重要的是系统能够考虑时间和顺序的user-item交互,并在生成可能的解释时解开各种原因的重要性。

尽管一些先前的工作已经在一定程度上考虑了knowledge-aware path-based的可解释推荐问题的序列信息,但它们仍然未能明确地对user活动的动态进行建模。为了允许对路径进行有效推理以推断user-item交互的基本原理,[32] 中提出的方法利用路径连通性的优势,并利用实体的顺序依赖关系和连接user-item对的路径的复杂关系.然而,这些方法只考虑特定路径内的序列信息,并没有考虑user历史序列对反映user与item的动态交互的重要性。为了改进,KARN 模型 [45] 融合了user的点击历史序列以及user和 KG 中item之间的路径连接性以进行推荐。然而,该方法以粗粒度的方式分别对user的顺序行为和user-item交互进行建模(将user的点击历史视为一个整体),这可能会限制user时间动态对推荐可解释性的表达。

鉴于此,在本文中,我们挑战了在基于路径的knowledge-aware推荐的背景下探索user时间序列动态的问题。 与仅考虑路径内的顺序信息或将user的顺序交互作为一个整体和单独对待的现有工作不同,我们的目标是 1) 明确建模并将随时间的动态user-item交互集成到基于路径的knowledge-aware 推荐,以及 2) 利用捕获的user-item交互动态来提高推荐的性能和可解释性。

值得注意的是,用基于路径的知识感知的可解释推荐来建模user的时间顺序行为是一项艰巨而富有挑战性的任务。首先,基于路径的知识感知推荐系统建立在构建良好的知识库基础上,其预期的准确性和可解释性与基础知识图谱和经过提炼的路径高度相关。如果考虑到user和item之间的时间信息,那么原始的底层静态知识库将被转换为多个快照。与由所有user的完整时间线组成的静态知识图谱相比,某个时间戳的每个快照只具有全局知识的部分观察,这将导致较差的推荐性能。为了解决这一问题,我们设计了一个基于时间知识感知的路径可解释推荐系统的通用框架,即时间元路径引导可解释推荐(TMER)。TMER提供了一种解决方案,可以明确地描述user的顺序行为,同时能够了解整个潜在千克数的全局知识。具体来说,为了建模user和item之间的时间动态,TMER自然地将任务建模为一个顺序推荐问题,并将输入user和他们相应的顺序购买历史记录作为输入。为了了解user购买的连续item之间的顺序依赖性,TMER新颖地探索了连续item之间的item-item路径,并将路径嵌入上下文,通过精心设计的注意机制对user和item之间的动态进行建模。现有的基于路径的可解释推荐系统只将user-item路径作为推荐决策的证据和支持,相比之下,TMER在现有工作的基础上提供了另一个creamy layer,它利用了user和 items之间强大的时间信息表达能力。

此外,在为上述目的考虑路径时,另一个挑战在于存在大量的可能路径。对于一个模型来说,选择几个有意义的、有表现力的、对推荐性能和可解释性都有积极影响的路径是非常耗时的。为此,受之前工作[16]的启发,我们利用元路径[27]的概念,并探索各种元路径模式,以描述user和item之间动态交互的上下文特征。利用功能强大的transformer 模型进行序列建模,通过对item-item路径注意和user-item路径注意单元的细化,研究了多个路径的组合特征,进而分别表征了user的时间购买动机和总体购物品味。开发这种基于路径的注意力单元的基本原理是,user购买某种产品的动机是复杂的,由多种因素组成。例如,当买一个新的手机,客户可能考虑几个因素包括手机的内在特性等功能,显示,相机,等,以及其他外部因素,如选择他们的亲密的朋友,和他们以前购买的某些相关电子产品使用相同的操作系统。在设计好的基于路径的注意力单元的帮助下,所提出的TMER框架能够学习各种可能路径的不同权重,这些权重将被用于解释推荐(我们通过运行案例研究,在实验中展示了使用所提出的基于路径的注意单元用于可解释推荐的有效性。

我们工作的另一个亮点是,引入的item-item路径建模也是简单而有效的TMER序列建模体系结构的核心。将item-item路径注意单元学习到的组合元路径丰富特征与之前购买的item特征进行聚合,作为下一个item的预测信号。这个框架背后的直觉是,item-item路径连接user连续购买的两个item,并表示可能导致下一个购买item的各种原因和因素,这在本质上提供了item之间强烈的顺序依赖性。与现有依赖循环神经网络的顺序推荐方法(rnn [19], GRUs [14], LSTM[32,45])相比,本文提出的方法轻、简单、有效。

本文的主要贡献如下:

  • 我们指出,随着时间的推移,明确地建模动态useritem交互可以显著提高推荐性能和可解释性。
  • 我们提出了时间元路径引导可解释推荐(TMER),该方法考虑了user在全局知识图上的动态行为,以实现顺序感知推荐,并利用精心设计的注意机制探索了useritem和item-item的元路径路径,以实现可解释推荐。
  • 在三个真实世界的数据集上进行了广泛的评估,实验结果显示了所提出的TMER模型的优越性、有效性和时间可解释性

; 2 PRELIMINARIES

我们首先给出一些问题的定义

Definition 2.1. Information Networks. G = ( V , E ) G=(\mathcal{V}, E)G =(V ,E )表示图。e ∈ E e\in E e ∈E代表( v 1 , v 2 ) (v_1,v_2)(v 1 ​,v 2 ​)之间的边,r r r代表边的类型,( v 1 , r , v 2 ) (v_1,r,v_2)(v 1 ​,r ,v 2 ​)代表从v 1 v_1 v 1 ​到v 2 v_2 v 2 ​, 它们的关系是r r r, 通常,r r r和r − 1 r^{-1}r −1代表不同含义,除非边是对称的。

Definition 2.2. Heterogeneous Information Network. 异构网络表示H H H, 边E E E和节点V \mathcal{V}V有多个类型,∣ R ∣ > 1 , ∣ T ∣ > 1 |R|>1,|T|>1 ∣R ∣>1 ,∣T ∣>1。

TMER模型

Example 1. Figure 2显示推荐异构网络G p G_p G p ​是H I N HIN H I N, 其中V \mathcal{V}V的节点类型是多个,包括:item、user、颜色、品牌等,E E E代表多个关系,例如,user和item之间可以是购买关系,item和品牌之间是品牌关系。

Definition 2.3. Meta-path. P P P表示,从实体v 0 v_0 v 0 ​到v k v_k v k ​可以用v 0 ⟶ r 0 v 1 ⟶ r 1 v 2 ⟶ r 2 … ⟶ r k − 1 v k v_{0} \stackrel{r_{0}}{\longrightarrow} v_{1} \stackrel{r_{1}}{\longrightarrow} v_{2} \stackrel{r_{2}}{\longrightarrow} \ldots \stackrel{r_{k-1}}{\longrightarrow} v_{k}v 0 ​⟶r 0 ​​v 1 ​⟶r 1 ​​v 2 ​⟶r 2 ​​…⟶r k −1 ​​v k ​, 其中r = r 0 ∘ r 1 ∘ r 2 ∘ … ∘ r k − 1 r=r_{0} \circ r_{1} \circ r_{2} \circ \ldots \circ r_{k-1}r =r 0 ​∘r 1 ​∘r 2 ​∘…∘r k −1 ​代表v 0 v_0 v 0 ​到v k v_k v k ​的复合关系。∘ \circ ∘代表关系上的e composition operator.

Example 2. Figure 2中包括多个meta-paths, 其中一个是U I B I UIBI U I B I, 它意味着user → \rightarrow → item → \rightarrow → brand → \rightarrow → item。我们会在接下来的章节讨论meta-paths选择。

TMER模型

Problem 1. Sequential knowledge-aware explainable recommendation. 对于user u i ∈ U u_i\in U u i ​∈U, 给定item的集合I I I, user的交易序列π u \pi_u πu ​, 与item相关的网络结构G G G, knowledge-aware explainable recommendation的目标是预测u i u_i u i ​将要产生交互的top k k kitem。

3.1 Overview of TMER Architecture

所提议的TMER模型的总体架构如图3所示。它主要由四个部分组成。首先,为了初始化user和item,我们使用DeepWalk[24]来嵌入user和item实体。其次,我们不是简单地利用元路径,而是挖掘和提取有意义的顺序(时间)和非顺序元路径实例,以提高推荐性能和个性化。在此步骤中,我们获得连续item之间的item-item实例路径。在采用注意力机制嵌入实例和user/item向量后,将实例的权重作为特定user推理路径的权重。我们利用不同的推理路径权值来更新item嵌入,使item包含推理信息。此步骤还对user连续购买的信息进行建模,将前一个item的特性提供给下一个item。最后,将item嵌入、user嵌入和实例嵌入到推荐网络中进行推荐。具体步骤将在下一小节中阐述。

3.2 Initialize User and Item Representation

我们首先使用DeepWalk学习user和item的节点表示,DeepWalk可以对共现的条目进行优化。还可以应用其他的图的嵌入初始化方法,如PME[4]、GraphSage[9]、GAT[30]等。这些近期作品的表现甚至超过了DeepWalk。然而,通过广泛的与这些方法相比,DeepWalk是最好的选择,这背后可能的原因是DeepWalk更多关注节点的嵌入在一个路径,而相比之下,如GraphSage,GAT,等等,学习每个实体的嵌入,聚合邻居的特征信息。也就是说,这些方法专注于图节点局部关系。然而,如果只考虑推荐任务本身,虽然局部关系很重要,但图上游走学习到的全局高阶关系也很重要。例如,朋友之间的共同购买关系和物品的替代关系的传递性可以通过在二分图中高阶建模关系来发现。

3.3 Incorporating Meta-path based Context

在推荐任务中,与user和物品相关的外部特征,如产品属性[5,37]、user社会信息[3,8,38]、user人口学信息等,通常被认为是补充传统推荐方法的附加辅助信息。然而,如何有效地利用异构附加信息是一个有待解决的问题。之前的一些研究[18,20,41]试图将社会关系作为user侧信息来提高推荐性能。为了寻求注入更复杂的附加信息的帮助,最近的研究[10,40]将元路径引入推荐方法,以描述异构信息网络中各种类型实体之间的关系组合。在[40]中,作者提出在信息网络中沿着不同的元路径扩散user偏好,以生成user和item的潜在特征。相关工作[10]首先从一个HIN中提取具有元路径的不同方面特征,然后将方面层面的潜在因素融合到推荐系统中。但是,这些方法很大程度上依赖于构建的基于元路径的相似矩阵所获得的潜在因素,这种方法过于一般化,只能反映图中不同类型实体之间的相互作用,而不能捕捉特定路径实例上的特定信息。因此,受现有工作[16]的启发,我们探索通过建模更具体的元路径实例来提高推荐性能和可解释性。

与现有的工作不同,我们根据推荐场景中涉及的实体将元路径实例区分为两个不同的类别(即,user-item和item-item元路径实例)。通过对这些路径实例建模,我们了解了一个更详细的基于元路径的上下文,以进一步表征每对user和item交互之间的动机、原因以及主导因素。虽然之前的工作如[16]主要关注于user和item之间的元路径实例建模,但本文重点介绍了item-item元路径实例,我们认为它在多个方面对顺序可解释的推荐系统都有好处。首先,仅考虑user-item路径对于推荐的可解释性是有限制的,因为user-item路径仅代表user的一般购物兴趣。相比之下,item-item路径具有更强的表现力,可以通过探索item之间的高阶关系来反映设计原因,如互补产品(如手机和手机壳)、已知item的可替代产品(如iPhone -手机膜-华为手机)、与他人共同购买的产品等。此外,item-item路径有时也可以作为顺序建模信号,自然地捕获user购买的每个连续item之间的时间依赖性,这将对顺序可解释的推荐产生很大影响。

尽管元路径在探索基于HIN的知识感知推荐中具有强大的表达能力,但它仍然具有挑战性,主要是因为元路径的数量太大而难以处理(即边的数量是实体数量的立方)。电子产品推荐情况为例,对meta-path为I U I B I IUIBI I U I B I模式, 如果我们解决起始节点—Phone11 pro,有许多实例:iPhone 11 pro → \rightarrow →Alice → \rightarrow → iPad → \rightarrow → Apple → \rightarrow → AirPods, iPhone 11 pro → \rightarrow → Amy → \rightarrow →Phone case → \rightarrow → Miracase → \rightarrow → Phone film,等等。因此,有必要在限制数量的同时对有用的路径实例进行采样,以简化以后的计算。直观地说,如果下一个节点和当前节点的嵌入类似,那么到下一个节点的路径更有可能是连接的。因此,根据这个假设,我们使用一种基于相邻节点相似度的方法对路径上的下一个节点进行采样。具体来说,对于每个指定的元路径模式,我们通过计算当前节点和候选输出节点之间的相似度来度量优先级。这样的优先级得分直接反映了两个节点之间的关联度。通过这种方法,我们为每个user-item对和item-item对取样并获得一些元路径实例,以参与推荐模块的训练。采取metapath U I B I UIBI U I B I为例,我们首先样本meta-path实例的相似性U U U和I I I, B B B和I I I , 获得最高k k k相似的sub-paths路径, 然后, 我们计算B B B和I I I的相似性和B B B前k k k中间路径所有样本路径。在接下来的内容中,我们将详细说明如何嵌入基于路径的上下文。

3.4 Parameterizing Combinational Features of Meta-paths as Recommendation Context

3.4.1 Learning combinational path-based features with Self-Attention.

TMER模型

在获取采样的user-item元路径实例和item-item元路径实例后,我们首先将路径视为句子,将节点视为句子中的令牌,使用Word2Vec[22]方法和𝑀𝑒𝑎𝑛(·)操作学习路径嵌入。然后,我们使用多头自我注意单元来学习基于元路径的上下文(如图3所示的user-item和item-item路径注意模块)。在这里部署这种自我注意单元的基本原理是,在抽样后,每一对商品(或user商品)之间仍然有多个路径,代表特定的不同原因(推理路径);我们发现,连续购买两件商品的原因并不简单;相反,原因更复杂,可能是多种不同原因的混合。例如,顾客买手机的原因情况后他/她以前的购买一个新的电话可能是1的混合物)他/她的朋友拥有一个类似的手机,买了这个手机的情况下,2)电话情况下是最受欢迎的适合购买新的手机,3)手机壳的颜色符合客户的喜好。潜在的原因可能不止列出的这些,它们也可以通过使用各种元路径来表示。

基于此观察,Transformer模型[29]的自关注特性,我们的目标是学习多路径实例的组合特征,以便更好地刻画K中每对连通实体之间的复杂原因。
Attention ( Q ϕ , K ϕ , V ϕ ) = Softmax ⁡ ( Q ϕ K ϕ T d k ) V ϕ MultiHead ( Q ϕ , K ϕ , V ϕ ) = Concat ( head 1 , … , head m ) W O (1) \begin{array}{l} \text { Attention }\left(Q_{\phi}, K_{\phi}, V_{\phi}\right)=\operatorname{Softmax}\left(\frac{Q_{\phi} K_{\phi}^{T}}{\sqrt{d_{k}}}\right) V_{\phi} \ \text { MultiHead }\left(Q_{\phi}, K_{\phi}, V_{\phi}\right)=\text { Concat }\left(\text { head }{1}, \ldots, \text { head }{m}\right) W^{O} \end{array}\tag{1}Attention (Q ϕ​,K ϕ​,V ϕ​)=S o f t m a x (d k ​​Q ϕ​K ϕT ​​)V ϕ​MultiHead (Q ϕ​,K ϕ​,V ϕ​)=Concat (head 1 ​,…,head m ​)W O ​(1 )
其中,head i \text{head}i head i ​是Attention ( W i Q Q ϕ , W i K K ϕ , W i V V ϕ ) x \text{Attention }\left(W{i}^{Q} Q_{\phi}, W_{i}^{K} K_{\phi}, W_{i}^{V} V_{\phi}\right) x Attention (W i Q ​Q ϕ​,W i K ​K ϕ​,W i V ​V ϕ​)x, Q , K , V Q,K,V Q ,K ,V是与路径ϕ \phi ϕ有关的self-attention变量。W W W是权重,d k d_k d k ​是维度(这里d k = 100 d_k=100 d k ​=1 0 0), C o n c a t ( ⋅ ) Concat(\cdot)C o n c a t (⋅)是 concatenation操作。

3.4.2 Modelling temporal dependencies with item-item meta-path instances.

为了了解每个user的时间动态,本文提出的TMER框架利用上述item-item元路径实例,以及精心设计的体系结构来捕获两个连续item之间的顺序依赖关系。现有的大多数序列推荐研究[31,35,45]利用循环神经网络对user交互序列中item之间的时间效应进行编码,与之相比,提出的TMER绕过了rnn或lstm的部署,这些部署有时会使模型变得更重。具体来说,该框架通过捕获1)前一item通过item注意单元传递的信息,2)item-item连接通过特定的采样路径实例,对两个item之间的时间依赖关系进行建模。值得注意的是,前一item传递的信息是前一个item-item连接信息注意力的聚合。例如,在图3中,Alice是否会购买手机贴膜是通过考虑1)从手机壳传递的信息(包括iphone11 pro和手机壳之间的连通性),2)手机壳到手机贴膜的路径来建模的。结果表明,在不同的场景下,不同的数据集,所建模的序列的长度会影响长短时记忆的好坏。

3.4.3 Updating item representations.

在根据多头自注意机制更新user-item元路径实例和item-item元路径实例的表示之后,我们使用另一种注意机制来更新item表示。显然,当前item主要与上一个item相关,这意味着最好将上一个item的信息添加到当前item中,以包含时间信息。此外,当前item还与到达该item的实例相关。因此,我们执行一个两层注意机制来更新item表示。在数学上:
h i ( 1 ) = ReLU ⁡ ( W i − 1 h i − 1 + W ϕ i − 1 → i ( 1 ) h ϕ i − 1 → i + b i ( 1 ) ) ⊙ h i − 1 (2) \mathbf{h}{i}^{(1)}=\operatorname{ReLU}\left(W{i-1} \mathbf{h}{i-1}+W{\phi_{i-1 \rightarrow i}}^{(1)} \mathbf{h}{\phi{i-1 \rightarrow i}}+\mathbf{b}{i}^{(1)}\right) \odot \mathbf{h}{i-1}\tag{2}h i (1 )​=R e L U (W i −1 ​h i −1 ​+W ϕi −1 →i ​(1 )​h ϕi −1 →i ​​+b i (1 )​)⊙h i −1 ​(2 )

h i ( 2 ) = ReLU ⁡ ( W i h i + W ϕ i − 1 → i ( 2 ) h ϕ i − 1 → i + b i ( 2 ) ) ⊙ h i (3) \mathbf{h}{i}^{(2)}=\operatorname{ReLU}\left(W{i} \mathbf{h}{i}+W{\phi_{i-1 \rightarrow i}}^{(2)} \mathbf{h}{\phi{i-1 \rightarrow i}}+\mathbf{b}{i}^{(2)}\right) \odot \mathbf{h}{i}\tag{3}h i (2 )​=R e L U (W i ​h i ​+W ϕi −1 →i ​(2 )​h ϕi −1 →i ​​+b i (2 )​)⊙h i ​(3 )

其中,h i ( 1 ) \mathbf{h}i^{(1)}h i (1 )​和h i ( 2 ) \mathbf{h}_i^{(2)}h i (2 )​是attention第1层和第2层的tem输出。h i − 1 \mathbf{h}{i-1}h i −1 ​是最后一层item表示。ϕ i − 1 → i \phi_{i-1 \rightarrow i}ϕi −1 →i ​从( i − 1 ) t h (i-1)^{th}(i −1 )t h到i t h i^{th}i t h的实例。W W W和b b b指的是变量的权重和偏置项。第1个item表示计算如下:
h i = 1 = ReLU ⁡ ( W i h i + W ϕ u → i h ϕ u → i + b i ) ⊙ h i (4) \mathbf{h}{i=1}=\operatorname{ReLU}\left(W{i} \mathbf{h}{i}+W{\phi_{u \rightarrow i}} \mathbf{h}{\phi{u \rightarrow i}}+\mathbf{b}{i}\right) \odot \mathbf{h}{i}\tag{4}h i =1 ​=R e L U (W i ​h i ​+W ϕu →i ​​h ϕu →i ​​+b i ​)⊙h i ​(4 )
其中,ϕ u → i \phi_{u\rightarrow i}ϕu →i ​代表用户u u u到第1个item的路径。

3.5 The Complete Recommendation Model

最后,我们将user, item, 路径信息拼接在一起,通过MLP获得user-item的预测:
h u , i = [ h u ; h i ( 1 ) ; h i ( 2 ) ] (5) h_{u, i}=\left[\mathbf{h}{u} ; \mathbf{h}{i}^{(1)} ; \mathbf{h}{i}^{(2)}\right]\tag{5}h u ,i ​=h u ​;h i (1 )​;h i (2 )​
其中[ ; ] [;][;]代表向量的拼接,h u , i h
{u,i}h u ,i ​指得是user和item的交互。对于第一个item,将每个人的第一个item喂给MLP,数学表示:
h u , i = 1 = [ h u ; h ϕ u → 1 ; h i = 1 ] (6) h_{u, i=1}=\left[\mathbf{h}{u} ; \mathbf{h}{\phi_{u \rightarrow 1}} ; \mathbf{h}{i=1}\right]\tag{6}h u ,i =1 ​=h u ​;h ϕu →1 ​​;h i =1 ​
最后,user-item计算得分如下:
r u , i = M L P ( h u , i ) (7) r
{u, i}=M L P\left(h_{u, i}\right)\tag{7}r u ,i ​=M L P (h u ,i ​)(7 )
MLP使用两个隐藏层和ReLU激活函数。

loss损失函数采用负采样:
loss ⁡ u , i = − E j ∼ P neg [ log ⁡ ( 1 − r u , j ) ] (8) \operatorname{loss}{u, i}=-E{j \sim P_{\text {neg }}}\left[\log \left(1-r_{u, j}\right)\right]\tag{8}l o s s u ,i ​=−E j ∼P neg ​​lo g (1 −r u ,j ​)
其中,模型的负样本来自均匀分布P n e g P_{neg}P n e g ​。

Original: https://blog.csdn.net/qq_39698985/article/details/123041638
Author: Rory602
Title: TMER模型

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/557193/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球