UltraGCN: Ultra Simplification of Graph Convolutional Networks for Recommendation

  • Kelong Mao, Jieming Zhu, Xi Xiao, et al. UltraGCN: Ultra Simplification of Graph Convolutional Networks for Recommendation[C]. In CIKM 2021.
  • 中国人民大学高瓴人工智能学院、清华大学鹏程实验室

    摘要(Abstract)

    随着最近图卷积网络(GCNS)的成功,它们被广泛应用于推荐,并取得了令人印象深刻的性能改进。GCNS的核心在于其聚合邻域信息的消息传递机制。然而,我们观察到,在训练过程中,消息传递在很大程度上减缓了GCNS的收敛,特别是对于大规模的推荐系统,这阻碍了它们的广泛采用。LightGCN早期尝试通过省略功能转换和非线性激活来简化GCNS以进行协作过滤。在本文中,我们进一步提出了一种超简化的GCNS(称为UltraGCN),它跳过了无限层的消息传递来实现高效的推荐。与显式消息传递不同,UltraGCN通过约束损失直接逼近无限层图卷积的极限。同时,UltraGCN允许更适当的边权重分配和灵活调整不同类型关系之间的相对重要性。这最终产生了一个简单但有效的UltraGCN模型,该模型易于实现,训练效率高。在四个基准数据集上的实验结果表明,UltraGCN不仅性能优于最先进的GCN模型,而且比LightGCN的加速比高出10倍以上。

    关键词(Keywords)

    推荐系统、协同过滤、图卷积网络

    1 引言(Introduction)

    如今,个性化推荐已经成为一种流行的方式,帮助用户在电子商务、在线新闻和社交媒体等各种应用中找到他们感兴趣的信息。推荐的核心是将用户的偏好与候选项目精确匹配。协同过滤作为一项基本的推荐任务,在学术界和工业界都得到了广泛的研究。内容过滤的一个常见范例是从历史交互数据中学习用户和项目的向量表示(即嵌入),然后基于用户和项目嵌入之间的成对相似度执行top-k推荐。
    由于交互数据可以自然地建模为图,例如用户-项二部图和项-项共现图,最近的研究[10,13,24,27]选择了强大的图卷积/神经网络(GCN,或一般称为GNN)来学习用户和项节点的表示。这些基于GCN的模型能够利用用户和项目之间的高阶连接,因此在推荐方面取得了令人印象深刻的性能提升。PinSage[31]和M2GRL[26]是工业应用中的两个成功用例。
    尽管取得了令人振奋的结果,但我们认为,目前的模型设计是沉重和繁重的。为了捕捉更高阶的协作信号并更好地模拟用户与物品之间的交互过程,当前基于GNN的CF模型[1,24,27,32]倾向于寻找越来越复杂的网络编码器。然而,我们注意到这些基于GCN的模型很难用大图进行训练,这阻碍了它们在工业上的广泛应用。工业推荐系统由于用户和项目数量大,往往涉及海量的图形。这给模型设计带来了效率和可扩展性方面的挑战。为此,已经进行了一些研究工作[4,10,17]来简化基于GCN的CF模型的设计,主要是通过去除对于CF来说不必要的特征变换和非线性激活。这些简化的模型不仅取得了比复杂模型更好的性能,而且在训练效率上也有一定的好处。
    受这些先锋研究的启发,我们对基于GCN的模型的训练过程进行了进一步的实证分析,发现在大图上的消息传递(即邻域聚集)对于CF来说通常是很耗时的。特别是,堆叠多层消息传递可能会导致基于GCN的模型在CF任务上收敛缓慢。虽然前面提到的模型,如LightGCN[10]已经简化了培训,但消息传递操作仍然主导着他们的培训。例如,在我们的实验中,三层LightGCN在AmazonBooks数据集[9]上需要700多个历元才能收敛到最佳结果,这在工业环境中是不可接受的。如何在保持GCN模型推荐有效性的前提下,提高GCN模型的效率仍是一个有待解决的问题。
    为了应对这一挑战,在本工作中,我们质疑在CF中显式消息传递层的必要性,并最终提出了一种无消息传递的超简化形式的GCNS(称为UltraGCN)来实现有效的推荐。更具体地说,我们分析了LightGCN的消息传递公式,并确定了三个关键限制:1)消息传递过程中在边上分配的权重是违反直觉的,这可能不适合CF。2)传播过程将不同类型的关系对(包括用户-项对、项-项对和用户-用户对)递归地组合到模型中,但未能捕捉到它们不同的重要性。这也可能会引入嘈杂和不能提供信息的关系,使模型训练感到困惑。3)过度平滑问题限制了在LightGCN中使用过多层消息传递。因此,我们不执行显式消息传递,而是通过约束损失直接逼近无限层图卷积的极限,这导致了超简化的GCN模型UltraGCN。基于损失的UltraGCN设计非常灵活,允许我们手动调整不同类型关系的相对重要性,还可以避免负抽样带来的过度平滑问题。这最终产生了一个简单但有效的UltraGCN模型,该模型易于实现,训练效率高。此外,我们还表明,与最先进的CF模型相比,UltraGCN实现了显著的改进。例如,在亚马逊图书数据集上,UltraGCN在NDCG@20上获得了高达76.6%的改进,在培训方面比LightGCN快了10倍以上。
    综上所述,本工作的主要贡献如下:

  • 我们对LightGCN训练效率低下的原因进行了实证分析,并进一步将其原因归因于消息传递机制的严重局限性。

  • 我们提出了一种超简化的GCN形式,即UltraGCN,它跳过了无限层的显式消息传递以实现高效的推荐。
  • 在四个基准数据集上进行了大量的实验,证明了UltraGCN的有效性和高效性。

    2 动机(Motivation)

    在本节中,我们回顾了GCN和LightGCN模型,并进一步确定了固有消息传递机制所产生的限制,这也证明了我们工作的动机。

    2.1 重访GCN和LightGCN(Revisiting GCN and LightGCN)

    GCN[14]是图神经网络的一个代表性模型,它应用消息传递来聚集邻域信息。带自循环的消息传递层定义如下:
    和ˆ퐴=퐴+퐼和ˆ퐷=퐷+퐼在一起。퐴,퐷,퐼分别是邻接矩阵、对角节点度矩阵和单位矩阵。퐼用于集成节点上的自环连接。퐸(푙)和푊(푙)表示用于푙层的表示矩阵和权重矩阵。휎(·)是一个非线性激活函数(例如,REU)。
    尽管GCN在图形学习方面取得了广泛的成功,但最近的几项研究[4,10,17,29]发现,适当简化GCN可以进一步提高CF任务的绩效。LightGCN[10]就是这样一种简化的GCN模型,它去除了特征转换(即푊(푙)和非线性激活(即휎)。因此,它的消息传递层可以表示为:
    值得注意的是,尽管LightGCN也移除了节点上的自环连接,但其层组合操作具有与公式2中使用的自环类似的效果,因为它们都输出在每一层传播的嵌入的加权和作为最终输出表示。给定自循环连接,我们可以重写用户푢和项目푖的消息传递操作,如下所示:
    其中푒(푙)푢和푒(푙)푢表示用户푢和项푖在层푙处的嵌入。N(푢)和N(푖)分别表示它们的邻居节点集。푑푢表示节点푢的原始度。
    如图1左侧所示,LightGCN执行一组消息传递层以获得嵌入,并最终使用它们的点积进行训练。

    2.2 消息传递的限制(Limitations of Message Passing)

    我们认为,这种消息传递层具有潜在的局限性,阻碍了基于GCN的模型在推荐任务中的有效和高效训练。为了说明这一点,我们以公式3和公式4中的LightGCN的푙-th层消息传递为例。请注意,푢和푣表示用户,而푖和푘表示项。LightGCN将这两个嵌入的点积作为最终的Logit,以捕获用户푢对项目푖的偏好。因此,我们得到:
    where 훼푢푖, 훼푖푘, 훼푢푣, and 훼푘푣 can be derived as follows:
    因此,我们可以观察到,当使用消息传递层训练基于GCN的模型时,捕获了多种不同类型的协作信号,包括用户-项目关系(푢-푖和푘-푣)、项目-项目关系(푘-푖)和用户-用户关系(푢-푣)。这也揭示了为什么基于GCN的模型对CF有效。
    然而,我们发现,分配给各种类型关系的边权重并不适合于CF任务。根据我们的经验分析,我们确定了基于GCN的模型中消息传递层的三个关键限制:

  • 限制1:权重훼푖푘用于对项目-项目关系进行建模。但是,给定用户푢,物料푖和物料푘的系数是不对称的(物料√푑푘的系数为1푘+1,物料푑푖的系数为1푖+1)。这是不合理的,因为不平等地对待项目푘和项目푖是违反直觉的。同样,对用户-用户关系进行建模的훼푢푣也遇到了这个问题。这种不合理的权重分配可能会误导模型训练,最终导致性能次优。

  • 限制2:消息传递递归地将不同类型的关系组合到建模中。虽然这样的协作信号应该是有益的,但上面的消息传递公式未能捕捉到它们的不同重要性。同时,像等式5中那样堆叠多层消息传递可能引入无信息、有噪声或模糊的关系,这可能在很大程度上影响训练效率和有效性。需要灵活地调整各种关系的相对重要性。我们在第4.4节中对此进行了经验验证。
  • 限制3:堆叠更多层的消息传递应该会捕获更高级别的协作信号,但实际上LightGCN的性能在第2层或第3层开始下降[10]。我们将其部分归因于消息传递的过度平滑问题。由于图卷积是拉普拉斯平滑的一种特殊形式[16],执行太多层消息传递会使具有相同次数的节点往往具有完全相同的嵌入。根据[5]中的定理1,我们可以推导出消息传递的无穷大功率,其极限如下: 其中,푛和푚分别是图中节点和边的总数。

消息传递的上述局限性激励了我们的工作。我们质疑在CF中显式消息传递层的必要性,并进一步提出了一种超简化的GCN公式,称为UltraGCN。

3 UltraGCN

在本节中,我们将介绍我们的超简化UltraGCN模型,并演示如何以灵活的方式整合不同类型的关系。我们还阐述了它是如何克服上述限制的,并分析了它与其他相关模型的联系。

3.1 关于用户-项目图的学习(Learning on User-Item Graph)

由于消息传递的局限性,在本工作中,我们进一步质疑显式消息传递在CF中的必要性。考虑到消息传递的无限能力极限如公式6所示,我们想知道是否有可能跳过无限层消息传递而近似达到收敛状态。
在重复无限层的消息传递之后,我们将最终的收敛条件表示如下:
也就是说,最后两层的表示保持不变,因为从邻域聚集生成的向量等于节点表示本身。我们使用푒푢(或푒푖)来表示用户푢(或项푖)的最终融合表示。然后,公式3可以重写为:
经过一些简化后,我们得到以下收敛状态:
换句话说,如果对于每个节点满足等式9,则它达到消息传递的收敛状态。
我们的目标是直接近似这种收敛状态,而不是执行显式消息传递。为此,一种直接的方法是最小化公式9的两边的差异。在这项工作中,我们将嵌入到单位向量中归一化,然后最大化这两项的点积:
这相当于最大化푒푢和푒푖之间的余弦相似度。为了便于优化,我们进一步结合了Sigmoid激活和负对数似然[2],并推导出以下损失:
其中휎是Sigmoid函数。损失被优化以满足公式9施加的结构约束。因此,我们将L퐶表示为约束损失,并将훽푢,푖表示为约束系数。
然而,优化L퐶也会遇到过度平滑问题,因为L퐶要求所有连接对(훽푢,푖>0)都是相似的。通过这种方式,用户和项目可以很容易地聚合到相同的嵌入。为了缓解过平滑问题,传统的基于GCN的CF模型通常固定少量的消息传递层,例如LightGCN中的2个∼4层。相反,由于UltraGCN通过约束损失逼近无限层消息传递的极限,因此我们选择在训练期间执行负采样。这是受到Word2vec[19]中使用的负采样策略的启发,该策略提供了一种更简单有效的方法来抵消过平滑问题。在执行负抽样后,我们最终得出以下约束损失:
其中푁+和푁−表示正对和随机采样的负对的集合。请注意,为了便于演示,我们省略了푈上的求和。约束损失L퐶使得UltraGCN能够直接逼近无限层消息传递的极限,捕获用户-项目二部图中的任意高阶协同信号,同时有效地避免了通过负采样带来的麻烦的过平滑问题。此外,我们注意到훽푢,푖在L퐶中充当损失重量,它与具有相似幅度的푑푢和푑푖成反比。这对于CF是可解释的。如果一个用户与多个项目交互,或者一个项目由多个用户交互,则他们交互的影响将很小,因此这对(푢,푖)对的损失应该很小。

3.1.1 最优化(Optimization)

通常,CF模型通过应用成对的BPR(贝叶斯个性化排名)损失[22]或逐点的BCE(二进制交叉熵)损失[11]来执行项目推荐以进行优化。我们将连续预测问题描述为图学习中的链接预测问题。因此,我们选择以下BCE损失作为主要优化目标。这也与L퐶的丢失格式一致。
其中,푁+和푁−表示正向和随机采样的负向链路(即,푢-푗对)。请注意,为简单起见,我们使用与L퐶相同的样本对集合,但也可以方便地使它们不同。
由于L푂和L퐶仅依赖于用户-项目关系,我们将其定义为UltraGCN的基础版本,记为UltraGCN퐵푎푠푒,其优化目标如下。
其中휆是控制两个损失项的重要性权重的超参数。

3.2 关于项目-项目图的学习(Learning on Item-Item Graph)

如公式5所示,除了用户-项目关系之外,一些其他关系(例如,项目-项目和用户-用户关系)也极大地有助于基于GCN的模型在CF上的有效性。然而,在传统的基于GCN的模型中,这些关系是通过具有用户-项目关系的相同消息传递层隐式学习的。这不仅导致了第2.2节中讨论的不合理的边权重分配,而且也未能捕捉到不同类型关系的相对重要性。相比之下,UltraGCN不依赖于显式消息传递,因此我们可以以更灵活的方式单独学习其他关系。这也使我们能够手动调整不同关系的相对重要性。
我们强调,UltraGCN可以灵活地扩展到对多种不同的关系图进行建模,如用户-用户图、项项图,甚至知识图。在这项工作中,我们主要展示了它在项-项共现图上的应用,这已被证明对[26]中的推荐有用。我们首先通过链接具有同现的项来构建项-项共现图,这将产生以下加权相邻矩阵퐺∈R|퐼|×|퐼|。
其中每个条目表示两个项的共现。我们遵循公式9来逼近퐺上的无限层图卷积,并推导出新的系数휔푖,푗:
其中푔푖和푔푗分别表示푖项和푗项在퐺中的度数(按列求和)。
类似于公式12,我们可以推导出项目-项目图上的约束损失,从而以显式的方式学习项目-项目关系。然而,由于项目-项目图的邻接矩阵퐺通常比用户-项目图的稀疏邻接矩阵퐴更稠密,直接最小化퐺上的约束损失会导致太多不可靠或噪声的项目-项目对进入优化,这可能会使训练变得困难。这也类似于第2.2节中描述的基于GCN的传统模型的限制II。但由于UltraGCN的灵活设计,我们选择仅选择信息丰富的配对进行培训。
具体地说,为了保持稀疏的项目连接和保持训练效率,我们首先根据퐾为项目푆(푖选择TOP-푖最相似项目(Top-휔푖,푗Most Similiar Items)。直观地说,휔푖,푗度量项目푖和项目푗的相似度,因为它与项目푖和项目푗的同现次数成正比,但与这两个项目的总程度成反比。我们建议增加正的用户-项目对来捕获项目-项目关系,而不是直接学习项目-项目对。这使得UltraGCN的训练术语保持了统一,降低了多任务学习可能的难度。我们还通过实验证明,在4.4节中,这种方法可以获得更好的性能。对于每个正(푢,푖)对,我们首先构造퐾加权正(푢,푗)对,对于푗∈푆(푖)。然后,我们用更合理的相似性得分휔푖,푗来惩罚这些对的学习,并推导出项目-项目图上的约束损失L퐼如下:
Where|푆(푖)|=퐾。我们在这里省略负采样,因为L퐶和L푂中的负采样已经使UltraGCN能够抵消过平滑。针对这种约束损失,我们对UltraGCN进行了扩展,以更好地学习项与项之间的关系,并最终得出了UltraGCN的以下训练目标:
其中,휆和훾分别是用于调整用户-项和项-项关系的相对重要性的超参数。
图1说明了与LightGCN形成对比的UltraGCN的简单体系结构。类似地,在推理中,我们使用用户ˆ푦푢푖=푒⊤푢푒푖和项目푢之间的点积푖作为推荐的排名分数。

3.3 讨论(Discussion)

3.3.1 模型分析(Model Analysis)

我们首先分析了该模型的优点:1)在该模型中,边的权值훽푖,푗和휔푖,푗更合理,更易于解释,分别有助于更好地学习用户-项目和项目-项目关系。2)不需要显式的消息传递,UltraGCN可以灵活地单独定制不同类型的关系的学习。它还能够选择有价值的训练对(如第3.2节),而不是从可能被噪声误导的所有相邻对中难以区分地学习。3)虽然UltraGCN以多任务学习的方式训练不同类型的关系,但其训练损失(即L퐶、L퐼和L푂)实际上是统一的,遵循二进制交叉熵的形式。这种统一便于UltraGCN的训练,收敛速度快。4)UltraGCN的设计是灵活的,通过将훾设置为0,它简化为只在用户-项目图上学习的UltraGCN퐵푎푠푒。表2提供了UltraGCN和UltraGCN퐵푎푠푒之间的性能比较。
请注意,在当前版本中,我们没有纳入UltraGCN中的用户-用户关系建模。这主要是因为用户的兴趣比物品的属性要广泛得多。我们发现,仅从用户-用户共现图来捕捉用户-用户关系更加困难。在第4.4节中,我们经验表明,在用户-用户共现图上学习并没有给UltraGCN带来显著的改进。相比之下,传统的基于GCN的CF模型难以区分地从用户-项目图中学习所有关系(即限制II),可能会受到性能下降的影响。用户-用户关系可能会从社交网络图中更好地建模,我们将其留到未来的工作中。

