知识蒸馏论文精选——《Reliable Data Distillation on Graph Convolutional Network 》

(RDD)可靠数据蒸馏

《Reliable Data Distillation on Graph Convolutional Network 》 2020

作者是 Wentao Zhang, Xupeng Miao, Yingxia Shao, Jiawei Jiang, Lei Chen, Olivier Ruas, Bin Cui

论文地址见文末

摘要

图卷积网络( Graph Convolutional Network,GCN )是一种广泛使用的从图数据中学习的方法。然而,它没有充分利用未标记的数据,从而阻碍了它的能力。给定未标记数据的一些伪标签,GCN可以从这种额外的监督中获益。在知识蒸馏和集成学习的基础上,许多方法使用师生结构来更好地利用未标记数据,从而做出更好的预测。然而,如果教师的预测是不可靠的,这些方法会引入不必要的训练成本和学生模型的高偏差。此外,由于组合模型的多样性有限,最终的集成增益也是有限的。因此,我们**提出了可靠数据蒸馏( Reliable Data Distillation ),一种可靠数据驱动的半监督GCN训练方法**。通过定义图中的节点可靠度和边可靠度,可以更好地利用高质量数据,改进图表示学习。此外,考虑到数据可靠性和数据重要性,我们提出了一种 新的GCN集成学习方法 和一种新的 Self-Boosting SSL框架 来结合上述优化。最后,我们在真实数据集上对可靠数据蒸馏的广泛评估表明,我们的方法在半监督节点分类任务上优于最新的方法。

# 1、引言

1.1 背景和动机

==半监督学习( SSL )==是一类机器学习技术,除了使用标记数据外,还成功地利用了学习过程中的大量未标记数据。当可用的标记数据有限时,SSL特别有用。特别地,SSL被广泛用于从图结构数据中学习,例如我们想要在其上推断论文主题的引文网络。事实上,标记和处理整个图是非常耗时的,并且不总是可能的

图卷积网络( GCN ) 是一种流行的SSL技术,用于许多基于图的应用,如节点分类、链接预测、图嵌入和聚类。通过捕获节点之间的关系,并使特征在相邻节点之间传播,可以同时使用有标记和无标记数据进行训练。这些额外的信息提高了学习效率,使GCN优于传统的监督学习方法。

image-20240510142818336

尽管如此,GCN似乎没有充分利用未标记数据内部的潜力。GCN只捕获了无标签数据中已经存在的信息,例如它们的特征和它们之间的邻接关系,这使得无标签数据的嵌入高度依赖于相邻的有标签数据。在有限的标签下,GCN无法将它们传播到整个图中,从而减少了隐藏在大量未标记数据中的信息。图1显示了在Cora引文网络上获得的正则GCN在标记率从1.3 %到5.2 %范围内的准确性。随着标记训练规模的缩小,GCN的性能迅速下降。为了减少对标记数据的依赖,我们可以选择和标记一些未标记数据,并将它们添加到训练集中。它们的嵌入将在反向传播过程中独立更新,而不是单独依赖于它们的相邻标记数据。

为无标签数据生成伪标签是SSL中广泛使用的思想,其中最具代表性的方法是协同训练和自训练

Co - Training 依赖于随机游走,通过探索全局图拓扑来补充GCN 。

Self - Training 首先为未标记数据生成标签,然后为每个类选择最可信的预测。

将选择的新标记数据加入到训练集中,然后帮助训练出更强大的模型。尽管如此,**这两种方法都有一个共同的缺点:学习到的标签可能是不正确的。**很难确定训练好的模型是否正确地预测了这些标签。此外,不仅学习到的标签包含的信息少于类的概率分布,例如softmax概率,而且用于生成标签的阈值也很难调整。

为了克服这些问题,同时产生伪标签,最近提出了 一致性正则化方法 (已经提出)。与自训练和协同训练不同,一致性正则化假设对相似输入的预测应该是相似的,即使受到轻微的干扰。一致性正则化不产生伪标签,而是在损失函数中加入与未标记数据相关的惩罚项。在所有一致性正则化方法中,基于知识的师生一致性知识蒸馏(已经提出) 由于其优越的性能得到了广泛的应用。在KD中,首先学习一个教师模型,然后使用它在未标记数据上的预测来学习一个学生模型。与Self - Training和Co - Training给出的预测标签相比,教师模型生成的节点嵌入包含了更多的信息,导致训练案例之间的梯度方差更低[ 25 ]。学生模型模仿教师模型预测的节点嵌入。教师模型越好,它对未标记数据的预测就会越准确,从而使学生模型更好地学习。

通过结合多个模型的预测,集成学习(已经提出)在KD中得到了广泛的应用。多个学生模型的组合显著提高了的性能。例如,Mean Teacher 在教师模型的一致性正则化下训练每个学生模型,并通过加权平均不断提高教师的表现。同样地,Born Repeat Neural Networks ( BANs )中的学生模型也是在教师模型的监督下进行的。BANs在集成学习的基础上,将所有预训练好的模型进行组合,从而构建出更强大的集成模型。

尽管KD技术提供了重要的改进,但它们的性能与教师的性能有相当大的联系。如果某个数据点被老师错误的分类,那么所有的学生都会学习到这个错误的标签。将教师模型的所有预测都作为基本事实,会导致学生模型的高偏差。此外,学生模型模仿了KD中所有教师的输出,然后它们彼此相似,这被称为有限多样性[ 60 ]。由于有限的多样性和较高的偏差,基于KD的集成方法只能提供有限的增益。

在本文中,我们引入可靠性作为提高KD的一种方式:可靠的数据- -无论是可靠的节点还是可靠的边都会在训练过程中被使用,而不可靠的数据则会被丢弃。我们得到的称为可靠数据蒸馏( Reliable Data Distillation,RDD)的方法是一种数据驱动的半监督图卷积网络训练方法,该方法是在KD的基础上使用可靠性构建的。

RDD不仅关心数据的数量,还考虑了图数据的个体质量,即节点可靠性和边可靠性。与常规KD方法不同,RDD中的学生模型并没有模仿教师模型的预测。相反,它利用这些预测的可靠性来改善其学习。学生模型首先评估教师的预测是否可靠,然后利用可靠性来改进其学习。与KD相比,学生模型更有可能在不可靠的数据上预测到正确的标签,教师和学生之间的差异性也相应增强。在学生模型训练完成后,教师模型使用学生模型进行更新,因此教师模型可以从学生模型的学习中获益。从集成学习的角度来看,我们的方法是一种自增强方法

image-20240510143912434

如图2所示。我们不断地生成新的学生GCN模型,以提高教师模型的性能,同时使教师和学生的预测越来越准确。

