基于时间间隔的双通道图神经网络会话推荐方法及系统

文档序号:37614392发布日期:2024-04-18 17:28阅读:11来源:国知局
基于时间间隔的双通道图神经网络会话推荐方法及系统

本发明涉及会话推荐,具体地说是一种基于时间间隔的双通道图神经网络会话推荐方法及系统。


背景技术:

1、随着互联网上信息的爆炸式增长,推荐系统被广泛应用在各种平台,以缓解网络上的信息过载的问题。传统的推荐方法利用用户的身份信息和长期历史交互来推断他们感兴趣的内容,但是在实际场景中为未登录的用户或那些具有短期交互历史的用户进行推荐可能会失败。基于会话的推荐是根据给定的匿名会话序列,按时间顺序预测下一个感兴趣的项目,因此受到了越来越多的关注。基于会话的推荐系统为匿名用户在当前正在进行的会话中的交互行为进行即时推荐,主要任务是预测匿名目标用户的下一次交互行为,如点击、浏览或购买。

2、基于会话的推荐最早的方法采用马尔可夫链,fpmc(factorizing personalizedmarkov chains for next-basket recommendation),通过基于矩阵分解和一阶马尔可夫链组合的方法来捕获序列模式和长期用户偏好,通过对会话序列中的序列模式建模来预测下一个用户的兴趣,以进行推荐。由于其时序假设为下一个项目完全基于前一个项目,所以它不能捕获到长期的序列依赖性,具有一定的局限性。

3、为了克服传统推荐方法的局限性,近年来,能够对序列数据建模的深度学习方法已被用在基于会话的推荐上。基于rnn的模型考虑会话中较长的项目序列,gru4rec(session-based recommendations with recurrent neural networks)首先引入了基于rnn的推荐模型到会话推荐上。sr-gnn(session-based recommendation with graphneural networks)使用gnn来学习复杂的顺序转换相互作用,以模拟局部和全局偏好。但是现有的方法都只关注当前会话,性能容易受到用户行为稀疏性和噪声数据的影响,为了缓解这个问题,一些方法试图利用来自其他会话的协作信息来提高推荐任务的性能。gce-gnn(global context enhanced graph neural networks for session-basedrecommendation)通过对所有会话的成对项目转换建模来学习全局级项目嵌入,并采用反向位置编码和软注意机制的聚合方法来更全面地测量会话序列中每个项目的贡献。cotrec(self-supervised graph co-training for session-based recommendation)通过自监督学习图协同训练来对稀疏的序列进行增强,从而提升推荐模型的性能。尽管这些方法取得了令人满意的成果,但仍存在一些问题。在会话推荐研究方面,如何同时对用户的长期和短期偏好进行学习是研究的关键点,tagnn(target attentive graph neural networksfor session-based recommendation)只考虑了方法仅考虑用户的短期偏好而忽略了长期偏好,regnn(a repeat aware graph neural network for session-basedrecommendations)等工作仅考虑长期偏好而忽略了短期偏好。一些基于图神经网络的会话推荐工作如gc-san(graph contextualized self-attention network for session-based recommendation)虽然同时考虑了用户的长期偏好和短期偏好,但是大多只考虑了当前会话而忽视了来自其他会话的用户偏好信息,这是不全面的。其次,大多数的方法如stamp(stamp:short-term attention/memory priority model for session-basedrecommendation)在获取用户短期偏好方面只考虑到了最后一个项目的影响,而忽略了时间信息的影响。

4、综上所示,现有的研究没有充分考虑到时间间隔可以反映出用户偏好的问题,忽视了时间间隔的重要性;同时如何准确地对用户的长期偏好和短期偏好进行建模是会话推荐的一项重要的挑战;此外,用户的交互会话长度通常较短,因此存在一定的数据稀疏性问题。


技术实现思路

1、本发明的技术任务是提供一种基于时间间隔的双通道图神经网络会话推荐方法及系统,来解决如何利用时间间隔信息判断用户偏好、如何准确地判断用户长期偏好和短期偏好以及数据稀疏性的问题。

2、本发明的技术任务是按以下方式实现的,一种基于时间间隔的双通道图神经网络会话推荐方法,该方法具体如下:

3、根据数据集中的会话数据构建带有时间间隔信息的会话图;

4、利用数据集中的当前会话的邻居会话信息构建全局图;

5、基于时间间隔信息的会话图学习会话级的项目嵌入表示,捕捉用户的短期偏好;

6、基于全局图采用轻量级方法学习全局级的项目嵌入表示,捕捉用户的长期偏好;

7、基于会话级的项目嵌入表示和全局级的项目嵌入表示通过双通道会话表示学习层获取会话级的会话嵌入表示和全局级的会话嵌入表示,同时学习用户的长期偏好和短期偏好,并通过反向位置信息修正用户的长期偏好;

8、将会话级的会话嵌入表示和全局级的会话嵌入表示利用对比学习技术进行数据增强,解决数据稀疏性的影响;

9、将会话级的会话嵌入表示和全局级的会话嵌入表示进行嵌入组合,并进行用户偏好预测及优化。

10、作为优选,根据数据集中的会话数据构建带有时间间隔信息的会话图具体如下:

11、对于会话序列中的所有时间间隔,使用最新的点击项目时间ts,n分别减去所有项目的点击时间,具体为:给定匿名会话序列s,得到ts=[ts,1,ts,2,…,ts,n];将时间间隔表示为|ts,n-ts,k|,并将时间间隔|ts,n-ts,k|除以当前序列中最长的时间间隔(除了0)获得归一化的时间间隔表示rs=[rs,1,rs,2,…,rs,n];其中,1≤k≤n;

12、对于每个会话序列s=[vs,1,vs,2,…,vs,n],构造一个加权有向图模拟当前会话中相邻项目的模式;其中,和εs分别是节点集和边集,rs是对应的时间间隔表示;(vs,i,vs,j)表示在节点vs,i和vs,j之间存在相邻边,(vs,i,vs,j)∈εs;为了在会话图中更精准捕获项目之间的关系,边集包括四种类型的边,分别是ein、eout、ein-out和eself;ein表示输入边,存在从vi到vj的过渡;eout表示输出边;ein-out表示输入边减去输出边,代表存在从vi到vj或vj到vi的边,eself表示在项目本身中有一个循环转换,ein、eout、ein-out和eself有助于在会话级别捕获项目之间的关系;

13、创建一个初始嵌入矩阵w0,将每个节点vs,i映射到向量中;其中,d是节点的嵌入维数;同时,将时间间隔嵌入到相同的维度中,表示为

14、利用数据集中的当前会话的邻居会话信息构建全局图具体如下:

15、构建全局图提取所有会话中项目的全局信息,并将全局信息用于学习所有会话中的项目嵌入;

16、设是全局图;其中,表示节点集;εg是所有会话序列中相邻项构成的边,集合表示邻域,ε为项目的邻域范围;

17、当邻域集内相邻项目的距离d≤ε时,设邻域集是无向的,则全局图是一个无向的加权图。

18、作为优选,基于时间间隔信息的会话图学习会话级的项目嵌入表示,捕捉用户的短期偏好具体如下:

19、考虑会话内项目时间间隔问题,将时间间隔作为位置嵌入与项目向量相结合,进一步增强项目之间的关系;具体为:对于会话图中的每个项目特征使用连接操作合并相应的时间间隔特征并使用合适的核函数转换时间间隔,时间间隔增强嵌入向量用如下形式表示:

20、

21、其中,表示可学习的参数矩阵;tanh为双曲正切激活函数;z(·)表示指数运算,公式形式表示为a和b表示核函数的参数;

22、获取时间间隔信息时间间隔增强嵌入向量后,从结点vs,i的邻居聚合信息,并为邻居分配不同的注意权重,并线性组合结点vs,i的邻居获得每个节点的输出特征公式如下:

23、

24、其中,表示vs,i的邻居vs,j的时间间隔增强嵌入向量;表示控制相邻项目重要性权重的系数,由于会话图中项目的邻居对自身的重要性不同,利用注意机制学习不同节点之间的权重,注意力系数通过元素乘积和非线性变换计算,公式如下:

25、