3.3.2 与其他模型的关系(Relations to Other Models)

在这一部分中,我们讨论了我们的UltraGCN与其他一些现有模型的关系。
与MF的关系(Relation to MF)。UltraGCN将正式成为一种新的加权MF模型,该模型具有为CF量身定做的BCE损失。与以前的MF模型(例如NeuMF[11])相比,UltraGCN可以使用图形更深入地挖掘协作信息,同时保持与MF相同的简洁架构和模型效率。
与网络嵌入方法的关系(Relation to Network Embedding Methods)邱等人的研究成果。[21]已经证明,许多流行的负采样网络嵌入方法(如DeepWalk[20]、LINE[25]和Node2Vec[7])都可以统一到MF框架中。然而,与这些网络嵌入方法相比,UltraGCN中使用的边权重对于CF来说更有意义和更合理,从而导致更好的性能。此外,许多网络嵌入方法中的随机游走也会不可控地引入非信息关系,影响性能。在4.2节中,我们实证地展示了UltraGCN相对于三种典型的基于CF的网络嵌入方法的优越性。
与单层LightGCN的关系(Relation to One-Layer LightGCN)。我们强调,UltraGCN也不同于具有BCE损失的单层LightGCN,因为LightGCN将权重组合应用于嵌入聚集,而我们的约束系数施加于约束损失函数,旨在了解无限层图卷积的本质。相反,UltraGCN可以克服3.2节中描述的单层LightGCN的限制。