1.2 技术贡献概述

在接下来,我们介绍了我们提出的方法的关键部分,然后分别描述了每个贡献。

可靠节点蒸馏。正如第1.1节所讨论的,基于KD的师生一致性没有考虑预测节点嵌入的可靠性。这需要不必要的训练预算,并且由于学生模型重复地重新学习教师模型预测的所有数据知识,导致学生模型的高偏差。针对这些问题,本文提出了节点可靠性的概念。在RDD的每个训练阶段,学生评估教师预测的节点嵌入的可靠性。 对于有标签的数据,我们只考虑这些数据是否被正确分类。对于未标记数据,我们考虑其预测softmax输出的信息熵 事实上,具有高信息熵的softmax输出意味着分类器对它的预测是不确定的,因此预测可以被看作是不可靠的。

image-20240510144257927

如图3所示,学生在没有选择的情况下模仿教师的所有输出,导致从教师模型的不可靠预测中学习带有错误标签的学习。RDD解决了这个问题,首先将教师模型的预测分为可靠和不可靠两类。然后使用可靠的输出来纠正学生模型的错误预测。注意这里的正确/不正确是指教师模型的预测,而不是真正的标签(它们都是未知的)。在这个例子中,除了有标签的数据之外,相比于老师,学生将学习到其错误预测的可靠知识。此外,不可靠的预测不会传授给学生模型,教师模型做出的可靠预测也不会被学生模型正确预测。

可靠的边缘蒸馏。我们使用图拉普拉斯正则化(Graph Laplacian Regularization,简称GLR)来联合建模图结构和节点特征。

GLR的核心思想是利用图的拓扑结构来增强模型对节点分类的性能。

通过一个显式的基于图的正则化,标签信息可以在图上平滑,GCN的性能可以相应地提高。然而,图拉普拉斯正则化假设具有边连接的两个节点更可能具有相同的类,从而迫使相邻的节点具有相似的节点嵌入。

GLR基于一个简化的启发式假设:如果两个节点通过边相连,那么它们更有可能属于同一个类别。这意味着,GLR会强制相邻节点拥有相似的嵌入向量。这种假设在某些情况下是合理的,因为它符合直观上的“近朱者赤,近墨者黑”的原则,即空间上邻近的节点在特征或类别上也应该相近。但是,这个假设并不总是能够捕捉到图中节点之间更复杂的关系。特别是对于那些位于决策边界附近的节点,即使它们是相邻的,也可能属于不同的类别。在这些情况下,简单地强制相邻节点拥有相似嵌入会导致不可靠的预测。

为了解决这个问题,作者引入了“边可靠性”(edge reliability)的概念。边可靠性是一种适应性正则化方法,它不是简单地正则化所有边,而是只对那些“可靠的”边进行正则化。边被认为是可靠的,只有当它们连接的两个节点都是可靠的,并且它们预测的类别相同。这样,通过边可靠性,模型可以更加精细地调整正则化过程,从而只在那些确实能够提高预测准确性的边上应用GLR,而对于可能降低准确性的边则不进行正则化。

这种简单的启发式假设无法把握图中许多节点之间更为复杂的关系,尤其是对于位于决策边界附近的节点。这些节点实际上是预测不可靠的节点。我们引入边可靠性作为适应正则化的方法,并且只正则化可靠的边。

图数据的集成学习。目前已有的基于KD的集成方法并不是专门针对GCN设计的。抛开可靠性不谈,他们没有考虑图的结构和局部性。例如,高连接的节点,即具有大量的边,影响许多节点,从而在GCN的训练过程中发挥着比低连接节点更重要的作用。RDD使用PageRank来衡量每个节点在最终集成中的重要性。 此外,集成系统中基模型之间的多样性为系统的最终精度提供了重要的提高。在现有的基于KD的方法中,学生模型模仿教师模型,导致多样性降低。然而,在RDD中,学生模型主动学习教师预测的可靠数据知识,因此有更多的机会重新学习不可靠的数据,并对这些数据做出不同的预测。通过这种方式,可以解决多样性问题。

自增强SSL框架。我们引入了一种新的SelfBoosting训练框架来提高准确率教师预测的知识。**在训练每个学生模型后,我们与之前预训练的学生模型组成一个集成,并将这个集成作为下一个训练阶段的教师模型。在每次训练迭代时,对教师模型进行改进,预测学生要学习的更准确的标签。**反之,在更精确的监督下,学生模型的训练得到提高,模型越来越精确。因此,教师和学生榜样都从这个"自我提升"的循环中受益。

总结贡献:

本文的主要贡献可以概括如下:

( 1 )据我们所知,我们首先通过强调数据的可靠性来改进知识蒸馏。

( 2 )提出了一种RDD框架来捕获GCN中节点和边的可靠性。

( 3 )提出了一种新的Self - Boosting SSL框架作为GCN的图驱动集成方法。

( 4 )我们在真实世界的数据集上对我们的方法进行了广泛的评估,结果证明了它的性能优于最先进的方法。

2、预备工作

2.1 符号的定义

为了帮助读者理解这个工作,我们首先在表1中介绍了一些与RDD相关的符号。给定一个图G = ( V、E),其中N个节点vi∈V,边( vi , vj)∈E,一个邻接矩阵A∈RN×N。节点特征信息矩阵表示为X = { x1,x2 …,xN },xi∈Rd。节点标签表示为one - hot向量Y = { y1,y2 …,yN },yi∈Rk将节点集划分为已标记节点集Vl和未标记节点集Vu。半监督学习的目标是预测未标记节点Vu的标签。

image-20240510171132551

2.2 图卷积网络

多层GCN遵循逐层传播规律。在第l层,输出为隐藏表示H (l),也就是第L层的特征:

image-20240510171249298

对于具有对称邻接矩阵A的图上的半监督节点分类的L层GCN,我们首先在一个预处理步骤中计算image-20240510171422483,正演模型采用简单的形式:

image-20240510171432851

然后,我们评估了所有标记样本的交叉熵误差(损失函数):

image-20240510180722851

方程1表明节点包含的信息在每一层都会传播到它的邻居:一个K层的GCN只将节点信息传播到K跳邻居。当仅给定少量标签时,例如5 %的标签率,浅层的GCN无法有效地将标签传播到整个数据图。对于浅层的GCN,未标记的节点可能会受到有限的关注,对学习过程的贡献较小,因此GCN的性能随着标记训练规模的缩小而迅速下降。