26、表示节点vj的特征对节点vi的重要性,选择leakyrelu作为激活函数;rij表示vs,i和vs,j之间的关系;a*是权重向量,会话图中有四种类型的边关系,对于不同的关系,训练四个权重向量分别为ain、aout、ain-out和aself,ain、aout、ain-out和aself四个权重向量都使用计算注意力系数;由于会话图中不是每两个节点都连接,只计算节点的是vs,i的一阶邻居;

27、为了使不同节点之间的系数具有可比性,通过softmax函数对注意力权重进行归一化,公式如下:

28、

29、通过对注意力权重归一化处理得到时间间隔信息增强的会话级项目嵌入会话级项目嵌入由当前会话中邻居和项目本身的特征聚合而成;

30、作为优选,基于全局图采用轻量级方法学习全局级的项目嵌入表示,捕捉用户的长期偏好具体如下:

31、在全局级项目表示学习部分采用轻量级方法,使用简单的加权和聚合器,放弃了特征变换和非线性激活函数,以缓解过平滑问题对聚合过程带来的影响;图卷积运算公式如下:

32、

33、其中,表示项目vs,i在k层传播后的嵌入;表示项目vs,i的邻居集合;表示项目vs,j的邻居集合;

34、在k层图卷积后,项目vs,i的最终嵌入是在各层获取的嵌入的组合,公式如下:

35、

36、其中,αk≥0是分配给第k层的超参数,表示对应层在构成最终嵌入中的重要性,将αk均匀地设置为1/(k+1),即可得到全局级项目嵌入

37、作为优选,基于会话级的项目嵌入表示和全局级的项目嵌入表示通过双通道会话表示学习层获取会话级的会话嵌入表示和全局级的会话嵌入表示,同时学习用户的长期偏好和短期偏好,并通过反向位置信息修正用户的长期偏好具体如下:

38、使用会话级项目嵌入学习获得的项目嵌入学习带有时间间隔信息的会话内嵌入,将会话序列输入图神经网络后,获取会话中涉及的项目的表示,即其中,l是当前会话序列的长度;通过计算会话的项目表示的平均值获取会话信息,计算平均值可以减少会话表示的维度和计算复杂度,综合考虑会话中的多个项目,公式如下:

39、

40、其中,s′s表示会话级项目表示的平均值;

41、利用软注意力机制学习相应的权重,更好地捕捉会话中不同项目之间的重要性和相关性,公式如下:

42、

43、其中,βi为权重系数;w3,q1和b1标识可学习的参数;

44、通过线性组合项目表示获取会话级的会话嵌入表示,公式如下:

45、

46、其中,ss表示时间间隔信息增强的会话级的会话嵌入表示,作为对比学习的会话图;

47、使用全局级的项目嵌入表示学习获取全局级的会话嵌入表示,会话中涉及的项目表示为构造可学习的位置嵌入矩阵其中,是设定位置i的位置向量;l是当前会话序列的长度;

48、通过级联和非线性变换集成位置信息yi,公式如下

49、

50、其中,w5和b2表示可训练参数;

51、通过计算全局级的会话项目表示的平均值获取会话信息s′g,公式如下:

52、

53、利用软注意力机制学习相应的权重γi,公式如下:

54、

55、其中,q2和b3表示可学习的参数;

56、通过线性组合项目表示获取全局级的会话嵌入表示sg,公式如下:

57、

58、其中,sg表示全局级的会话嵌入表示,作为对比学习的全局图。

59、作为优选,将会话级的会话嵌入表示和全局级的会话嵌入表示利用对比学习技术进行数据增强具体如下:

60、将双通道会话表示学习层视为表征会话不同方面的两种观点,对比会话图和全局图学习的会话级的会话嵌入表示和全局级的会话嵌入表示,具体为:正样本和负样本的计算都是通过点积来衡量两个向量sg和ss之间的相似性,正样本表示正确的相关性,负样本表示错误的相关性;通过使用行和列洗牌破坏正样本获得的负样本生成样本对;再采用infonce将标准二元交叉熵损失作为学习目标,公式如下:

61、

62、其中,或代表损坏的样本;σ表示sigmoid函数,对比会话级和和全局级两种视图学习的两组会话嵌入,最大化在不同视图中学习的会话嵌入之间的交互信息,实现了数据增强,一定程度上解决了数据稀疏性的问题。