3.3.3 模型复杂度(Model Complexity)

给定每个푑,퐾相似项的嵌入大小作为每个正对的负样本数,并且|푆(푖),푅+|作为用户-项交互矩阵中的有效非零项的数目,我们可以推导出퐴:O((퐾+푅+1)∗|퐴+|∗(푑2+1)的训练时间复杂度。我们注意到,计算훽和휔的时间复杂性为O(1),因为我们可以在训练之前离线预先计算它们。由于我们在实践中通常将퐾限制在很小的范围内(例如,在我们的实验中为10),因此其时间复杂度与MF处于同一水平,即O((푅+1)∗|퐴+|∗푑2)。此外,UltraGCN中唯一可训练的参数是用户和项目的嵌入,MF和LightGCN也是如此。因此,我们的低复杂度UltraGCN为模型训练带来了极大的效率,应该更适用于大规模的推荐系统。

4 实验(Experiments)

我们首先将UltraGCN与各种最先进的CF方法进行比较,以证明其有效性和高效性。我们还进行了详细的消融研究,以证明UltraGCN设计选择的合理性和有效性。

4.1 实验设置(Experimental Setup)

4.1.1 数据集和评估指标(Datasets and Evaluation Protocol)
我们使用四个公开可用的数据集,包括Amazon-Book、Yelp2018、Gowalla和MovieLens-1M来进行实验,因为最近许多基于GCN的CF模型[10,27,28,32]都在这四个数据集上进行了评估。我们密切关注这些基于GCN的现金流量研究,并使用与之相同的数据分割。表1显示了使用的数据集的统计信息。
对于评估协议,选择了在基于GCN的CF模型的评估中流行的Recall@20和NDCG@20作为评估指标。我们将所有未与用户交互的项目视为候选,并报告所有用户的平均结果。
4.1.2 基线(Baselines)
总之,我们将UltraGCN与各种最先进的模型进行了比较,包括基于MF的(MF-BPR[15]、ENMF[3])、基于度量学习的(CML[12])、网络嵌入方法(DeepWalk[20]、Line[25]和Node2Vec[7])以及基于GCN的(NGCF[27]、NIA-GCN[24]、LR-GCCF[4]、LightGCN[10]和DGCF[28])。
4.1.3 参数设置(Parameter Settings)
通常,我们采用均值为0,标准差为10−4的高斯分布来初始化嵌入。在许多情况下,我们采用퐿2正则化,权重为10−4,将学习率设置为10−4,将批次大小设置为10 24,将负采样比푅设置为300,将邻居集大小퐾设置为10。特别是,我们将嵌入大小固定为64,这与最近基于GCN的工作[10,24,27,28]相同,以保持相同数量的参数进行公平比较。我们在[0.2,0.4,0.6,0.8,1.0,1.2,1.4]中调优휆,在[0.1,0.5,1.0,1.5,2.0,2.5,3,3.5]中调优훾。对于一些基线,我们报告了他们论文的结果,以保持一致性。它们也具有可比性,因为我们使用完全相同的数据集和由它们提供的实验设置。对于其他基线,我们主要使用他们的官方开源代码,并仔细调整参数,以达到最佳性能,进行公平的比较。为了实现可重现性,我们在Github1上发布了UltraGCN的源代码和基准设置。

4.2 性能比较(Performance Comparison)

表2报告了性能比较结果。我们有以下观察所得:

  • UltraGCN在所有四个数据集中始终提供最佳性能。特别是,UltraGCN在AmazonBook上比最强的基于GCN的基线(即DGCF)分别提高了61.4%和71.6%。分别召回@20和NDCG@20。显著性检验结果表明,与当前最强的基于GCN的基线相比,我们的改进具有统计学意义(푝值<0.0 5)。通过对物品-物品图的额外学习,UltraGCN的表现一直好于其更简单的变体UltraGCN퐵푎푠푒。我们将其良好的性能归因于以下原因:1)与网络嵌入模型和其他基于GCN的模型相比,UltraGCN可以分别以软方式(即用훽优化)和硬方式(即只选择퐾最相似的项对)过滤无信息的用户-项和项-项关系。UltraGCN中用于学习用户-项和项-项关系的边权重也更加合理;2)与其他基线相比,UltraGCN可以利用强大的图卷积来挖掘图中有用的、更深层次的协作信息。这些优势共同导致UltraGCN比同类最先进的机型更具优势。
  • 总体而言,网络嵌入模型的表现不如基于GCN的模型,尤其是在Gowalla上。这可能是因为在许多网络嵌入方法中,强大的图卷积比传统的随机游走或启发式挖掘策略更有效地捕捉协作信息进行推荐。
  • 由于UltraGCN是一种特殊的MF,只需要进行点积运算来嵌入,所以它的结构与一些最先进的模型(如DGCF)是正交的。因此,与MF类似,UltraGCN可以被认为是一个有效和高效的CF框架,它可以与其他方法相结合,例如为用户和项目提供解缠表示,如DGCF,以获得更好的性能。我们将这样的研究留在以后的工作中。

    4.3 效率比较(Efficiency Comparison)

    正如第3.3节所强调的,UltraGCN由于其简洁和统一的设计,被赋予了对CF的高训练效率。我们还从理论上证明了UltraGCN的训练时间复杂度与3.3.3节中的MF处于同一水平。在这一部分中,我们进一步实证地证明了UltraGCN在训练效率上的优势,与其他CF模型相比,尤其是基于GCN的模型。具体来说,我们选择了MF-BPR、ENMF、LightGCN和LR-GCCF作为竞争对手,它们在各自的类别中都是相对有效的模式。为了更有说服力,我们从两个角度比较了他们的培训效率:

  • 达到最佳成绩的总训练时间和时代。

  • 用相同的时代训练他们,看看他们能取得什么成绩。