为了更好地利用无标签数据,一个自然的方法是使用更深的网络。例如,残差连接使GCN能够继承上一层输入的信息。即使在残差连接的情况下,层数较多的GCN在很多数据集上的表现也不如2层GCN,如引文网络。事实上,将更多的层堆叠到GCN中会导致过度平滑问题,这意味着通过网络的反向传播最终会导致节点的特征收敛到相同的值。事实上,大多数最先进的GCN不超过4层,这限制了GCN的表示能力。

现有的GCN及其变体不能充分利用未标记节点。我们提出RDD,通过考虑面向数据的方法来解决这个问题RDD中的教师模型可以为未标记节点生成可靠的节点嵌入,这些节点可以通过反向传播进行训练,而不是仅仅利用其相邻节点中包含的标签信息。因此,不管未标记节点距离已标记节点有多远,都可以使用未标记节点

2.3 集成学习

集成学习( Ensemble Learning ) 是一类将不同模型的预测结合成更准确的机器学习技术。集成学习已经在许多问题中证明了它的有效性,其中集成学习已经成为最有效的最先进技术的一部分,例如在臭名昭著的Netflix奖[ 4 ]和各种Kaggle竞赛[ 26 ]中。它也被广泛应用于半监督任务中,因为在未标记数据上学习到的知识可以用于训练一个新的分类器,然后将其与先前的分类器结合以获得更准确的分类器。

其中应用最广泛的集成方法之一是Bagging [ 8 ]。Bagging在采样的训练集上训练多个模型,然后将它们组合成一个模型。最终的模型通过让每个基模型对项目的类别进行估计,然后从这些估计中选择最合理的类别来预测项目的类别。Bagging旨在降低模型预测的方差,Boosting [ 20、30 ]旨在降低模型的偏差。为了达到这个目的,Boosting将多个较弱的模型组合成一个较强的模型[ 31、59 ]。类似地,Stacking [ 9 ]通过将多个基础模型的输出送入另一个算法进行组合,从而做出最终的预测。

基于这3种方法,近年来提出了许多工作。例如,XGBoost是梯度提升决策树的高效实现[ 17 ]。Snapshot Ensemble [ 27 ]中的神经网络沿着其优化路径收敛到不同的局部极小值。与Bagging [ 9 ]独立训练每个网络不同,Snapshot Ensemble在重置之前保存了模型参数学习率和将每个模型副本视为基模型。此外,Born重复神经网络[ 21 ]从不同的随机种子初始化每个基模型,每个基模型从早期模型的监督中训练。

证据表明,集成学习技术有效使用的两个关键因素是所使用的基础模型的多样性和准确性[ 13 ]。然而,从多样性和准确性的角度来看,上述方法并不适用于GCN。基于Bagging的方法在一个下采样的训练集上单独训练每个基模型,导致每个基模型的准确率较低,特别是只有很少的标记节点可用。此外,半监督技术通常会过拟合GCN中的标记节点[ 33 ],这使得Boosting不适合,因为基本模型几乎可以对所有标记节点进行分类。最后,BANs和Snapshot Ensemble都面临着多样性受限的问题,因为它们都是在前者的基础上训练每个基模型。

考虑到基模型的准确性和多样性,现有的所有集成方法都不适合在GCN上学习。根据GCN和图数据的特点,引入数据可靠性的概念,提出了一种新的基于图的集成RDD方法。 在可靠性的基础上,由于学生不仅可以像传统的GCN一样利用标签信息进行训练,而且可以得到教师模型和图拉普拉斯正则化的可靠监督,从而减少了基础模型的偏差。此外,RDD中的多样性高于BANs,这是因为RDD中的学生模型主动学习教师预测的可靠数据知识,因此有更多的机会重新学习不可靠的数据,并对这些数据做出不同的预测。

2.4 知识蒸馏

知识蒸馏( Knowledge Distillation,KD ) 是指将一个模型(教师)获得的知识转移到另一个模型(学生),该模型通常较小。特别地,KD被广泛应用于模型压缩。知识蒸馏旨在最小化下面的损失函数:

image-20240510182414029

其中l是一个损失函数,用来衡量教师模型H和学生模型h之间的预测距离。除了对标记数据的监督,h还得到了一个强大的教师模型H的额外监督。通过这样做,它可以在许多分类任务中获得比仅在标记数据上训练的常规模型更高的准确率。

KD可以实现不仅仅是提高学生模型的训练:最近的工作已经将KD与集成学习相结合,以进一步提高最终模型的准确性。BANs [ 21 ]和Mean教师[ 46 ]将蒸馏后的学生模型交互集成到一个集合中模型。由此得到的集合模型比单个模型的精度要高得多。

不幸的是,所有这些基于KD的集成方法都没有考虑教师预测的可靠性,导致基模型不准确和多样性有限。为了更好地利用教师模型中的知识,我们通过引入数据可靠性的概念来改进KD。

3、图数据的可靠性

在经典的KD中,学生模型将教师模型的输出视为真实的,甚至是错误分类的。这不仅引起了偏差,而且学生从老师那里学到了所有预测的知识,降低了整体的多样性。我们引入可靠性的概念来解决这两个问题。可靠性回答了以下问题:我能否信任这些数据为我的学习服务? RDD中的数据可靠性用于区分正确和不正确的教师输出,以防止学生学习不正确的知识。对于图数据,数据的可靠性也决定了在GCN的训练过程中,传播信息时需要考虑哪些节点和边。

3.1 节点可靠度

为了避免学生模型模仿错误的教师输出,我们引入了节点可靠性。节点可靠度是节点的一个属性,表示节点通过教师模型输出的结果是否可以用于训练学生模型 通过防止学生模型学习到教师模型的错误,节点可靠性降低了整体模型的偏差。

对于有标签的节点,知道输出是否可以使用是很容易的:如果输出与标签相同,则该节点是可靠的,否则该节点是不可靠的。然而,对于未标记的节点,由于我们不知道它们的标签,评估输出的正确性是困难的。我们使用信息熵的概念来评估输出是否正确的概率熵越低,预测的确定性越高(可以简单的理解成损失率越低,越正确)[ 32 ]。而不是使用对不同数据和模型可能有显著差异的阈值,我们认为熵最低的p %的输出被认为是正确的,而其他的都被认为是不正确的。此外,从集成学习的角度来看,如果所有的基模型对一个给定的节点预测相同的标签,那么预测结果更加确定。为了确保这一点,我们只考虑具有正确输出的节点,其中学生和教师模型预测相同的标签。

总的来说,一个节点是可靠的,如果

( 1 )它是一个有标签的节点,并且教师的预测标签是正确的;

或者

( 2 )它是一个无标签的节点,教师模型预测的熵在其预测标签的p百分比中最低,这是由于教师和学生的模型都是一样的。

