前言
- 发表在SIGIR2020上的基于GNN进行序列推荐的研究
-
从全局上下文角度对原有的GNN工作进行改进
基于会话的推荐(Session-based,SBR)是一项具有挑战性的任务,其目的是基于匿名行为序列推荐物品。
现有的 SBR 模型只基于当前会话进行用户偏好建模,而没有利用其他会话,这些会话可能包含与当前会话相关和不相关的物品转换(item transition)。本文提出了一种全局上下文增强图形神经网络(GCE-GNN),以更精细的方式(in a more subtle way)利用所有会话中的物品转换,更好地推断出用户对当前会话的偏好。
具体来说,GCE-GNN 分别从会话图(session graph)和全局图(global graph)中学习了两个层次的物品嵌入: (i)会话图,即通过在当前会话中建模成对物品转换来学习会话级物品嵌入; (ii)全局图,即通过在所有会话中建模成对物品转换来学习全局级物品嵌入。
引言
传统的推荐算法(CF/CB)依赖用户属性和长期历史交互,在现实场景中可能表现不好,当用户没有登录或者只有短期交互数据,信息有限时。
session-based rec基于给定的匿名行为序列预测下一个感兴趣的物品。早期研究主要是分为两类:基于相似度的(similarity-based)和基于马尔可夫链的(chain-based):
similarity-based: 严重会话/序列中物品的共现信息,忽略了序列行为模型(sequential patterns)。
chain-based:推导所有可能的序列,计算复杂度高。
现在基于DL的方法使用pair-wise item-transition 信息来建模用户偏好,这些方法存在一些问题:
1、大部分方法基于RNN,按照时序有序地提取会话中pairwise item-transition信息。然而,一个会话可能包含多个用户选择甚至噪声,因此这些方法可能不足以生成所有正确的依赖关系,这些依赖关系的缺点是无法用嵌入建模转换模式的复杂内在顺序。
2.基于自我注意机制的GNN方法,如 SR-GNN ,通过根据session的每个物品与最后一个物品之间的pairwise item-transition来计算相对重要性,学习整个session的表征,而效果在很大程度上取决于最后一个物品与当前session用户偏好的相关性。
-
这些方法忽略了来自其他session中有用的item-transition模型,只基于当前会话进行建模。 CRSM模型(2019)从最近m个会话中整合协同信息来增强当前会话的表征,但是同时将其他序列中无关的信息也引入到当前session,可能影响模型效果(deteriorate)。
如上图所示,使用其他会话中的物品转换信息可能辅助当前session的推荐;但同时也可能引入噪声,即无关的物品。
Preliminaries
1.问题定义
给定物品集合,给定当前session S,推荐最可能被当前会话用户点积的TopN个物品
session graph & global graph
session graph: 学习当前session内成对近邻物品,每个session构成一个有向图,同时包含一个自环
global graph:建模全局的item transition information,通过整合所有session中的成对的item transition来构建大图,将所有物品对链接起来,打破了序列独立性假设。:Neighbor Set: 对于当前session中的物品,近邻集合即在一定步长内交互过的物品:
global-level item transition可以定义为:
为了计算效率,对于每个节点,仅保留权重TopN的边,构成了一个无向图,在测试阶段,该图结构不会动态更新。
模型方法
1. Global-level Item Representation Learning
对global graph进行构图处理,消息构成,对当前节点的近邻集合节点进行消息计算:
通过这种方式,一个物品的 k 阶表示是它的初始表示和它的邻居的混合,最高可达 k 跳。这样可以将更有效的消息合并到当前会话的表示中。
2. Session-level Item Representation Learning
对于session graph,同样使用注意力机制来学习不同节点间的权重并给不同的关系设置对应的embedding
3. Session Representation Learning
对于每个节点,通过如下sum pooling得到:与以往主要集中在最后一物品的工作不同,本文提出了一个更全面的策略,以了解每一部分对预测的贡献。在本文的方法中,会话表示是基于会话中涉及的所有项构建的。不同项目对下一个预测的贡献是不同的。
直观地说,会话中稍后点击的物品更能代表用户的当前首选项,这表明它们对于推荐的重要性更大。(考虑位置信息)
此外,在当前会话中找到用户的主要目的和过滤噪声也很重要。因此,我们结合反向位置信息和会话信息,以做出更好的预测。
将位置信息和节点信息融合,并通过和会话信息进行attention计算得到最终的结果(并非以往与最后一个物品的表征进行注意力计算的做法)
完整模型图如下:实验结果
小结
本文与之前的SR-GNN等工作相比,考虑了全局信息的影响,同时分析了加入其他session信息的利弊,利用近邻节点进行图构建,并在具体的建模时通过合理的设计来最大化利用相关物品,降低噪声物品的影响,总体工作还是比较有趣的。