请注意,验证时间不包括在培训时间中。考虑到比较模型的官方实现可以进行优化以提高效率,我们对所有模型都使用了自己实现的统一代码框架,以实现公平比较。特别是,我们的实现参考了他们的官方版本,并使用统一加速方法(如并行采样)对其进行优化,以确保比较的公平性。我们将发布我们所有的代码。实验是在AmazonBook上进行的,使用相同的英特尔(R)至强(R)Silver 4210 CPU@2.20 GHz机器,以及所有比较型号的一个GeForce RTX 2080 GPU。两个实验的结果分别见表3和表4。我们有以下结论:
(1)表3显示,UltraGCN的训练速度(即时间/历元)接近MF-BPR,这从经验上证明了我们的分析,即UltraGCN和MF的时间复杂度处于同一水平。UltraGCN需要75个历元才能收敛,这比LR-GCCF和LightGCN要少得多,导致总训练时间只有45分钟。最后,与LightGCN、LR-GCCF和ENMF相比,UltraGCN分别有大约14倍、4倍、4倍的加速比,显示了UltraGCN的巨大效率优势。
(2)表4显示,当UltraGCN收敛(即训练固定的75个历元)时,所有其他比较模型的性能都比UltraGCN差得多。也就是说,UltraGCN能够以更少的时间获得更好的性能,这进一步证明了UltraGCN比其他基于GCN的CF模型具有更高的效率。