其他所有节点都是不可靠的。

算法1展示了在每个训练阶段节点可靠性是如何更新的。

image-20240510183839287

在算法1中,我们首先使用教师模型(算法1中第1行)预测的softmax输出H ( xi )计算每个节点特征的信息熵IH ( x )。接下来,将这些值按照升序(算法1中第2行)进行排序。如果被标记的节点被正确分类为(算法1中的第4行),则被认为是可靠的。对于未标记节点,利用学生模型的预测结果计算信息熵Ihe ( x )。如果节点与之前的教师模型HT具有一致的标签预测,并且预测的信息熵IH ( xi )在IH ( x ) (算法1中第7 - 8行)的前p %较低,则认为该节点是可靠的。与IH ( x )不同,Ihe ( x )的值按降序(算法1中的第6行)排序。对于每个可靠节点vi,如果Ihe ( xi )在排序后的Ihe (算法1中的第9行)的top p %中较高,学生Ihe不确定其预测he ( xi )。这意味着学生不正确地学习数据vi,但教师可靠地学习它,因此我们将其添加到设置的Vb (算法1中的第9行)中。

对算法1进行解释:

image-20240510193829213

3.2 边缘可靠度

现有的GCNs在训练过程中一般没有考虑局部一致性问题。也就是说,如果连接的两个节点具有相似的特征,那么它们的标签和表示也应该是相似的。解决这个问题的一个简单方法是==图拉普拉斯正则化( GLR )==。GLR依靠的启发式是,共享边连接和相似特征的两个节点更有可能具有相同的类,并且应该具有相似的节点嵌入。

因此,GLR迫使相邻节点具有相似的嵌入。虽然这个假设看起来很直观,但它不能把握许多实际情况的复杂性,例如不同类的两个节点之间的边。我们引入边可靠性来改进GLR过程中使用的启发式。虽然如果两个相连的节点具有相同的预测标签,那么它们具有相似的节点嵌入,但挑战在于确保它们的预测标签是正确的。如Sec . 3.1,使用节点可靠性防止使用教师的预测可能是错误的。两个节点应该具有相似的嵌入,只有当它们都是可靠的并且它们的预测标签是相同的

image-20240510195555410

一条边是可靠的,如果它的两个节点都是可靠的,并且它们具有相同的预测类。算法2展示了我们的边缘可靠度计算。每次迭代后,我们使用wi,j来衡量两个节点嵌入xi和x j (算法2中第5行)之间的边可靠性。假设xi的直接邻域为{ xj,xj∈N ( xi ) },我们有

image-20240510195436702

式中:A、B、C均为零矩阵。如果两个节点相连,则我们有Ai,j = 1 。如果两个节点都是可靠的(算法2中第3行) ,Bi,j= 1。如果它们的预测ht ( xi )和ht ( xj )属于同一个类(算法2中的第4行),则Ci,j = 1 .当矩阵w更新后,如果wi,j = 1 (算法2中的第6行),则认为边( vi , vj)是可靠的。

也就是说,A=1表示两个节点有连边,如果两个节点都可靠则B=1,如果两个边的预测结果相同则C=1,当他们三个都为1的时候,才认为连边是可靠的。

4、可靠的数据蒸馏

4.1 概述

我们的可靠数据蒸馏方法遵循KD框架,具有教师模型和学生模型两种角色。教师模型是一个集合模型,它是之前所有学生模型的组合。它旨在为未标记的节点产生可靠的预测。学生模型是一个基本的GCN模型,它是在可靠节点上训练的,既包括有标签节点,也包括无标签节点,其节点嵌入由教师模型预测得到。

image-20240510200125138

图4展示了我们的具有两层GCN的RDD框架。RDD中的教师模型首先预测最后一层的节点嵌入。其次,学生根据教师和学生的输出来衡量每个训练阶段的数据可靠性。在得到可靠的数据后,学生将使用两种类型的数据进行训练:( i )有标签的数据和( ii )学生模型错误分类的可靠数据。最后,我们将学生整合到整体系统中,以构建一个更强大的教师。

RDD的训练过程

image-20240510200823961

