SIGformer论文阅读笔记
SIGformer: Sign-aware Graph Transformer for Recommendation论文阅读笔记
Abstract
现存的问题:
在推荐系统中,大多数基于图的方法都只关注用户的积极反馈,而忽略了有价值的消极反馈。将正反两方面的反馈整合在一起形成一个符号图,可以更全面地了解用户的偏好。然而,现有的将这两种反馈结合起来的方法并不多,而且面临两个主要限制:
- 它们分别处理正面和负面反馈,无法全面利用符号图中的协作信息;
- 它们依赖 MLP 或 GNN 从负面反馈中提取信息,这可能并不有效。
解决方案:
为了克服这些局限性,我们引入了 SIGformer,这是一种新方法,它将转换器架构用于基于符号的图推荐。SIGformer 融合了两种创新的位置编码,可捕捉符号图的频谱属性和路径模式,从而实现对整个图的充分利用。
Introduction
这里介绍负交互也会有丰富的信息,如果一个物品一个用户喜欢一个不喜欢,那么就表明这两个用户的兴趣不一致。如果两个用户都不喜欢同一个物品,那么这两个用户可能有相同的爱好。
由于负面反馈提供了宝贵的协作信息,因此整合正面和负面反馈为增强基于图的推荐提供了一个很有前景的方向。然而,据我们所知,只有少数研究对这一领域进行了调查。这些方法通常从正面和负面反馈中构建两个独立的图,然后从每个图中学习不同的表征,随后合并这些表征进行预测。尽管性能不错,但我们发现了两个显著的局限性:
- 正反馈和负反馈是单独处理的,没有整体考虑:如前所述,图中正反馈的整合提供了丰富的协作信息,反映了用户和项目之间的相似程度。要充分利用这些信息,就必须直接利用整个符号图,而不是单独处理不同的子图。
- MLP 或 GNN 从负图中提取信息的有效性值得怀疑:大多数 GNN,尤其是为推荐量身定制的 GNN(如 LightGCN),都基于同亲假设,即连接的节点很可能是相似的。这一假设在负图中并不成立。同时,MLPs 难以充分利用图结构,并且由于数据稀少,在推荐场景中进行有效训练具有挑战性。
鉴于现有方法的不足,我们认为有必要建立一种能充分利用整个符号图的新架构。我们提出在本方案中利用转换器。事实上,转换器与协同过滤的基本原理高度一致,即根据用户和项目的历史反馈来估计它们之间的相似性,然后汇总这些相似实体的信息进行预测。
虽然转换器很有吸引力,但要使其适应基于符号的图推荐却并非易事。普通转换器只关注通过自我关注实现的语义相似性,缺乏对符号图中协作信息的明确编码。虽然现有的图转换器模型引入了微妙的位置编码来捕捉图结构,但它们既不是专门为符号图设计的,也不是专门为推荐任务设计的。为了应对这些挑战,我们引入了两种为基于符号的图推荐量身定制的新型位置编码:
- 符号感知的频谱编码(SSE):为了整合整个符号图的结构,我们建议利用符号图上的节点频谱表示。具体来说,我们将符号图的拉普拉斯矩阵的低频特征向量作为位置编码。我们的理论分析证明了这一方法的有效性:配备 SSE 的变压器可被解释为低通滤波器,可拉近用户-项目对正反馈嵌入的距离,拉远负反馈嵌入的距离。
- 符号感知的路径编码(SPE):为了进一步捕捉用户和项目之间的协作关系,我们重点关注符号图中的路径模式。我们将这些路径的距离和边的符号编码成可学习的参数,以捕捉这些路径所连接的节点之间的亲和力。这种设计基于我们的直觉,即不同的路径类型反映了不同程度的相似性。
在这些编码的基础上,我们引入了一种名为 SIgn-aware Graph Transformer(SIGformer)的新型推荐方法,该方法善于利用符号图中的协作信息。我们在五个真实数据集上进行了实证实验,验证了该方法的有效性,其效果明显优于现有的基于图的方法。额外的消融研究进一步证实了纳入负反馈的关键作用以及我们专门设计的编码的功效。
本文的贡献如下:
- 我们强调了在基于图形的推荐中整合负反馈的重要性,并提倡将转换器架构应用于基于符号的图形推荐。
- 我们从符号图谱和路径的角度出发,提出了两种创新的符号感知位置编码方式,可充分利用符号感知协作信息。
Method
本文的整体结构如下:
SIGFormer的总览
SIGformer 采用转换器架构来实现标识感知推荐,以转换器取代 GNN,从而偏离了传统的基于图的推荐模式。具体来说,SIGformer 由以下部分组成:
嵌入模块
先把用户和物品转化为一个d维嵌入的向量,作为可学习的参数
符号感知的Transformer模块
与传统的基于 GNN 的方法不同,我们采用多层变换器来捕捉协作信息。对于变换器的第 𝑙层,嵌入信息按如下方式迭代更新:
\(\begin{aligned}&\mathbf{Q}^{(l)}=\mathbf{K}^{(l)}=\mathbf{V}^{(l)}=\mathbf{E}^{(l-1)}\\&\mathbf{E}^{(l)}=\frac12(\mathrm{softmax}(\frac{\mathbf{Q}^{(l)}(\mathbf{K}^{(l)})^T}{\sqrt{d}}+\mathbf{P}_s^{(l)})+\mathrm{softmax}(\mathbf{P}_p^{(l)}))\mathbf{V}^{(l)}\end{aligned}\)
此外,我们还引入了两种位置编码,即\(\mathbf{P}_p^{(l)}\)和\(\mathbf{P}_s^{(l)}\),以明确编码带符号的图形信息,这将在接下来的两个小节中详细介绍。在这里,我们将这两种位置编码分离成不同的 softmax 函数,以减轻其大小差异的影响。
预测模块
与现有的基于图的方法一致,在变压器的𝐿层之后,我们聚合来自每一层的嵌入,以生成最终的嵌入:
\(\mathbf{E}=\frac1{L+1}\sum_{0\leq l\leq L}\mathbf{E}^{(l)}\)
模型预测也是与传统一致
\(\hat{y}_{ui}=\mathbf{e}_u^T\mathbf{e}_i\)
基于符号感知的频谱编码
图谱理论表明,图谱特征(如拉普拉卡特征向量)能有效捕捉图结构。光谱特征还被用来增强虚构图上的 GNN 或变换器模型。受这些成功经验的启发,我们提议利用光谱特征来增强我们的符号感知变换器模型。我们首先将正图和负图的拉普拉斯矢量组合如下:
\(\mathbf{L}=\frac1{1-\alpha}(\mathbf{L}^+-\alpha\mathbf{L}^-)\)
有符号图的拉普拉斯特征向量为:
\(\mathbf{L}=\mathbf{H}^T\mathbf{\Lambda}\mathbf{H},\quad\mathbf{H}=[\mathbf{h}_1,\mathbf{h}_2,\cdots,\mathbf{h}_{n+m}]^T\)
将最小的\(d_h\)个向量表示为\(\mathbf{P}_s^{(l)}=\theta^{(l)}\tilde{\mathbf{H}}^T\tilde{\mathbf{H}},\quad\tilde{\mathbf{H}}=[\mathbf{h}_1,\mathbf{h}_2,\cdots,\mathbf{h}_{d_h}]^T\)用于编码有符号图中的节点关系:
与低通滤波器的联系
这里的目的是阐明提议的频谱编码背后的原理,这部分太数学了,就不细说了,具体细节看原文
基于符号的路径编码
我们进一步利用符号图中的路径信息,它明确反映了用户与项目之间的协作关系。我们的基本直觉是,不同的路径类型表示它们所连接的节点之间不同程度的亲和性。如图 2 所示,我们首先根据路径的长度和路径内边的符号枚举出所有路径类型,并为每种路径类型分配一个唯一的枚举 ID。
该 ID 与特定的路径类型相对应。为了限制潜在的巨大路径类型空间,我们只考虑长度不超过阈值 𝑝 的路径,因为过长的路径往往只能提供有限的协作信息。因此,路径类型的总数为\(N_p=2(2^{L_p}-1).\)。因此,对于图中任何一对节点 (𝑣,𝑤)∈ V × V,我们都可以用一个𝑁𝑝维向量\(o_{vw}\)来表示它们之间的路径关系,其中\(o_{vw}\)的𝑘-个条目表示节点 (𝑣,𝑤) 之间是否存在𝑘类型的路径。我们将这些丰富的路径信息整合到转换器架构中,以捕捉节点的亲和性:
\(p_{vw}^{(l)}=\mathbf{o}_{vw}^T\varphi^{(l)}\)
\(\varphi^{(l)}\)是一个可学习的参数,捕获相应路径所反映的节点亲和度。
与主要编码最短路径的现有图转换器方法不同,我们的方法考虑了所有路径关系,提供了节点关系的整体视图。为方便起见,我们将所有节点对的\(p_{vw}^{(l)}\)汇总到一个矩阵中,称为符号感知路径编码\(P_p^{(l)}\) 。
实现细节
加速采样
鉴于推荐系统(RS)中存在大量的用户-项目组合,遍历所有节点对来计算关注度在计算上是非常困难的。为了应对这一挑战,我们采用了抽样策略。具体来说,我们在签名图上采用随机行走的策略,选取节点进行聚合,同时记录行走路径以计算 \(P_p^{(l)}\) 。对于每个节点 𝑣 ∈ 𝑉,我们会从𝑣的每个邻居开始,执行长度为 𝐿𝑝 的非循环随机行走,以采样与轨迹类型相关的节点集 S𝑣。这样就可以快速更新用户/项目嵌入,如下所示:
\(\mathbf{e}_{v}^{(l)}=\frac{1}{2}\sum_{w\in S_{v}}\left(\mathrm{softmax}\Big(\frac{(\mathbf{e}_{v}^{(l-1)})^{T}\mathbf{e}_{w}^{(l-1)}}{\sqrt{d}}+\theta^{(l)}m_{vw}\Big)\\+\mathrm{softmax}(\varphi_{t_{vw}})\right)\mathbf{e}_{w}^{(l-1)}\)
其中\(m_{vw}\)是矩阵\(\mathbf{M}=\tilde{\mathbf{H}}^T\tilde{\mathbf{H}}\)的第𝑣𝑤个条目,可以预先计算得出,𝑡𝑣𝑤表示当节点𝑤通过随机漫步器进行采样时的路径类型。
优化
损失函数的计算方式如下:
\(\mathcal{L}=-\sum_{(u,i)\in\mathcal{E}^+}\ln\sigma\left(\hat{y}_{ui}-\hat{y}_{uj}\right)+\sum_{(u,i)\in\mathcal{E}^-}\ln\sigma\left(\beta(\hat{y}_{ui}-\hat{y}_{uj})\right)\)
总结
最后来总结一下,整篇文章讲的比较清晰,但是中间有一部分数学内容比较难懂。
整体的主要框架是采用Transformer架构,重点是提出了两种不同的编码方式,一种是符号感知的路径编码,一种是符号感知的频谱编码。不看数学证明的话整体的方法还是很简单的。