4.4 消融研究(Ablation Study)

我们在Amazon-Book上进行了烧蚀研究,以证明以下观点:(I)UltraGCN的设计是有效的,它可以灵活地单独学习用户-项目关系和项目-项目关系,以提高推荐性能;(Ii)通过增加正向用户-项目对来学习项目-项目关系可以获得比优化项目-项目对之间的性能更好的性能;(Iii)用户-用户共现信息可能不是很能帮助推荐。
对于意见(I),我们将UltraGCN与以下变体进行比较,以显示我们的设计在UltraGCN中的有效性:

  • UltraGCN(휆=0,훾=0):当휆和훾设置为0时,UltraGCN简单地简化为带有BCE损失函数的MF训练,不利用图形信息,无法捕获更高阶的协作信号。
  • UltraGCN(훾=0):此变体与UltraGCN퐵푎푠푒相同,后者只在用户-项目图上学习,缺乏对项目-项目关系的更有效学习。
  • UltraGCN(휆=0):这个变体缺乏在用户-项目图上学习的图形卷积能力,无法更深入地挖掘协作信息。

结果如图2所示。我们有以下观察结果:
(1)UltraGCN(훾=0)和UltraGCN(휆=0)的性能都好于UltraGCN(휆=0,훾=0),说明UltraGCN的设计可以有效地在用户-项目图和项目-项目图上学习以提高推荐;(2)相对来说,UltraGCN(휆=0)不如UltraGCN(훾=0),这表明UltraGCN中的用户-项目关系可能比项目-项目关系建模得更好;(3)UltraGCN模型的性能远好于其他三种模型,表明了我们提出的分解各种关系,消除可能干扰模型学习的非信息性因素,最终以更清晰的方式进行多任务学习的思想,有效地克服了以前基于GCN的CF模型的局限性(见第2.2节)。
对于意见(II),我们将L퐼改为L‘퐼:
而是在目标正项和其最퐾相似项之间进行优化。在仔细调整参数的情况下,比较了L-퐼和L‘-퐼两种算法的性能。实验结果如图3所示。可见,无论是否加入L-퐶,使用L-퐼都能获得比使用L‘퐼明显更好的性能,这证明了我们设计的在项目-项目图上学习的策略是更有效的。此外,当加入L퐼时,使用L퐼和使用L‘퐶之间的性能差距变得更大,这表明我们的策略使UltraGCN的目标统一,从而有利于培训和提高性能。
对于意见(III),我们用类似于第3.2节的方法推导出用户-用户约束损失L푈,并将其结合到最终目标中。我们仔细地重新调整了参数,并在表5中展示了是否使用L푈的比较结果。由此可见,加入L푈来学习用户与用户的关系并不会给UltraGCN带来明显的好处。我们将这种现象归因于这样一个事实,即用户的兴趣比项目的属性更广泛,因此仅从用户-用户共现图来捕获用户-用户关系要困难得多。因此,本文没有将用户-用户关系的建模引入到UltraGCN中,我们将在未来继续研究它。

