文章目录
Sequence Recommendation with Graph Neural Networks
题目:基于图神经网络的序列推荐
作者:Jianxin Chang, Chen Gao, Yu Zheng, Yiqun Hui, Yannan Niu, Yang Song, Depeng Jin, Yong Li
来源:SIGIR‘21
关键词:Sequential Recommendation, Graph Neural Networks, Dynamic User Preferences
研究对象
序列推荐试图通过利用用户的历史行为序列来预测用户的下一个行为,例如新闻、视频、广告等。与以静态方式建模用户偏好的传统推荐任务不同,序列推荐能够捕获 用户的演化和动态偏好。例如,用户可能更喜欢仅在世界杯期间观看足球新闻,这可以被视为一种短期偏好。
面临的问题
- 丰富的历史序列中的用户行为往往是隐含的、有噪声的偏好信号,它们不能充分反映用户的实际偏好。
- 用户的动态偏好通常会随着时间的推移而快速变化,即使我们已经从隐含的和有噪声的行为中提取 了用户偏好,但建模它们在历史中如何变化以及估计当前时间的激活偏好仍然是一个挑战。
作者的方法
提出了一个名为SURGE (short for SeqUential Recommendation with Graph neural nEtworks) 的 图神经网络模型来解决这两个问题。
- SURGE通过基于度量的学习将松散的项目序列重构为紧密的项目-项目兴趣图,将长期用户行为中 不同类型的偏好整合到图中的簇(cluster)中。
- 通过在兴趣图中形成密集的簇,区分用户的核心兴趣。
- 在构建的图上执行簇感知和查询感知的图卷积传播和图池化。它从有噪声的用户行为序列中动态融合和提取用户当前激活的核心兴趣.
核心兴趣:位于簇中心的节点。
贡献
- 从一个新的角度来研究序列推荐,考虑了隐含信号行为和快速变化的偏好。
- 通过在已构建的项目-项目兴趣图上设计基于图神经网络的模型,将用户行为中的隐含信 号聚合为显式信号。然后设计动态池化来为推荐过滤和保留的激活核心偏好。
- 从现实应用中收集的两个大规模数据集上进行了大量实验。实验结果表明,与最先进的序列推荐方法相比,性能有了显著的提高。进一步的研究也验证了方法能够有效地对长行为序列进行建模。
Frame Work
SURGE模型,它由以下四个部分组成:
-
兴趣图构建。通过基于度量学习将松散的项目序列重构为紧密的项目-项目兴趣图,我们明确地整 合和区分了长期用户行为中不同类型的偏好。
-
兴趣融合图卷积层。在所构造的兴趣图上的图卷积传播动态地融合了用户兴趣,增强了重要行为, 削弱了噪声行为。
-
兴趣提取图池化层。考虑到用户在不同时刻的不同偏好,进行动态图池化操作,自适应地保留动态 激活的核心偏好。
-
预测层。在合并的图被展平成简化的序列之后,我们对增强的兴趣信号的演化进行建模,并预测用 户有高概率交互的下一个项目。
A.
- 构建图的方法是按照两节点的相似度,当相似度大于某个阈值时,就将二者连接起来。
- 序列推荐传统的图构建方法:同一个用户交互过的项目节点按照交互的先后顺序用边连接起 来。
B.
本层是为了学习图中每一个节点的表示;
通过簇感知学习注意力系数:计算每一个节点和簇嵌入(该节点和它所有邻居节点嵌入的平均值)之间的相似度;
通过查询感知学习注意力系数:计算邻居节点和待推荐节点之间的相似度;
将上述两种方法学到的注意力系数相加得到聚合的注意力系数,进而得到图中所有节点的表 示。
C.
- 将兴趣图按照簇分配矩阵划分为若干个簇(簇的个数是一个超参数);
- 计算机中用n*k的矩阵表示,非零位置表示该节点属于的簇的类别。不属于任何簇的节点称之为离群点。
D.
- 把簇按照簇中项目被交互的时间顺序展开成一个簇序列;
- 把簇嵌入按照类似GRU的方法进行聚合,接着与原始的图拼起来,最终得到用户的表示。
方法
兴趣图的构建
- 按照基于度量的方法来构建图,其中度量方法是加权的余弦相似度函数——公式1。加权的意 义即在计算节点的相似度时侧重考虑某一个属性;
- 扩散到多头,即考虑不同的属性,然后得到多个M矩阵,再将这些M矩阵取平均;
- 图结构会随着项目嵌入的变化而变化——M矩阵在变;
- 图稀疏化操作的原因是前面得到的M矩阵中每一个位置都有值,此时的图就会是一个完全图。这显然不是我们想要的,因此要对图进行稀疏化的操作,去掉噪声。
- 整图的相对排序策略,意思是取出矩阵中大于某个阈值的元素;
- 节点邻居的相对排序策略, 意思是对于矩阵的每一行,取出这一行的前k个元素,也因此,这种方法生成的图的每个节点 具有相同的度.
兴趣融合图卷积层
- 下一小节会提到,簇的个数是一个人为给定的超参数,并非机器学习来的。因此在本小节可 以理解为图中有n个簇,每个节点都是自己簇的簇中心;
- 注意:将k跳邻居定义为簇的感受野。
兴趣抽取图池化层
- 通常人为设置的超参数m即簇的个数是远远小于节点的个数的;
- 当概率均等时(目标节点属于某一个簇的可能性一样),熵值最大,最大值为 log n \log n logn;当目标节点确定属于某一个簇时(对于第i行的元素,第j列为1,其他位置元素为0),熵值最小, 最小值为0;
- 相对位置正则化,簇按照时间顺序展开,簇中的大多数节点所表示的项目交互的时间越靠前,则该簇的排序位置越靠前。
预测层