论文解读(LightGCN)《LightGCN: Simplifying and Powering Graph Convolution Network for Recommendation》

论文信息

论文标题:LightGCN: Simplifying and Powering Graph Convolution Network for Recommendation
论文作者:Xiangnan He, Kuan Deng, Xiang Wang, Yan Li, Yongdong Zhang, Meng Wang
论文来源:2020, SIGIR
论文地址:download 
论文代码:download 

1 Introduction

  舍弃了GCN的特征变换(feature transformation)和非线性激活(nonlinear activation),只保留了领域聚合(neighborhood aggregation )。 

   出发点:GCN 成为协同过滤的最新技术,但是有效性的原因没有得到充分证明。GCN 的两个设计-特征转换、非线性激活 对协作过滤的性能几乎没有贡献,且会增加培训的难度并降低推荐性能;

  贡献:

    • 实验证明,GCN 中的 特征变换、非线性激活对协同过滤的有效性没有积极的影响;
    • 简化了 GCN 组件;
    • 通过实验对比 LightGCN 和 NGCF,阐明了 LightGCN 的合理性;

2 Prelimiaries

  猜想:在半监督节点分类中,每个节点都有丰富的语义特征,进行多层非线性变换有利于特征学习。然而,在协同过滤中,输入只有 user-item 的交互邻接矩阵,没有额外的语义输入,在这种情况下执行执行多个非线性变换不会有助于学习更好的特征,且带来了训练的难度;

  NGCF 利用用户项交互图来传播嵌入如下:

    $\begin{array}{l}\mathbf{e}_{u}^{(k+1)}=\sigma\left(\mathbf{W}_{1} \mathbf{e}_{u}^{(k)}+\sum\limits _{i \in \mathcal{N}_{u}} \frac{1}{\sqrt{\left|\mathcal{N}_{u} \| \mathcal{N}_{i}\right|}}\left(\mathbf{W}_{1} \mathbf{e}_{i}^{(k)}+\mathbf{W}_{2}\left(\mathbf{e}_{i}^{(k)} \odot \mathbf{e}_{u}^{(k)}\right)\right)\right) \\\mathbf{e}_{i}^{(k+1)}=\sigma\left(\mathbf{W}_{1} \mathbf{e}_{i}^{(k)}+\sum\limits _{u \in \mathcal{N}_{i}} \frac{1}{\sqrt{\left|\mathcal{N}_{u} \| \mathcal{N}_{i}\right|}}\left(\mathbf{W}_{1} \mathbf{e}_{u}^{(k)}+\mathbf{W}_{2}\left(\mathbf{e}_{u}^{(k)} \odot \mathbf{e}_{i}^{(k)}\right)\right)\right)\end{array}$

  NGCF 消融实验:

    • $\text{NGCF-f}$ 删除特征转换矩阵 $\mathbf{W}_{1}$ and $\mathbf{W}_{2}$;
    • $\text{NGCF-n}$ 删除非线性激活函数 $\sigma $;
    • $\text{NGCF-fn}$ 删除特征转换矩阵 和 非线性激活函数;

  实验:

  

  

3 Method

模型框架:

  

3.1 LightGCN

  邻域聚合:

    $\mathbf{e}_{u}^{(k+1)}=\mathrm{AGG}\left(\mathbf{e}_{u}^{(k)},\left\{\mathbf{e}_{i}^{(k)}: i \in \mathcal{N}_{u}\right\}\right) \quad\quad\quad(2)$

3.1.1 Light Graph Convolution (LGC)

  在 LightGCN中,不再使用特征变换和非线性激活,对称归一化加权聚合:

    ${\large \begin{array}{l}\mathbf{e}_{u}^{(k+1)}=\sum\limits _{i \in \mathcal{N}_{u}} \frac{1}{\sqrt{\left|\mathcal{N}_{u}\right|} \sqrt{\left|\mathcal{N}_{i}\right|}} \mathbf{e}_{i}^{(k)} \\\mathbf{e}_{i}^{(k+1)}=\sum\limits _{u \in \mathcal{N}_{i}} \frac{1}{\sqrt{\left|\mathcal{N}_{i}\right|} \sqrt{\left|\mathcal{N}_{u}\right|}} \mathbf{e}_{u}^{(k)}\end{array}} \quad\quad\quad(3)$

3.1.2 Layer Combination and Model Prediction

  最终的用户、物品嵌入(加权):

    $\mathbf{e}_{u}=\sum\limits _{k=0}^{K} \alpha_{k} \mathbf{e}_{u}^{(k)} ; \quad \mathbf{e}_{i}=\sum\limits _{k=0}^{K} \alpha_{k} \mathbf{e}_{i}^{(k)} \quad\quad\quad(4)$

  其中:$\alpha_{k} = 1 /(K+1) $;

  注意:不设计特殊的组件来优化 $\alpha_{k}$ 。

  执行图层组合来得到最终表示的原因:

    • 随着层数增加,将导致过平滑的问题,故不能简单使用最后一层的嵌入;  
    • 不同层捕获了不同的语义信息;    
    • 将不同层的嵌入加权和,起到图卷积自连接的效果;  

  模型预测被定义为用户和项目最终表示的内积:

    $\hat{y}_{u i}=\mathbf{e}_{u}^{T} \mathbf{e}_{i}  \quad\quad\quad(5)$