4.5 参数分析(Parameter Analysis)

为了更好地理解超级GCN,我们研究了选择邻居퐾的数目和两个约束损失(即휆和훾)的权重对性能的影响。
4.5.1 K的影响(Impact of K)
我们在亚马逊图书和Yelp2018上测试了不同퐾的UltraGCN在[5,10,20,50]中的性能。图4显示了实验结果。我们可以发现,当퐾从5增加到50时,性能呈现出先增加后减少的趋势。这是因为当퐾为5时,项-项关系没有得到充分利用。而当퐾变大时,可能会在学习过程中引入一些不太相似或不太自信的项-项关系,从而影响模型性能。这种现象也印证了传统的基于GCN的CF模型不可避免地考虑了太多的低置信度关系,从而损害了性能。
4.5.2 Impact of 휆 and 훾.()
我们首先设置휆=0,并显示从0.2到1.4(以0.2为间隔)的不同휆的性能。然后在[0.1,0.5,1,1.5,2,2.5,3,3,3.5]中用不同的훾进行测试,得出最佳휆。我们在Amazon-Book上进行了实验,结果如图5所示。对于휆,我们发现较小的值限制了用户-项目约束损失的发挥,而1左右的值对于휆来说是合适的。对于훾的影响,其走势与휆相似,但更为显著,2.5是훾的合适选择。总的来说,我们对휆和훾的研究表明,这两个参数对UltraGCN是重要的,它可以灵活地调整不同关系的学习权重,应该谨慎设置。

