针对电子商务场景的会话推荐难以处理用户行为随机性、商品数据稀疏性和推荐结果滞后性问题,提出融合图神经网络和注意力机制的会话推荐模型。首先引入相对点击时间率改善由用户随机点击造成的推荐性能下降问题,参与生成由会话转换的商品关系依赖图结构;然后由多层门控图神经网络处理图结构,通过聚合更多节点信息输出相对稠密的商品表示;接着使用门控循环单元捕捉会话信息,并借助注意力机制强化会话靠后的项目,综合形成用户表示,最终获得实时推荐。模型在Yoochoose和Diginetica两个公开数据集上进行实验,获得了较好的表现,结果表明所提出的模型可以提高推荐准确性。 Aiming at the problems that session-based recommendation in e-commerce platforms hardly solve the problems of random-like behavior from users, the sparsity from items and the real-time performance from recommendation results, a session-based recommendation model with graph neural network and attention mechanism is proposed. First, the relative click time rate is introduced to tackle the recommendation effect degradation caused by random clicks from users, and partici-pates in the generation of the item relationship dependency graph transformed by sessions. Then, the multi-layer gated graph neural network is used for learning the graph structure, and the relatively dense item’s representation is output by aggregating more node information. After that, each session’s information is captured by gated recurrent units, and items at the rear of the session are strengthened with the help of the attention mechanism to generate each user’s representation, so as to finally obtain real-time recommendation. Experiments on Yoochoose and Diginetica datasets show that the proposed model can achieve good performance and improve the accuracy of recommendation.
针对电子商务场景的会话推荐难以处理用户行为随机性、商品数据稀疏性和推荐结果滞后性问题,提出融合图神经网络和注意力机制的会话推荐模型。首先引入相对点击时间率改善由用户随机点击造成的推荐性能下降问题,参与生成由会话转换的商品关系依赖图结构;然后由多层门控图神经网络处理图结构,通过聚合更多节点信息输出相对稠密的商品表示;接着使用门控循环单元捕捉会话信息,并借助注意力机制强化会话靠后的项目,综合形成用户表示,最终获得实时推荐。模型在Yoochoose和Diginetica两个公开数据集上进行实验,获得了较好的表现,结果表明所提出的模型可以提高推荐准确性。
会话推荐,图神经网络,门控循环单元,注意力机制
Haowen Huang, Pinghua Chen
School of Computer, Guangdong University of Technology, Guangzhou Guangdong
Received: Mar. 17th, 2022; accepted: Apr. 18th, 2022; published: Apr. 25th, 2022
Aiming at the problems that session-based recommendation in e-commerce platforms hardly solve the problems of random-like behavior from users, the sparsity from items and the real-time performance from recommendation results, a session-based recommendation model with graph neural network and attention mechanism is proposed. First, the relative click time rate is introduced to tackle the recommendation effect degradation caused by random clicks from users, and participates in the generation of the item relationship dependency graph transformed by sessions. Then, the multi-layer gated graph neural network is used for learning the graph structure, and the relatively dense item’s representation is output by aggregating more node information. After that, each session’s information is captured by gated recurrent units, and items at the rear of the session are strengthened with the help of the attention mechanism to generate each user’s representation, so as to finally obtain real-time recommendation. Experiments on Yoochoose and Diginetica datasets show that the proposed model can achieve good performance and improve the accuracy of recommendation.
Keywords:Session-Based Recommendation, Graph Neural Network, Gated Recurrent Unit, Attention Mechanism
Copyright © 2022 by author(s) and beplay安卓登录
This work is licensed under the Creative Commons Attribution International License (CC BY 4.0).
http://creativecommons.org/licenses/by/4.0/
会话推荐是推荐系统的重要组成部分,其对用户点击交互的商品、新闻、音乐等历史序列进行分析,预测下一步点击的内容。会话推荐由于主要关注序列本身,不借助用户或项目的特征即可对该用户下一次点击的商品实现推荐或预测,有利于解决匿名用户推荐等问题,故在近几年备受关注 [
会话为用户在一段时间内访问电子商务等平台,依次点击商品的序列,本身不含用户或商品特征上下文,传统的协同过滤 [
针对会话推荐中的用户行为随机、商品数据稀疏和推荐结果滞后等问题,本文提出一种融合了GNN和AM (Attention Mechanism,注意力机制)的会话推荐模型TGGA-SR,在充分利用会话数据的基础上实现准确推荐,并解决以下问题:
1) 用户行为随机性。为减少上述噪声商品对推荐结果的影响,模型根据用户点击相邻商品的时间间隔生成相对点击时间率,参与商品关系依赖图的生成,对很短时间连续点击的商品之间赋予较小的权重。
2) 商品数据稀疏性。针对会话推荐中用户或商品特征缺失的特点,模型首先通过生成商品关系依赖图建立商品之间的联系,然后使用多层GNN进行向量表示,聚合多阶邻居节点信息。
3) 推荐结果滞后性。用户在不同时期会表现不同的兴趣偏好,点击的商品会发生变化。根据这一特点,用户下一步关注的商品与最后一次点击的商品有很大关联。模型结合GRU和AM,对用户会话时间靠后的商品信息进行强化,形成实时推荐。
这类方法采用数据挖掘或机器学习等手段挖掘会话内数据的相关性,进行会话推荐。
Item-KNN [
这类方法主要结合RNN、GNN等手段,具有表达能力强,挖掘更多数据隐藏模式等特点。
RNN主要用于建模序列信息,其变体LSTM或GRU因能有效记忆较长序列而获得较广泛的应用,在机器翻译 [
GNN为图表示学习(Graph Representation Learning)的一个分支,采用CNN (Convolutional Neural Networks,卷积神经网络)思想表示图结构,GNN根据节点聚合与更新方式的不同,主要模型有GCN [
如图1,多个用户在一段时间内登录电子商务平台,分别先后点击了若干商品。用户依次点击的商品序列形成会话,而这些会话不包含用户或商品的特征信息。本模型需要通过分析这些会话预测各用户下一次点击的商品,实现推荐。
图1. 问题描述示例
本文TGGA-SR模型结构如图2所示。该图展示模型根据用户点击商品记录实现商品推荐,大量用户浏览商品行为数据经过处理后,形成用户点击商品会话(①)。这些会话将整合到商品关系依赖图的有向图结构中(②),并由GNN学习商品表示(③)。处理用户表示时,将用户点击商品对应的商品表示按会话顺序排列,作为GRU的输入,并由结合AM形成最终用户表示(④),最后生成推荐结果(⑤)。
图2. TGGA-SR模型结构
TGGA-SR的输入数据为电子商务平台在一段时间内用户与商品的交互日志,包括用户ID、商品ID和交互时刻(用户点击商品的时刻)等关键信息。模型首先把属于同一个用户ID的所有日志按时序整理成会话,即会话包括某用户先后点击的所有商品。一般而言,用户u在一段时间依次点击了n件商品 v 1 , v 2 , ⋯ , v j , v k , ⋯ , v n − 1 , v n ,则相应形成会话 s u = [ v 1 , v 2 , ⋯ , v j , v k , ⋯ , v n − 1 , v n ] 。会话用于用户向量建模,也参与商品关系依赖图的生成。
商品关系依赖图集合了所有会话的节点和边信息。商品关系依赖图G以会话内商品为节点,相邻商品之间的商品节点建立有向边,由先点击商品指向后点击商品。以图2的会话 s 2 = [ v 2 , v 5 , v 3 , v 6 , v 3 ] 为例,G的子图 G ′ 2 则存在有向边 〈 v 2 , v 5 〉 , 〈 v 5 , v 3 〉 , 〈 v 3 , v 6 〉 , 〈 v 6 , v 3 〉 ,形成的子图 G ′ 2 结构如图3所示。所有会话的商品关系依赖图 G ′ i 节点与有向边分别取并集,形成最终的商品关系依赖图G。这种将原本一维的会话整合成二维的图结构方法,可以进一步挖掘商品之间的联系,减少数据稀疏。
根据用户自身偏好,用户在点击浏览不同的商品时会呈现不同的关注程度。由于会话不含用户和商品特征,用户对商品的关注程度仅能依据时间信息间接判断。如果用户对某商品的关注程度较高,则该商品的浏览时间相对较长,且在会话内所有商品浏览总时长占比较高。故TGGA-SR引入会话相对点击时间率(Relative Time Ratio) [
图3. 商品关系依赖图的子图
一般地,在会话 s u = [ v 1 , v 2 , ⋯ , v j , v k , ⋯ , v n − 1 , v n ] 中,用户u先后在 T u , j 和 T u , k 时刻分别点击商品 v j 和 v k ,则两者点击时间间隔 T u ( v j , v k ) = T u , k − T u , j 相当于用户u在电子商务平台展示商品 v j 的时长,以s为单位。若 v j 和 v k 商品未依次点击,即有向边 〈 v j , v k 〉 ∉ G ′ u ,则 T u ( v j , v k ) = 0 。时间间隔定义见式(1)。
T u ( v j , v k ) = { T u , k − T u , j , 〈 v j , v k 〉 ∈ G ′ u , 0 , 〈 v j , v k 〉 ∉ G ′ u (1)
较短的商品展示时间反映用户对该商品的关注程度较低,或随机性点击商品 [
会话相对点击时间率用来衡量会话内的商品展示时长在整个会话时长的比例,反映该商品占整个会话的关注程度。如会话 s u 内商品 v j 的会话相对点击时间率如式(2)所示。
TR u ( v j , v k ) = T u ( v j , v k ) ∑ i = 1 n − 1 T u ( v i , v i + 1 ) (2)
会话相对点击时间率参与商品关系依赖图的有向边权重计算,以设定权重的方式加强或削弱会话中商品之间的联系,如较低的会话相对点击时间率反映两种商品切换时间相对较短,关联度较小,以此减少了因随机性造成的误差。整个商品关系依赖图G的出度矩阵与入度矩阵分别由式(3)和(4)定义。
a ( o u t ) ( v j , v k ) = { ∑ i TR i ( v j , v k ) d ( o u t ) ( v j ) , d ( o u t ) ( v j ) > 0 , 0 , d ( o u t ) ( v j ) = 0 (3)
a ( i n ) ( v j , v k ) = { ∑ i TR i ( v j , v k ) d ( i n ) ( v k ) , d ( i n ) ( v k ) > 0 , 0 , d ( i n ) ( v k ) = 0 (4)
其中,i表示会话序号; d ( o u t ) ( v j ) 为商品节点 v j 的出度,表示整个平台一段时间内先点击商品 v j 、后点击其它商品的行为次数; d ( i n ) ( v k ) 为节点 v k 的入度,表示先点击其它商品、后点击商品 v k 的行为次数。建立的商品关系依赖图为后续商品基于图神经网络的向量表示提供依据。
接续会话 s 2 = [ v 2 , v 5 , v 3 , v 6 , v 3 ] 的例子,假设5件商品点击时间间隔依次为10 s、50 s、200 s、140 s,则子图 G ′ 2 出度矩阵 A 2 ( o u t ) 和入度矩阵 A 2 ( i n ) 分别如图4的(a)、(b)所示。
图4. 出度矩阵和入度矩阵示例
TGGA-SR使用GNN学习商品关系依赖图的节点,形成商品的向量表示。由于图为节点和边表示的结构,相邻节点以边联结,GNN形成节点向量的过程则由其相邻节点向量的信息传播到该节点,并作一定聚合获得。
商品关系依赖图商品节点采用GGNN (Gated Graph Neural Network,门控图神经网络)学习。GGNN结合RNN思想学习节点向量,节点信息随单位时间传播。图5为 G ′ 2 按时序展开传播信息的示意图,各节点向量信息在当前时刻以同样的规则传播、聚合形成下一时刻的节点信息,以 t = 1 为初始单位时刻。传播规则为,对于尾节点指向头节点的有向边,每个头节点接收尾节点的信息,也向尾节点反向发送当前信息。以图5的有向边 〈 v 2 , v 5 〉 ∈ G ′ 2 为例,在 t = 1 时刻,节点 v 2 对应的信息 e 2 ( 1 ) 向 v 5 传播(实线箭头),参与形成 t = 2 时刻的信息 e 5 ( 2 ) ;同时 e 5 ( 1 ) 反向传播到 v 2 (虚线箭头),参与形成 e 2 ( 2 ) 。
图5. GGNN单位时间传播示意
对于整个商品关系依赖图,TGGA-SR设定多层GGNN,聚合更多相邻商品的信息,使商品之间的联系更紧密。学习过程如式(5)至式(10)所示。
e i ( 1 ) = [ v i T , 0 ] T ( i ∈ 1 , ⋯ , n ) (5)
a i ( t ) = A i : T [ e 1 ( t − 1 ) T , ⋯ , e n ( t − 1 ) T ] T H + b (6)
z i ( t ) = σ ( W z a i ( t ) + U z e i ( t − 1 ) ) (7)
r i ( t ) = σ ( W r a i ( t ) + U r e i ( t − 1 ) ) (8)
e ˜ i ( t ) = tanh ( W o a i ( t ) + U o ( r i ( t ) ⊙ e i ( t − 1 ) ) ) (9)
e i ( t ) = ( 1 − z i t ) ⊙ e i ( t − 1 ) + z i t ⊙ e ˜ i ( t ) (10)
上述式中,式(5)的 e i ( 1 ) 为商品节点的初始向量表示。式(6)的 [ e 1 ( t − 1 ) , ⋯ , e n ( t − 1 ) ] T 是单位时刻 ( t − 1 ) 各商品节点向量表示; A 是商品关系依赖图G的出度矩阵 A ( out ) 和入度矩阵 A ( in ) 的拼接, A = [ A ( out ) , A ( in ) ] ∈ ℝ n × 2 n ; A i : ∈ ℝ n × 2 表示从 A 中选择对应节点 v i 的两列; H 为权重; b 为偏置。
式(7)至式(10)类似于GRU (Gated Recurrent Unit,门控循环单元)正向传播过程,其中 σ ( · ) 为sigmoid激活函数,式(7)相当于更新门,用于控制上一时刻的信息的去留;式(8)相当于重置门,用于控制新信息的产生;式(9)为候选新向量表示,其中 ⊙ 表示哈达玛积(Hadamard Product),即对应元素乘积;式(10)通过对新旧向量表示的控制,形成下一时刻商品向量表示。
TGGA-SR用GRU和AM生成用户向量,以表示用户偏好程度。用户向量表示的输入为会话的商品序列,其中的商品为上一步学习的商品表示。图6以会话 s 2 = [ v 2 , v 5 , v 3 , v 6 , v 3 ] 为例进行用户向量表示的过程。
图6. 用户向量表示
TGGA-SR使用GRU处理会话,因其可避免传统RNN在长序列训练过程出现的梯度消失问题,也较LSTM (Long Short-Term Memory,长短期记忆)使用更少的参数。GRU模型如图7所示。
图7. GRU单元结构
GRU的前向传播如式(11)至式(14)所示。
z t = σ ( W z ⋅ [ h t − 1 , e t ] ) + b z (11)
r t = σ ( W r ⋅ [ h t − 1 , e t ] ) + b r (12)
h ˜ t = tanh ( W r ⋅ [ r ⊙ h t − 1 , e t ] ) (13)
h t = ( 1 − z t ) ⊙ h t − 1 + z t ⊙ h ˜ t (14)
其中, e t 为当前时刻商品向量输入, h t − 1 为上一时刻输出。式(11)和式(12)分别为更新门和重置门的处理过程。式(13)为候选新状态生成,并在式(14)与旧状态结合,形成新时刻状态。
注意力机制(AM)源于人类对事物的观察,即人的目光聚焦在事物的关键区域,以获取所需信息,而其它无关区域会被忽略。推荐模型应用AM可将相关特征进行强化或抑制,以得到更准确的推荐结果。TGGA-SR利用AM先计算每个特征的权值,再对特征进行加权求和,权值越大,对当前的结果影响就越大。
考虑到用户的兴趣具有阶段性变化,点击的商品与上一项有关联,即会话越靠后的商品对用户兴趣建模的贡献度越大,故应用AM对会话靠后的商品信息进行加强,同时也能对噪声类商品信息进一步抑制,实现实时推荐。设置注意力权重因子 α n i ( i = 1 , ⋯ , n ) ,其中n为会话的末端商品,用于衡量两个GRU输出位置之间的关联程度。权重因子计算如式(15)所示。
α n i = q ( h n , h i ) (15)
其展开如式(16)所示。
q ( h n , h i ) = V T σ ( A 1 h n + A 2 h i ) (16)
其中,参数矩阵 A 1 , A 2 分别将LSTM隐层状态 h n , h i 进一步转化为隐向量表示。通过将隐层状态转换求和,得到的结果再经过sigmoid激活函数,获得新的隐向量表示。将新隐向量表示与参数矩阵 V T 进行矩阵乘法,最终得到权重因子。
将权重因子分别作用于各GRU单元输出,并进行线性变换,最终得到用户表示 c u ,该过程如式(17)所示。
c u = ∑ i = 1 n α n i h i (17)
在获得用户表示与商品表示后,TGGA-SR先进行用户与商品的余弦相似度计算,再进行softmax归一化形成预测商品的概率分布,进行Top-k推荐。此过程如式(18)和(19)所示。
r ^ i = c u ⋅ e i ‖ c u ‖ ‖ e i ‖ (18)
y ^ = softmax ( r ^ ) (19)
由于用户对商品浏览行为只有浏览和不浏览两种,因此选择二分类交叉熵作为损失函数,如式(20)所示。
L = − ∑ i = 1 m [ y i log ( y ^ i ) + ( 1 − y i ) log ( 1 − y ^ i ) ] (20)
其中, y ^ i 为预测概率分布, y i 为真实分布。
本文使用Yoochoose和Diginetica两个数据集进行实验。Yoochoose数据集是由英国在线零售商提供的用户在6个月内,含9,249,729件商品的共计33,003,994条用户点击记录,每条记录分别包含会话ID、时间戳、商品ID、商品类别信息。Diginetica数据集记录了另一个电子商务平台用户在5个月内,含43,097件商品的共计204,771条用户点击记录,每条记录分别包含会话ID、用户ID、商品ID、点击发生的时间帧、点击发生的日期信息。
本文对数据集进行拆分。对于Yoochoose数据集,将最后1天数据作测试集,其余作训练集;对于Diginetica数据集,将最后7天数据作测试集,其余作训练集。实验根据Li等人 [
本文根据Tan等人 [
数据集 | Yoochoose 1/64 | Yoochoose 1/4 | Diginetica |
---|---|---|---|
点击次数 | 557,248 | 8,326,407 | 982,961 |
训练集会话数 | 369,859 | 5,917,745 | 719,470 |
测试集会话数 | 55,898 | 55,898 | 60,858 |
物品数 | 16,766 | 29,618 | 43,097 |
平均会话跳数 | 6.16 | 5.71 | 5.12 |
表1. 数据集统计信息
由于Yoochoose和Diginetica原始数据集均记录了商品点击时间帧,故模型可以记录会话内点击相邻商品之间的时间间隔。图8和图9分别展示了Yoochoose和Diginetica数据集相应点击时间间隔的频次分布。
图8. Yoochoose数据集点击时间间隔分布
图9. Diginetica数据集点击时间间隔分布
需要说明的是,Yoochoose数据集的最长时间间隔达3600 s,Diginetica数据集则长达1200 s。表2以分段的形式完整给出了不同时间间隔区间的频次占比。
时间间隔区间 | Yoochoose数据集占比 | Diginetica数据集占比 |
---|---|---|
0~100 s | 67.96% | 67.79% |
101~200 s | 16.30% | 18.35% |
201~300 s | 5.78% | 6.38% |
301~400 s | 2.80% | 3.00% |
401~500 s | 1.62% | 1.67% |
501~600 s | 1.04% | 1.02% |
601~700 s | 0.73% | 0.65% |
701~800 s | 0.54% | 0.46% |
801~900 s | 0.42% | 0.31% |
901~1000 s | 0.34% | 0.20% |
1001~1100 s | 0.27% | 0.12% |
1101~1200 s | 0.23% | 0.04% |
1201~3600 s | 1.97% | - |
表2. 数据集时间间隔统计信息
虽然两个数据集组成不同,但分别处理和统计后可从统计图表看出,除了0 s附近时间间隔有差异,两个数据集的用户点击行为整体相近,大多数时间间隔集中在180 s以内,此后的频次随时间间隔增加呈现递减趋势。
由于1200 s以上的时间间隔频次少,较长的时间间隔可能由处理其它事务或离开屏幕而暂停浏览商品造成。为保持数据的完整性以及减少其它商品的会话相对点击时间率过小的影响,模型设置时间间隔上限为1200 s。另外,Yoochoose数据集频次最高的点击时间间隔集中在5 s附近,用户在如此短的时间内点击,往往未能有效阅读平台展示的商品信息。这些商品被视为噪声商品,不利于形成用户兴趣,给推荐结果带来不利影响。相对点击时间率的引入试图削弱短时间间隔浏览商品之间的联系。
为了评估本文所提出TGGA-SR模型的有效性,将该模型与以下模型进行对比。
第一类为传统会话推荐模型,包括POP [
第二类为基于深度学习的会话推荐模型,包括GRU4REC [
本文采用会话推荐场景中最常用的Precision@k和MRR@k (Mean Reciprocal Ranks, MRR)两种评价指标评估模型。
Precision@k用于衡量基于会话的推荐系统的预测准确性,表示推荐结果列表中排在前k个推荐物品中,有正确物品的样本所占的比例。指标定义如式(21)所示。
Precision @ k = n hit N (21)
其中, n hit 表示前k个推荐物品中有正确物品的样本数量,N表示测试集的总样本数。
MRR@k表示平均倒数排名,是在Precision@k方法的基础上,加入了商品位置的影响。在推荐物品列表中物品的位置越靠前,则其值越大,反之越小,当物品不在前k个推荐物品中时,该值为0。指标定义如式(22)所示。
MRR @ k = 1 N ∑ i = 1 N 1 rank ( i ) (22)
其中,N表示测试集的总样本数, rank ( i ) 表示第i个测试样本的推荐列表中正确物品所在的排列位置。
实验取 k = 20 ,即前20件候选商品,这些商品在现实中往往出现在电子商务平台的第一页,受到大多数用户关注。
本文模型参数设定如下。商品向量嵌入维度 d = 100 ,学习率 η = 0.001 ,学习率衰减 λ = 0.1 ,商品图神经网络嵌入表示层及GRU层的隐层节点个数均设置为100。训练批次设定方面,Batch大小为100,迭代次数为10。所有权重矩阵均采用服从 N ( 0 , 0.1 ) 的正态分布随机初始化,L2惩罚系数为 10 − 5 ,算法使用Adam优化方法对模型参数进行求解。
本文所提出TGGA-SR模型与其它模型的对比见表3。
其中,FPMC在处理Yoochoose 1/4数据集时出现内存不足问题,未给出结果。从表3可以看出,传统会话推荐模型缺乏对会话转移信息的有效捕捉,效果总体较基于深度学习的会话推荐模型差。在基于深度学习的会话推荐模型中,引入RNN、GNN等可以较好地表示会话和商品所隐含的信息,从而带来相对较好的推荐结果。本文的TGGA-SR则通过引入会话相对点击时间率对噪声商品的信息有所抑制,同时使用AM获得相对实时的推荐,提高了推荐性能,在Yoochoose 1/64和Diginetica数据集均取得相对显著的提升。
模型 | Yoochoose1/64 | Yoochoose 1/4 | Diginetica | |||
---|---|---|---|---|---|---|
Precision@20 | MRR@20 | Precision@20 | MRR@20 | Precision@20 | MRR@20 | |
POP | 6.71 | 1.65 | 1.33 | 0.30 | 0.89 | 0.20 |
S-POP | 30.44 | 18.35 | 27.08 | 17.75 | 21.06 | 13.68 |
Item-KNN | 51.60 | 21.81 | 52.31 | 21.70 | 35.75 | 11.57 |
BPR-MF | 31.31 | 12.08 | 3.40 | 1.57 | 5.24 | 1.98 |
FPMC | 45.62 | 15.01 | - | - | 26.53 | 6.95 |
GRU4REC | 60.64 | 22.89 | 59.53 | 22.60 | 29.45 | 8.33 |
NARM | 68.32 | 28.63 | 69.73 | 29.23 | 49.70 | 16.17 |
STAMP | 68.74 | 29.67 | 70.44 | 30.00 | 45.64 | 14.32 |
SR-GNN | 68.69 | 29.36 | 69.90 | 30.30 | 49.56 | 16.92 |
SEMGNN | 69.16 | 29.80 | 70.62 | 31.28 | 50.16 | 17.04 |
TGGA-SR | 70.44 | 30.85 | 71.33 | 32.09 | 51.80 | 18.29 |
表3. 实验结果
消融实验(ablation study)的作用是验证TGGA-SR模型的各个部分对推荐性能的影响,本文设置了四种模型加以对照。相对于完整的TGGA-SR,–T为仅去除相对点击时间率,保留商品关系依赖图,但其出度矩阵和入度矩阵的构造与SR-GNN [
图10. 消融实验结果(Precision@20)
图11. 消融实验结果(MRR@20)
从图10和图11可以看出,对于仅去除用户表示部分(–GA)的模型,由于会话潜在信息不能被GRU和AM有效挖掘,造成用户表示不理想,推荐效果显著降低。对于仅去除商品表示部分(–TG)的模型,商品之间的联系由于分散在一维会话结构中而不能有效聚合,形成的推荐结果不一定很好地符合用户需求。对于仅去除AM (–A)的模型,其缺少实时性修正,推荐的结果未必反映用户兴趣阶段性变化特点,效果不如完整模型。而仅去除相对点击时间率(–T)的模型则受到噪声商品影响,尤其是Yoochoose数据集出现较多随机点击行为,推荐性能较完整模型下降相对明显。
消融实验结果表明,本文TGGA-SR模型结合各模块的优势,具有更好的推荐效果。
在基于会话的推荐算法中,目前大多数方法都只是使用会话中商品的信息,而潜在的用户点击商品时间间隔等信息没有利用,导致算法的学习不够充分。针对此问题,本文提出的TGGA-SR模型可以学到更充分的信息,模型的推荐性能用于其它模型。
但是,用户的长期兴趣和短期兴趣对推荐结果也有很大的影响,至于长期兴趣的表示,以及如何权衡长期兴趣与短期兴趣综合推荐,本文未作研究。后续将进一步研究用户的长短期兴趣对模型泛化能力的影响。
广东省重点领域研发计划(2021B0101200002,2019B01018001,2020B0101100001);广东省科技计划项目(2020B1010010010,2019B101001021)。
黄浩文,陈平华. 融合图神经网络和注意力机制的会话推荐模型Session-Based Recommendation Model with Graph Neural Network and Attention Mechanism[J]. 计算机科学与应用, 2022, 12(04): 1108-1121. https://doi.org/10.12677/CSA.2022.124114
https://doi.org/10.1145/3465401
https://doi.org/10.19026/rjaset.5.4644
https://doi.org/10.1109/MC.2009.263
https://doi.org/10.1145/1772690.1772773
https://doi.org/10.1109/TNN.2008.2005605
https://doi.org/10.1145/371920.372071
https://doi.org/10.1145/1864708.1864770
https://doi.org/10.21437/Interspeech.2019-1341
https://doi.org/10.1109/CVPR.2018.00911
https://doi.org/10.48550/arXiv.1511.06939
https://doi.org/10.1145/3132847.3132926
https://doi.org/10.1145/3219819.3219950
https://doi.org/10.48550/arXiv.1609.02907
https://doi.org/10.48550/arXiv.1706.02216
https://doi.org/10.48550/arXiv.1511.05493
https://doi.org/10.1109/MC.2009.263
https://doi.org/10.1016/j.knosys.2018.03.022
https://doi.org/10.1145/2623330.2623623
https://doi.org/10.1609/aaai.v33i01.3301346
https://doi.org/10.1145/3397271.3401319
https://doi.org/10.1145/2988450.2988452