3.1.3 Matrix Form

  用户-物品交互矩阵(user-item interaction matrix)定义为:$\mathbf{R} \in \mathbb{R}^{M \times N}$,其中 $M$ 和 $N$ 分别代表着用户、物品的数量。如果 $R_{u i}= 1$ ,则说明用户 $u$ 和物品 $i$ 有交互,否则为 $0$。因此,得到用户-物品图(user-item graph)的邻接矩阵:

    $\mathbf{A}=\left(\begin{array}{cc}\mathbf{0} & \mathbf{R} \\\mathbf{R}^{T} & \mathbf{0}\end{array}\right)   \quad\quad\quad(6)$

  注意:第 $0$ 层的嵌入矩阵 $\mathbf{E}^{(0)} \in \mathbb{R}^{(M+N) \times T}$,度矩阵 $\mathbf{D} \in R^{(M+N) \times(M+N)}$ 中每个元 $D_{i i}$ 表示邻接矩阵 $A$ 的第 $i$ 行向量中的非零项的数目。

  LGC 的矩阵等价形式为:

    $\mathbf{E}^{(k+1)}=\left(\mathbf{D}^{-\frac{1}{2}} \mathbf{A} \mathbf{D}^{-\frac{1}{2}}\right) \mathbf{E}^{(k)} \quad\quad\quad(7)$

  最后,得到用于模型预测的最终嵌入矩阵为:

    $\begin{aligned}\mathbf{E} &=\alpha_{0} \mathbf{E}^{(0)}+\alpha_{1} \mathbf{E}^{(1)}+\alpha_{2} \mathbf{E}^{(2)}+\ldots+\alpha_{K} \mathbf{E}^{(K)} \\&=\alpha_{0} \mathbf{E}^{(0)}+\alpha_{1} \tilde{\mathbf{A}} \mathbf{E}^{(0)}+\alpha_{2} \tilde{\mathbf{A}}^{2} \mathbf{E}^{(0)}+\ldots+\alpha_{K} \tilde{\mathbf{A}}^{K} \mathbf{E}^{(0)}\end{aligned}  \quad\quad\quad(8)$

3.2 Model Analysis

3.2.1 Relation with SGCN

  在[40]中,作者论证了GCN在节点分类中的不必要的复杂性,并提出了SGCN,它通过去除非线性并将多个权值矩阵压缩为一个权值矩阵来简化GCN。SGCN中的图卷积定义为:

    $\mathbf{E}^{(k+1)}=(\mathbf{D}+\mathbf{I})^{-\frac{1}{2}}(\mathbf{A}+\mathbf{I})(\mathbf{D}+\mathbf{I})^{-\frac{1}{2}} \mathbf{E}^{(k)}  \quad\quad\quad(9)$

  其中,$\mathbf{I} \in \mathbb{R}^{(M+N) \times(M+N)}$ 是一个单位矩阵,它被添加在 $A$ 上以包含自连接。在接下来的分析中,为了简单起见,我们省略了 $ (\mathbf{D}+\mathbf{I})^{-\frac{1}{2}} $ 项,因为它只重新缩放嵌入。在SGCN中,在最后一层获得的嵌入用于下游预测任务,可以表示为:【牛顿二项展开式】

    $\begin{aligned}\mathbf{E}^{(K)} &=(\mathbf{A}+\mathbf{I}) \mathbf{E}^{(K-1)}=(\mathbf{A}+\mathbf{I})^{K} \mathbf{E}^{(0)} \\&=\left(\begin{array}{c}K \\0\end{array}\right) \mathbf{E}^{(0)}+\left(\begin{array}{c}K \\1\end{array}\right) \mathbf{A} \mathbf{E}^{(0)}+\left(\begin{array}{c}K \\2\end{array}\right) \mathbf{A}^{2} \mathbf{E}^{(0)}+\ldots+\left(\begin{array}{c}K \\K\end{array}\right) \mathbf{A}^{K \mathbf{E}^{(0)}}\end{aligned}    \quad\quad\quad(10)$

  上述推导表明,在 $A$ 中插入自连接并在其上传播嵌入,本质上等同于在每个LGC层上传播的嵌入的加权和。