63、更优地,将会话级的会话嵌入表示和全局级的会话嵌入表示进行嵌入组合,并进行用户偏好预测及优化具体如下:

64、获取全局级的会话嵌入表示sg和会话级的会话嵌入表示ss后,把全局级的会话嵌入表示sg作为用户的长期偏好,会话级的会话嵌入表示ss作为用户的短期偏好,将全局级的会话嵌入表示sg和会话级的会话嵌入表示ss线性组合成最终的会话表示,公式如下:

65、s=sg+sl;

66、其中,会话表示s是双通道会话嵌入学习的最终输出,会话表示s考虑了两个层次的转换信息来表示用户的特定意图;

67、获取用户偏好后计算每个候选项目的分数,通过对每个候选项目的分数进行排序推荐下一个点击项目,具体如下:

68、首先使用点积;

69、^

70、然后应用softmax函数对分数进行概率转换,得到最终的预测输出向量y,公式如下:

71、

72、实际值y和预测结果之间的交叉熵优化函数定义为:

73、

74、其中,交叉熵优化函数添加l2正则化以防止过拟合;ω是所有参数的集合;λ是正则化参数;yi=1表示用户点击了对应项目;

75、将对比损失和交叉熵损失统一到学习目标中,公式如下:

76、

77、一种基于时间间隔的双通道图神经网络会话推荐系统,该系统用于实现上述的基于时间间隔的双通道图神经网络会话推荐方法;该系统包括:

78、构建模块一,用于根据数据集中的会话数据构建带有时间间隔信息的会话图;

79、构建模块二,用于利用数据集中的当前会话的邻居会话信息构建全局图;

80、嵌入表示获取模块一,用于基于时间间隔信息的会话图学习会话级的项目嵌入表示,捕捉用户的短期偏好;

81、嵌入表示获取模块二,用于基于全局图采用轻量级方法学习全局级的项目嵌入表示,捕捉用户的长期偏好;

82、嵌入表示获取模块三,用于基于会话级的项目嵌入表示和全局级的项目嵌入表示通过双通道会话表示学习层获取会话级的会话嵌入表示和全局级的会话嵌入表示,同时学习用户的长期偏好和短期偏好,并通过反向位置信息修正用户的长期偏好;

83、数据增强模块,用于将会话级的会话嵌入表示和全局级的会话嵌入表示利用对比学习技术进行数据增强,解决数据稀疏性的影响;

84、嵌入组合模块,用于将会话级的会话嵌入表示和全局级的会话嵌入表示进行嵌入组合,并进行用户偏好预测及优化。

85、一种电子设备,包括:存储器和至少一个处理器;

86、其中,所述存储器上存储有计算机程序;

87、所述至少一个处理器执行所述存储器存储的计算机程序,使得所述至少一个处理器执行如上述的基于时间间隔的双通道图神经网络会话推荐方法。

88、一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序可被处理器执行以实现如上述的基于时间间隔的双通道图神经网络会话推荐方法。

89、本发明的基于时间间隔的双通道图神经网络会话推荐方法及系统具有以下优点:

90、(一)为了更精准地学习用户的长期偏好和短期偏好,本发明分别从全局图和会话图学习两个层次的项目嵌入,将时间间隔考虑到用户偏好中;

91、(二)为了同时考虑用户的长期偏好和短期偏好,本发明采用了双通道的会话表示学习层学习会话级的会话嵌入和全局级的会话嵌入分别作为用户的短期偏好和长期偏好,并通过反向位置信息修正用户的长期偏好,同时考虑了用户的长期偏好和短期偏好;

92、(三)本发明通过用注意力权重聚合当前会话中的每个项目,有效提升推荐的准确性;

93、(四)本发明可以为电商平台的匿名用户进行推荐,通过将会话序列构造为具有时间间隔的会话图,利用其他会话的信息,构建全局图,考虑到了时间间隔信息对用户偏好的影响;

94、(五)本发明使用对比学习技术进行数据增强来弥补数据稀疏性的影响解决了数据稀疏性的问题。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1