算法3展示了我们训练过程的伪代码。在训练集上训练一个正则GCN作为第一个学生模型(算法3中第2行),并由它生成初始教师模型(算法3中第3 - 5行)。教师模型预测所有节点的输出。测量教师输出的可靠性,然后将输出分为可靠和不可靠输出(算法3中的第7行)。每个GCN中,学生模型在教师给出的可靠知识的监督下进行训练。一旦训练完成,将学生模型集成到集成系统中,得到更强大的教师模型(第18 ~ 21行)。我们提出了一个新的损失函数用于学生的训练,该损失函数包含有监督损失L 1 (算法3中的第8 - 10行)、无监督损失L 2 (算法3中的第11 - 13行)和正则化损失(算法3中的第14 - 16行)。训练过程迭代进行T次,将T个基模型与集成结合

  1. 初始化训练周期计数器𝑡为1
  2. 使用图G上的节点V和边E训练第一个GCN模型,记为ℎ1
  3. 对于每个节点的特征𝒙𝒊,计算第一个学生模型ℎ1的信息熵𝐼1(𝒙𝒊),这用于衡量模型预测的不确定性
  4. 计算第一个教师模型的权重𝛼1,该权重是基于节点的重要性和预测的不确定性
  5. 使用学生模型ℎ1和权重𝛼1更新第一个教师模型𝐻1
  6. 开始一个从2到𝑇的循环,用于训练剩余的GCN模型
  7. ​ 在每个训练周期中更新可靠节点集Vr和可靠边集Er
  8. ​ 对于标记节点集Vl中的每个节点𝑣𝑖
  9. ​ 计算监督损失L1+,这是学生模型对标记节点的预测与真实标签之间的损失
  10. ​ 对于学生模型预测错误但教师模型预测正确的节点集Vb中的每个节点𝑣𝑖
  11. ​ 计算非监督损失L2+,这是学生模型的预测与教师模型预测之间的差异
  12. ​ 对于可靠边集Er中的每条边(𝑣𝑖, 𝑣𝑗
  13. ​ 计算正则化损失Lreg+,这是基于图拉普拉斯正则化的损失项
  14. ​ 将监督损失、非监督损失和正则化损失组合起来,形成最终的损失函数L
  15. ​ 使用损失函数L训练学生模型ℎ𝑡,同时考虑教师模型𝐻𝑡−1的可靠知识
  16. ​ 对于每个节点的特征𝒙𝒊,计算学生模型ℎ𝑡的信息熵𝐼𝑡(𝒙𝒊)
  17. ​ 计算学生模型ℎ𝑡的权重𝛼𝑡,这反映了模型对节点预测的重要性和节点的重要性
  18. ​ 使用学生模型ℎ𝑡和权重𝛼𝑡更新教师模型𝐻𝑡
  19. 将所有训练好的学生模型通过权重𝛼𝑡组合起来,形成最终的集成教师模型𝐻𝑇

下面,我们将更详细地描述该方法的两个关键组件:可靠数据驱动的GCN (第4.2节),它使学生模型从可靠的数据中学习;以及考虑数据可靠性和数据重要性的基于图数据的集成( Sec.4.3 )。

4.2 可靠数据驱动的GCN

我们现在介绍如何充分利用数据的可靠性来改进半监督KD GCN。节点和边可靠度分别用于提供可靠的节点蒸馏和可靠的边蒸馏。

4.2.1 可靠的节点蒸馏

image-20240510205531034

可靠节点蒸馏的训练过程如图5所示。教师模型产生可靠的节点集学生模型产生不正确的节点集。这里的错误节点是指学生模型预测的熵值位于p %最高的节点。不正确的不一定是标签,而是对应的高熵嵌入。采用新的损失函数对学生模型预测错误的数据进行学习

对于每个节点vi∈Vb教师模型Ht-1可靠地学习到了它,而当前的学生模型ht错误地学习到了它。通常情况下,教师模型比当前的学生模型更强大。为了纠正ht错误分类,学生模型从Ht-1中学习其正确标签。与传统的GCN一样,我们首先对标记节点施加监督损失,如式( 6 )所示。

image-20240510201233678

为了纠正其错误值,学生模型h t试图模仿每个可靠节点x i的嵌入F t ( x i )。与KD类似,我们使用学生模型h t来模拟教师模型H t-1的输出。然而,我们有两个主要的分歧。首先,我们模拟了整个节点嵌入,而不是KD中使用的softmax输出,因为原始节点嵌入包含了比softmax输出更多的信息。此外,学生模型h t-1主动地从教师模型中学习可靠的知识,而传统的KD只学习所有的知识,没有选择。我们将我们的方法表述为损失函数的一部分:

image-20240510201322490

对于训练流水线,我们训练H t-1来修正学生模型h t的误差。

4.2.2 可靠的边缘蒸馏

我们简要回顾了图表示学习研究的基本假设:

假设1 具有边连接的两个节点更可能具有相同的类

假设2 具有边连接的两个节点具有相似的节点嵌入

基于假设1和假设2,半监督图节点分类问题可以被框定为图拉普拉斯正则化问题

image-20240510213426298

其中L1表示监督损失,f ( · )是标签映射函数。方程8的提法依赖于假设1,即图中的连通节点很可能共享相同的标签。此外,还有许多图嵌入研究建立在假设1和假设2的基础上,即连接的节点更可能具有相同的类和相似的节点嵌入。不幸的是,这个假设在许多节点上与现实不同。

L1 是有监督学习损失,Lreg 是正则化损失,这个损失基于图中相邻节点的嵌入表示之间的相似性,通常采用图拉普拉斯正则化。

可靠的边缘蒸馏是基于一个直觉,即当两个相连的节点具有不同的标签时,在边缘上使用图拉普拉斯正则化可以使学习高度退化。对于关注的边,最好不要使用图拉普拉斯正则化。因此,可靠边蒸馏对何时使用边有严格的限制:只使用可靠边来表达节点的邻接信息。两个节点之间的一条边是可靠的,只有当节点本身是可靠的,并且它们的预测标签属于同一个类。

更具体地说,我们改进了方程中的正则化项公式(8),利用边可靠性。基于可靠的边,我们最小化下面的正则化损失:

image-20240510214122757

4.2.3 可靠的数据驱动优化

在得到可靠的节点和边后,我们使用可靠的数据驱动优化来训练GCN。学生模型的优化损失函数为公式(10)。

image-20240510214253289

其中γ控制可靠节点知识的比例ht应该从以前的教师模型Ht-1中转移,β控制边蒸馏的强度。我们使用标准的反向传播( Back Propagation,BP )算法来优化每个GCN,它的权重使用公式(10)来更新。

4.3 基于图数据的集成

image-20240510214529216

得到学生模型ht后,通过(算法3的第19行)计算节点vi的信息熵,此时的信息熵是经过蒸馏过后的,得到的最后一个信息熵It ( xi ) :

image-20240510214544041

使用负号是因为,在(0,1)区间内,log函数是一个负值,加上负号将其变为正值。

一个值较低的 It ( xi )表示ht对节点vi的预测有信心。对各个基础模型的性能进行评估。较高的Pr ( xi )意味着节点xi相对更重要,因为它具有较高的PageRank值,并且在训练过程中更多的节点需要其帮助来更新它们的嵌入。

PageRank值:一种指标,用来衡量节点的重要性。

image-20240510215234451

image-20240510215257605

因此,我们应该对这一节点给予更多的关注。考虑到每个节点的重要性,我们通过(算法3的第20行)计算每个基模型的权重,使用公式(11)中得到的信息熵It ( xi ):

image-20240510215102498

由于GCN在有标签节点上训练时容易过拟合,我们考虑ht在有标签节点和无标签节点上给出的预测的信息熵,而不是传统的Boosting技术,即通过有标签节点上的准确率来衡量α t。α t越高,模型ht对它的预测越有信心,因此它在最终的集合过程中的作用越重要

经过T次迭代,可以得到T个学生模型。对于每个基模型ht,我们可以相应地得到它的权重α t,然后将其添加到最终的集成教师模型Ht中。具体来说,我们用模型权重α t来平均每个基模型ht的softmax输出,并将集成模型HT定义为(算法3的23行):

image-20240510215445253

也就是说,αt的作用是用来衡量每个学生模型在总教师模型中所占的权重,将他们各自的输出乘以这个权重,就可以得到最终的集成模型的输出HT

5、实验

5.1 实验设置

为了验证RDD的有效性,我们在多个真实数据集上对基于图的半监督学习任务进行了广泛的评估。我们首先介绍了实验中使用的四个数据集,然后列出了对比基线及其设置。最后,我们给出了初步的实验结果并进行了讨论。

数据集

为了比较,我们使用了文献[ 33 ]中发布的三个引文网络的分区数据集和文献[ 36 ]中的知识图谱。表2展示了这四个数据集的概述。

引文网络[33]通过将切比雪夫多项式截断到一阶邻域产生节点嵌入。引文网络中的每个节点代表在相应期刊上发表的一篇文章。两个节点之间的边表示从一篇文章到另一篇文章的引用,标签表示文章的主题。每个节点的特征向量对应着文档的一个词袋表示。

在引文网络的上下文中,**“bag-of-words”(词袋)**模型可以用来表示每篇论文的内容。每个节点的特征向量可以基于论文的文本内容(如摘要或全文)构建。这样,即使原始数据是文本形式的

对于三个引文数据集,每类采样20个实例作为标记数据,1000个实例作为测试数据,其余作为未标记数据。我们使用一个在文献[ 33 ]中的额外的500个标记节点的验证集来调整超参数(使用了该论文中验证集中的500个标记节点)。

知识图谱NELL NELL是从文献[ 12 ]提出的知识图谱中提取的数据集。对于该数据集,每个关系被描述为一个三元组( e1 , r , e2),并将被分配给独立的关系节点r1和r2,分别为( e1、r1)和( e2 , r2),其中e1和e2是实体,r是它们之间的关系。如文献[ 33 ]所述,我们通过为每个节点分配唯一的one-hot表示来扩展特征,从而得到一个61278维数的稀疏特征向量。对于这个半监督任务,我们考虑训练集中每类10 %的标记率。另外一个500个标记节点的验证集用于调整超参数,而我们不使用标签进行模型训练。

基线方法

为了评估单个模型在RDD中的性能,我们将我们的方法与四种具有代表性的方法进行了比较。首先,我们将RDD与两种具有代表性的基于图的SSL方法:标签传播( label propagation(LP) ) [ 62 ]和Planetoid [ 54 ]进行了比较。

由于RDD是一种基于集合的方法,我们首先将其最终的集合精度与其他集合方法进行比较。需要注意的是,我们的方法并不局限于基础模型的架构。为了公平,每个集成方法的基模型都使用一个两层的GCN。我们将RDD与Bagging [ 9 ]和BANs [ 21 ]进行了比较。

通常,较高的计算成本使得集成模型不适合在线预测。模型太大,不适合主存,特别是手机。尽管如此,单个模型仍然比它贡献的集合模型小得多,可以单独作为分类器使用。特别是RDD中的最后一个单一模型是在最强大的教师模型的监督下训练的,因此在所有的基础模型中表现出最好的准确性。我们将最后一个单一模型在RDD中的性能与其他最新的非集成模型:GAT [ 48 ],GPNN [ 36 ],APPNP [ 19 ],LGCN [ 22 ],NGCN [ 1 ]和DGCN [ 64 ]进行了比较。

作者很聪明,使用了最后一个单一模型与其他模型进行比较,这样得到的效果是最好的,可以将这个思路用于我们自己的研究。

最后,目前的一些方法旨在训练一个深度GCN,以充分利用未标记数据。由于我们有相同的动机,我们也将RDD与ResGCN [ 33 ],Dense-GCN [ 34 ]和JK - Net [ 51 ]进行了比较。

一般,深度GCN模型可以充分利用网络中不容易遍历到的节点,以提高预测准确率,所以作者使用自己的模型和这些深层GCN模型进行了比对。

设置

我们使用PyTorch实现了以下模型:GCN,Bagging,BANs,JKNet,ResGCN,DenseGCN和我们的RDD模型(无论是单一的还是集合的)。对于其他模型( LP、Planetoid、LGCN、GPNN、NGCN、DGCN、APPNP、GAT),所有的实验结果都是从他们各自的出版物中得出的。

我们使用Adam优化器对模型进行训练,每个数据集的学习率为0.01。对于引文网络,我们将l2正则化因子设置为5e-4;对于NELL,我们将l2正则化因子设置为1e-5。dropout应用于所有特征向量,引用网络的dropout率为0.8,NELL的dropout率为0.2。对于网络结构,ResGCN和GCN的隐藏特征维度对于三个引文网络都设置为16对于NELL为100对于JK - Net和DenseGCN,每增加一层,隐藏特征的维度增加20。例如,一个6层的JK - Net的特征维度为{ 90,70,50,30,10,F },其中F为给定节点分类任务的类别数。注意到JK - Net有3个聚合器,因此我们选择级联作为最终的聚合层。

我们使用验证集对RDD中的三个超参数进行了调优。对于每个数据集,我们将参数β设置为10,p设置为40。此外,为了更好地迁移教师模型的知识,我们提出了一种 余弦退火 方法来调整γ。

image-20240510222422468

类似于SGDR [ 37 ],对于总E训练期中的第e期,我们将其调整为,

image-20240510221839320

我们对Cora,Citeseer,Pubmed和NELL设置了相应的γ initial初始值为1,3,3和0.01。在训练过程的第一阶段,学生模型的预测是不准确的,因此我们应该更少地关注L2和Lreg损失。通过使用这样的余弦退火时间表,学生模型收敛得更快。

因为一开始的模型没有集成模型,训练效果比较差,使用余弦退火法能够最开始少一些权重,后面训练的模型多一些权重,增加集成模型的准确度。

对于训练预算,我们对每个单模型进行500个epoch的训练,如果验证精度连续20步没有提高,则终止训练过程。此外,对于每种集成方法,我们训练了五个基模型,并将它们的输出进行组合,以得到最终的预测结果。值得注意的是,我们没有在Bagging中对样本数据进行基模型的训练。这是因为SSL中的标记数据通常是有限的,并且由于训练数据有限,对数据集进行采样会引入基础模型的高偏差。

为了消除随机因素,我们每种方法运行10次,并报告在测试集上的平均预测精度。我们用数字来表示分类准确率。(每10个epoch计算一次平均精度

5.2 与集合方法的比较

我们比较了我们的RDD模型(单个模型(标记为’ RDD ( Single) ’ )和集成模型(标记’ RDD ( Ensemble ) ’ ) - -其他集合方法。单个规则的GCN模型被称为" Single GCN "前面提到的,最后一个学生模型)。在对五个基模型进行集成之后,我们对最终的集成精度进行了比较,结果如表3所示。表3显示了如何进行可靠的数据蒸馏- -无论是单个模型还是集成模型- -与两个集成基准:Bagging和BANs相比。

image-20240510223239334

表3 RDD集成和单一模型与其他集成方法在引文和知识图谱数据集上的准确率对比。对于每个数据集,强调了基线的最佳性能。不仅我们的RDD集成模型优于其竞争对手,而且单个模型也取得了非常有竞争力的结果。

所有的集成方法在四个数据集上分别比单个GCN至少提高了2.3 %,1.3 %,0.5 %和2.1 %。它证实了使用多个基础模型的聚合具有较小的噪声并提高了其准确性。虽然BANs和Bagging之间没有明确的赢家,但RDD的集成模型提供了最高的准确性。对于这四个数据集,集成RDD在所有情况下都优于其他方法,与BANs和Bagging相比,在准确率上提供了0.9 %到1.6 %的增益。令人惊讶的是,单个RDD模型在四个数据集中的三个数据集上也优于集成方法,表明了我们方法的有效性。

与BANs相比,RDD通过阻止学生模型学习教师模型的每一个预测作为基本事实来提高多样性,使学生比教师模型更多样化。另一方面,虽然Bagging通过单独训练每个基模型具有较高的多样性,但其基模型的预测质量较差。

5.3 与单一模型的比较

为了展示单个模型的性能,我们将我们方法的最后一个基模型的精度与其他最先进的方法进行了比较。表4显示了在准确性方面获得的结果。需要注意的是,每一栏的最佳表现都是在粗体字中凸显出来的。

image-20240510223215520

表4:我们的RDD单一模型及其竞争对手在引文网络上预测的准确性( % )。对于每个数据集,都强调了最佳的基线值。我们的模型优于其竞争对手。

我们的单个RDD模型优于最具竞争力的基准模型(其价值被强调),在每个数据集上都取得了显著的提升:它取得了更好的性能在Cora ( DGCN ),Citeseer ( LGCN )和Pubmed ( APPNP )上分别比目前最先进的方法高出1.3 %,0.6 %和0.6 %。值得注意的是,RDD中的基础模型是GCN,当我们在Cora,Citeseer和Pubmed数据集上训练时,我们的单个模型超过原始GCN 3.0 %,2.8 %和1.4 %。虽然我们选择了实现简单且计算成本相对较低的GCN,但我们的方法并不局限于我们使用的基模型,因此如果我们使用像GAT [ 48 ]这样更强大的基模型,我们的速度可以进一步提高。

与其他基线相比,RDD中的每个模型不仅可以用有监督的损失进行训练,而且还可以从强大的教师模型中学习可靠的知识来纠正它错误的分类。通过准确率的比较,我们观察到RDD仅使用单一模型就可以获得较高的准确率,这对于移动设备和在线预测来说是一个重要的资产。

5.4 与深层GCN的比较

为了充分利用图中的未标记数据,一种基于朴素算法的方法是训练一个深度GCN。这个问题从数据驱动的角度出发,我们将其与ResGCN、DenseGCN、JK - Net进行比较,因为它们都是为了训练更深层次的模型。我们逐步增加每个深度GCN的层数,并在验证数据集上调整所有对比方法的层数。值得注意的是,我们报告了所有网络架构中最好的准确率,原始结果如表5所示。

image-20240510224018838

表5:我们的RDD模型与深度GCN模型的准确率比较。对于每个数据集,都强调了最佳的基线。我们的模型优于深度GCN模型。

与GCN相比,ResGCN、DenseGCN和JK - Net保留了更多的原始特征信息。然而,它们的性能确实比GCN有小幅度的提高:它们忽略了每个节点之间的差异,从而引入了深层高度层节点的过平滑问题。对于未标记的节点,如何训练一个深度GCN来充分利用它们的潜力仍然是一个开放的问题。

RDD优于所有竞争对手:在Cora、Citeseer、Pubmed和Nell中,其准确率分别超过下一个最佳竞争对手模型2.6 %、2.7 %、1.4 %和1.1 %。因此,RDD可以更好地利用未标记节点。

5.5 集合分析

为了评估我们的集成策略的有效性,我们首先计算Bagging、BANs和RDD这5个基础模型得到的平均准确率。我们将该值与相应的集成精度进行了比较。表6显示了每种方法的原始结果和增益。

image-20240510224617391

图6:使用不同数量的标注数据在Cora引文网络上的GCN性能

在这三种集成方法中,Bagging的准确率最高,提高了2.4 %。Bagging对每个基模型进行单独训练,因此可以获得最高的多样性。然而,如果我们只有少量的标记节点,那么每个单一模型的准确率都很低。

BANs的单一模型具有较高的准确率,但由于其KD学习使学生模型模仿教师模型的知识,模型之间的多样性较差,导致准确率的提高有限。

另一方面,RDD充分利用了两个全新的视角:其可靠性的使用增加了模型之间的多样性,同时提供了准确的单一模型。 RDD不仅具有更精确的基模型(比BANs提高了+ 0.6 %),而且还得益于集成学习,导致性能最佳。因此,RDD是最适合于GCN的方法。

5.6 图稀疏性分析

在这一部分,我们评估了图的稀疏性对测试精度的影响。为了改变稀疏性,我们改变每个类的标记节点数量。我们将RDD与其主要竞争对手进行了比较。为了公平比较,我们不改变Cora中的验证集和测试集。我们发现每个类别在训练集中至少有77个标记节点,因此我们将每个类别的最大标记节点数设置为77我们计算了每类标记数据分别为5、10、15、20、35、50、65和77时对应的测试准确率。实验结果如图6所示。

如图6 ( a )所示,当我们增加每个类的标记数据的数量时,RDD ( Single )总是大大超过比较的基线。这是因为RDD中的单个模型可以从强大的集成模型(教师模型)中获得额外的监督。当我们逐渐增加每个类的标记数据的数量到77时,图6 ( b )显示RDD和Bagging的差距减小,这意味着Bagging中的基础模型也从每个类的大量标记数据中获得。当每个类的标记数据数量大于35时,Bagging和RDD都优于BANs。BANs中的学生模型模仿了教师的所有softmax输出,导致基础模型多样性低,集成模型不准确。

5.7 超参数探索

我们考察超参数对RDD的影响。它有三个超参数:p控制节点可靠性的阈值γ控制知识转移的比例β控制边正则化的强度。为了评估他们的影响,我们改变他们的价值,并监测其造成的影响。注意,我们使用我们定义的余弦退火方法来调整γ,这里我们使用的γ的初始值。对于这些实验,我们重点关注Cora数据集。表7显示了原始结果。

image-20240510225216853

表7:超参数对Cora数据集准确率( % )的影响。

可以看出,取可靠数据集中的前40%比取80%的结果要普遍好。

为了分析p的影响,我们将p设置为40和80。我们从表7中观察到,设置γ为0.4的RDD在大多数情况下具有较高的准确性。当设置较高的p值时,图中较多的节点和边将被认为是可靠的。相应地,RDD中的学生模型可以从教师模型中获得更多的知识。然而,迁移知识的可靠性可能会降低,这可能会引入具有高偏见的学生模型。此外,由于学生模仿了更多来自教师模型的知识,因此集成系统的多样性可能会相应减少。由于准确性和多样性对集成系统都很重要,所以设置较高的p值是不合适的

设置γ为0意味着每个学生模型在没有L2损失函数的情况下进行训练。在这种情况下,模型只受益于可靠的边缘正则化,因此RDD的测试精度会有重要的下降。同样,如果我们将β设置为0,模型将忽略可靠的边缘正则化。在γ和β都为0的极端情况下,每个基模型单独训练:这类似于Bagging。

由表7可知,这3个参数是重要的。在Cora上获得最佳准确率86.1 %的最佳组合为p = 40,γ = 1,β = 10。虽然改变它们的值会影响准确率,但在大多数情况下,结果仍然优于BANs和Baggin的结果,显示了RDD相对于竞争对手的优越性。

5.8 各贡献的影响

为了衡量每个贡献对最终精度的影响,我们在一次去除每个特征的同时进行RDD测试。我们用得到的方法在三个引文网络数据集上进行预测。我们测试RDD:( i )没有L2损失函数(叫’No L2 ‘),( ii )没有Lreg损失函数(称为" No Lreg "),( iii )没有我们的集成加权方案,即使用与Bagging (称为’ WEW ‘)相同的加权方案,( iv )没有节点可靠性(称为’ WNR ‘),( v )没有边可靠性(称为" WER "),( vi )没有知识可靠性,即没有节点和边可靠度(称为’ WKR ')。表8显示了7种方法的结果。

image-20240510230119227

表8:RDD不同关键贡献对准确率的影响( % )。所有这些都有重要影响,在不影响精度的情况下无法去除。

损失函数。L2损失函数的使用对精度的影响比Lreg损失函数更为重要。因此,来自教师知识展现的知识转移是最重要的。

集成加权方案。与Bagging中使用的加权方案相比,我们的方法在所有数据集上都提高了准确率。这是因为我们根据节点重要度和预测置信度来计算模型权重。

可靠性不容忽视。可靠性对系统的精度有着深远的影响。值得注意的是,节点可靠度贡献最大:例如在Cora上,当删除节点可靠度时,额外删除边可靠度仅降低0.1 %的精度。这说明,在Cora数据集上,边可靠性提供的大部分知识已经包含在节点可靠性中。在PubMed上,这一数值增加到0.6 %,表明知识可靠性不能降低到唯一的节点可靠性,但这两个概念都是有用的。

L2损失函数和知识可靠性之间没有明确的胜者,表明这两种方法在RDD中都起着重要的作用。

5.9 效率分析

由于RDD在每个epoch更新可靠的节点和边,因此训练时间会相应增加。有必要分析额外计算对效率的影响程度。为了在Cora上达到84 %的准确率,我们报告了每种方法在GPU上所需要的训练时间。结果见表9。

image-20240510230411170

表9:在cora数据集上使用不同集成方法的训练时间。

Bagging的训练时间最快,因为RDD和BAN都依赖于KD,KD需要更长的训练时间。RDD由于训练更加精细,速度较慢。RDD训练单个模型所花费的时间大约是它的两倍。

然而,如Sec . 5 . 5时,RDD比其竞争对手需要更少的基模型才能达到84 %的准确率:Bagging需要4个,BANS需要3个,RDD只需要2个。这导致了相似的训练时间以获得满意的表现。

6、相关工作

图数据近年来得到了广泛的研究[ 28、38、40 ],由于对整个图进行标注极其耗时,大量基于图的半监督学习方法被提出。在这些方法中,大多数方法都假设邻近节点可能具有相同的标签[ 15 ]。基于这一思想,近年来提出了一系列的工作。例如,我们可以通过马尔科夫随机游走[ 45 ]和谱核[ 58 ]为每个节点学习一个平滑的低维嵌入。此外,作为一种低通图滤波[ 18 ],标签传播[ 62 ]及其变体[ 5、61 ]也很受欢迎。

每个节点的特征向量也包含了许多有用的信息,因此许多方法被提出来对图结构和节点特征进行联合建模。一种常用的方法是利用正则化对监督学习器进行正则化。 例如,流形正则化[ 3 ]利用了生成数据的边缘分布的几何结构,并将其作为额外的正则化项。此外,深度半监督嵌入[ 49 ]和Planetoid[ 54 ]都使用拉普拉斯正则化器或基于嵌入的正则化器来正则化神经网络。

目前,图上的神经网络由于其出色的性能[ 16、53 ]而备受关注。通过从图信号处理的角度引入滤波器[ 44 ],GCN很好地设计了一种图卷积的变体[ 10 ]。相应地,基于光谱的GCNs的改进、扩展和近似也越来越多[ 50 ]。然而,谱方法通常同时处理整个图,因此它们难以并行或扩展到大型图。

为了解决这个问题,空间相关性GCNs将图卷积表示为来自邻居节点特征的聚合。例如,Graphsage [ 24 ]对每个节点的邻域进行采样,然后通过聚合相邻信息来更新其特征。结合采样策略,Graphsage的计算可以分批进行节点而不是整个图,因此可以在一个大图中高效地实现。

基于这两种类型的GCN,近年来提出了许多可供选择的GCN,一些代表性的方法包括GAT [ 48 ],GPNN [ 36 ],APPNP [ 19 ],LGCN [ 22 ],NGCN [ 1 ]和DGCN [ 64 ]。然而,由于过度平滑问题[ 35 ],这些方法不能很好地使用深层结构进行收敛,从而限制了未标记节点的使用。最近的一些算法被提出来解决这个问题,例如ResGCN [ 33 ],DenseGCN [ 34 ]和JK - Net [ 51 ]。

我们不去寻找深层的架构,而是从数据的角度来考虑这个问题。基于KD,我们在教师的监督下训练每个学生模型,然后学生可以在有标记和无标记的数据上主动学习迁移的知识以纠正其错误学习的内容。与现有的GCNs相比,我们的方法能够更好地利用未标记节点。

7、结论

GCN在许多应用中被广泛使用,但在半监督学习任务中,GCN未能充分发挥未标记节点的潜能。在本文中,我们提出了可靠数据蒸馏( Reliable Data Distillation ),一种半监督学习的GCN学习方法,可以更好地利用未标记节点。我们在图中引入了节点和边可靠性的概念。利用这些概念,我们设计了一个KD模型,称为可靠数据蒸馏( Reliable Data Distillation ),它通过只关注学生对可靠知识的学习来改善学习。然后将得到的模型组合成优于使用单个模型的集成学习方法。我们在几个真实数据集上的广泛评估表明,可靠数据蒸馏- -无论是单一模型还是集成模型- -在节点分类任务上都比竞争对手有显著的优势。

论文地址:https://dl.acm.org/doi/10.1145/3318464.3389706

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

宇直不会放弃

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值