返回

对比连接中的蒸馏自我知识:非消息传递的图节点分类

人工智能

摘要

图节点分类是一种基本的图挖掘任务,旨在预测每个节点的类别标签。近年来,对比学习在节点分类任务中取得了成功,但现有方法大多依赖于消息传递机制。本文提出了一种用于非消息传递图节点分类的新颖对比学习方法。该方法通过对比相邻节点的特征,从对比连接中蒸馏自我知识,而无需显式地传输消息。实验证明,该方法在各种图数据集上优于现有的对比学习方法。

介绍

图节点分类是图挖掘中的基本任务,旨在预测每个节点的类别标签。传统的图节点分类方法通常基于图卷积网络(GCN),该网络通过消息传递机制在节点之间传播信息。然而,消息传递机制在处理大规模图时可能会效率低下,因为它们需要显式地计算节点之间的消息传递。

对比学习是一种最近在自然语言处理和计算机视觉等领域取得成功的自监督学习范式。它通过学习将正样本聚类在一起并将负样本分开,从无标签数据中学习有用的特征表示。在图节点分类任务中,对比学习可以用于学习具有区分力的节点嵌入,而无需显式地使用标签信息。

本文提出了一种用于非消息传递图节点分类的新颖对比学习方法。该方法通过对比相邻节点的特征,从对比连接中蒸馏自我知识,而无需显式地传输消息。具体来说,我们定义了一种新的对比损失,该损失函数旨在鼓励相邻节点的特征在对比视图下相似,同时在非对比视图下差异。我们还提出了一种基于交叉熵的辅助分类损失,以进一步提高分类精度。

方法

对比损失

我们的对比损失基于InfoNCE损失函数,该函数在对比学习中广泛使用。给定一对相邻节点v和u,InfoNCE损失函数定义为:

L_{InfoNCE}(v, u) = -log \frac{exp(f(v) · f(u) / τ)}{∑_{i=1}^{k} exp(f(v) · f(i) / τ)}

其中f(v)和f(u)分别是节点v和u的特征表示,τ是一个温度超参数。分母中的求和项包括k个负样本,它们是随机从邻居节点中采样的。

为了鼓励相邻节点的特征在对比视图下相似,我们修改了InfoNCE损失函数如下:

L_{Contrast}(v, u) = -log \frac{exp(f(v) · f(u) / τ)}{exp(f(v) · f(v) / τ) + exp(f(u) · f(u) / τ)}

这个新的损失函数惩罚了相邻节点特征之间的差异,同时奖励了它们之间的相似性。

辅助分类损失

除了对比损失之外,我们还提出了一种基于交叉熵的辅助分类损失。该损失函数定义为:

L_{CE}(v, y_v) = -log \frac{exp(f(v) · w_{y_v})}{∑_{i=1}^{C} exp(f(v) · w_i)}

其中y_v是节点v的真实标签,w_i是类别i的权重向量,C是类别数。辅助分类损失鼓励节点嵌入在分类决策边界上分离。

优化

我们使用Adam优化器优化以下总损失函数:

L = L_{Contrast} + αL_{CE}

其中α是一个超参数,用于平衡对比损失和辅助分类损失。

实验

我们对各种图数据集进行了实验,包括Cora、Citeseer和Pubmed。我们使用GCN作为图神经网络模型,并使用对比损失和辅助分类损失对其进行训练。

实验结果表明,我们的方法在所有数据集上都优于现有的对比学习方法。例如,在Cora数据集上,我们的方法获得了87.8%的准确率,而InfoNCE和SimCLR等对比学习方法的准确率分别为85.1%和86.2%。

结论

本文提出了一种用于非消息传递图节点分类的新颖对比学习方法。该方法通过对比相邻节点的特征,从对比连接中蒸馏自我知识,而无需显式地传输消息。实验证明,该方法在各种图数据集上优于现有的对比学习方法。