3.2.2 Relation with APPNP

  在工作[24]中,作者将 GCN 与Personalized PageRank[15] 联系起来,提出了一种名为 APPNP 的 GCN 变体,它可以远程传播而不会有过度平滑的风险。受个性化 PageRank 中的传送设计的启发,APPNP 补充了每个传播层的起始特征(即第 $0$ 层嵌入),这可以平衡保持局部性的需要(即保持靠近根节点以缓解过度平滑)和利用来自一个大邻域的信息。在APPNP中的传播层被定义为:

    $\mathbf{E}^{(k+1)}=\beta \mathbf{E}^{(0)}+(1-\beta) \tilde{\mathbf{A}} \mathbf{E}^{(k)}   \quad\quad\quad(11)$

  其中 $\beta$ 是控制传播中控制起始特征保留的传送概率。$\tilde{\mathbf{A}} $ 为归一化邻接矩阵。在APPNP中,最后一层用于最终的预测,即:

    $\begin{aligned}\mathbf{E}^{(K)} &=\beta \mathbf{E}^{(0)}+(1-\beta) \tilde{\mathbf{A}} \mathbf{E}^{(K-1)} \\&=\beta \mathbf{E}^{(0)}+\beta(1-\beta) \tilde{\mathbf{A}} \mathbf{E}^{(0)}+(1-\beta)^{2} \tilde{\mathbf{A}}^{2} \mathbf{E}^{(K-2)} \\&=\beta \mathbf{E}^{(0)}+\beta(1-\beta) \tilde{\mathbf{A}} \mathbf{E}^{(0)}+\beta(1-\beta)^{2} \tilde{\mathbf{A}}^{2} \mathbf{E}^{(0)}+\ldots+(1-\beta)^{K} \tilde{\mathbf{A}}^{K} \mathbf{E}^{(0)}\end{aligned}   \quad\quad\quad(12)$

  结合 $\text{Eq.8}$,我们可以看到,通过相应地设置 $\alpha_{k}$,LightGCN可以完全恢复APPNP使用的预测嵌入。因此,LightGCN共享了APPNP在对抗过平滑方面的优势——通过正确地设置 $\alpha$,我们允许使用一个大的 $K$ 来进行具有可控过平滑的远程建模。另一个小的区别是,APPNP将自连接添加到邻接矩阵中。然而,正如我们之前所展示的,由于不同层的加权和,这是多余的。

3.2.3 Second-Order Embedding Smoothness

  由于LightGCN 的线性性质,我们可以更深入地了解它是如何平滑嵌入的。在这里,我们分析了一个 $2$ 层的 LightGCN 来证明其合理性。以用户方面为例,直观地说,二阶平滑在交互物品上有重叠的用户。更具体地说,我们有:

    $\mathbf{e}_{u}^{(2)}=\sum\limits _{i \in \mathcal{N}_{u}} \frac{1}{\sqrt{\left|\mathcal{N}_{u}\right|} \sqrt{\left|\mathcal{N}_{i}\right|}} \mathbf{e}_{i}^{(1)}=\sum\limits _{i \in \mathcal{N}_{u}} \frac{1}{\left|\mathcal{N}_{i}\right|} \sum\limits _{v \in \mathcal{N}_{i}} \frac{1}{\sqrt{\left|\mathcal{N}_{u}\right|} \sqrt{\left|\mathcal{N}_{v}\right|}} \mathbf{e}_{v}^{(0)}     \quad\quad\quad(13)$

  我们可以看到,如果另一个用户 $v$ 与目标用户 $u$ 有协同交互,那么 $v$ 在 $u$ 上的平滑强度可以用系数(否则为0)来衡量:

    $c_{v->u}=\frac{1}{\sqrt{\left|\mathcal{N}_{u}\right|} \sqrt{\left|\mathcal{N}_{v}\right|}} \sum\limits _{i \in \mathcal{N}_{u} \cap \mathcal{N}_{v}} \frac{1}{\left|\mathcal{N}_{i}\right|}    \quad\quad\quad(14)$

  这个系数是相当可解释的:二阶邻域 $v$ 对 $u$ 的影响由 1)共交互物品的数量越多越大;2)共互动物品的受欢迎程度越低(即用户个性化偏好越明显)越大;3) $v$ 的活动越少,越活跃越大。这种可解释性很好地满足了CF在测量用户相似度时的假设,并证明了LightGCN的合理性。

3.3 Model Training

  LightGCN的可训练参数只是第 $0$ 层的嵌入 $\Theta=\left\{\mathbf{E}^{(0)}\right\}$。我们采用 Bayesian Personalized Ranking (BPR)损失,一种成对的损失,鼓励对观察到的条目的预测高于未观察到的对应项:

    $L_{B P R}=-\sum\limits _{u=1}^{M} \sum\limits _{i \in \mathcal{N}_{u}} \sum\limits _{j \notin \mathcal{N}_{u}} \ln \sigma\left(\hat{y}_{u i}-\hat{y}_{u j}\right)+\lambda\left\|\mathbf{E}^{(0)}\right\|^{2}    \quad\quad\quad(15)$

4 Experiments

数据集

  

对比实验

  

5 Conclusion

  在这项工作中,我们提出了不必要的复杂设计,并进行了实证研究来证明这一论点。我们提出了LightGCN,它由两个基本组件组成:光图卷积和层组合。在光图卷积中,我们放弃了特征变换和非线性激活——GCN 中的两种标准操作,但不可避免地增加了训练的难度。在层组合中,我们将一个节点的最终嵌入作为其嵌入对所有层的加权和,证明了它包含了自连接的影响,有助于控制过平滑。我们进行了实验来证明LightGCN在简单方面的优点:更容易被训练,更好的泛化能力,更有效。

 

posted @ 2022-05-14 15:05  图神经网络  阅读(854)  评论(0编辑  收藏  举报
Live2D