5 相关工作(Related Work)

在这一部分中,我们简要回顾了一些有代表性的基于GNN的方法及其在推荐任务模型简化方面所做的努力。
随着GNN在各个机器学习领域的发展和成功,推荐社区中出现了许多优秀的工作,因为用户和项目之间的交互可以自然地形成用户-项目二部图。Rianne van den Berg等人。[1]提出了图卷积矩阵补全(GCMC),这是一种基于图的显式矩阵补全自动编码器框架。GC-MC的编码器根据评级类型聚合邻居的信息,然后将其合并到下一层的新嵌入中。这是使用图卷积神经网络进行推荐的第一项工作。Ying et al.。[31]首先将GCN应用到网络推荐系统中,提出了一种基于GCN的高效推荐方法Pinsage,该方法结合高效的随机游走和图卷积来生成包含图结构和项目特征信息的项目嵌入。然后,Wang等人提出了自己的观点。[27]设计了一种新的基于图的协同过滤框架NGCF。NGCF有一个特制的交互编码器来捕捉用户和项目之间的协作信号。尽管与以往基于非GNN的方法相比,NGCF取得了较好的性能,但其繁琐的设计限制了其效率和GCN的充分发挥。为了模拟用户对物品的不同意图,Wang等人。[28]提出了解缠图协同过滤算法(DGCF),该算法在用户意图的细粒度上考虑用户与条目的关系,并生成解缠的用户和条目表示,以获得更好的推荐性能。
虽然基于GNN的推荐模型已经取得了令人印象深刻的性能,但在面对大规模推荐场景时,其效率仍然不尽如人意。如何提高GNN的效率并保留其高性能用于推荐成为当前研究的热点问题。最近,戴等人。[6]和Gu等人的观点。[8]扩展GNN上的不动点理论,以实现更好的表示学习。刘等人。[18]针对节点分类任务,提出了一种简化GCN的UCMF。Wu等人。[29]针对GCN中不需要非线性激活和特征变换的问题,通过去掉这两部分,提出了一种简化的GCN模型(SGCN)。在SGC的启发下,他等人。[10]通过去除非线性激活和特征变换,设计了LightGCN用于推荐。然而,其效率仍然受到消息传递耗时的限制。邱等人的研究成果。[21]证明了许多带负采样的网络嵌入算法可以统一到MF框架中,这可能是有效的,但它们的性能与GCNS仍有差距。我们受到这些富有启发性的研究的启发,提出了UltraGCN,以实现高效和有效的推荐。

6 讨论(Conclusion)

在这项工作中,我们提出了一种超简化的GCN公式,称为UltraGCN。UltraGCN跳过显式消息传递,直接接近无限消息传递层的限制。广泛的实验结果表明,UltraGCN在准确性和效率方面都比最先进的CF模型有了令人印象深刻的改进。

7 附录(Appendix)

为了进一步证明UltraGCN的有效性,我们还提供了与一些最新的CF模型的比较结果,这些模型包括NBPO[33]、BGCF[23]、SCF[34]、LCFN[32]和SGL-ED[30]。为了比较简单和公平,我们使用了每篇论文提供的相同的数据集和评估方案。我们还复制了他们论文中报告的结果,以保持一致性。表6中的结果再次验证了UltraGCN的有效性,它的性能远远超过最新的CF模型。