Few-shot node classification based on task-aware subgraphs
-
摘要:
目前基于图神经网络的节点分类方法依赖大量标记数据,且长尾标签分布降低了学习效率。在低资源场景下,基于元学习的少样本学习是图表示学习的有效途径,然而,全局图学习会引入任务无关噪声,且现有原型网络方法直接计算节点与类原型的相似性以对节点分类,在少样本条件下难以准确计算类原型。针对此,提出了基于任务子图感知的少样本节点分类算法(few-shot node classification based on task-aware subgraphs, TAS-FNC)。该方法通过结构裁剪与拓扑增强,为当前任务构建高连通性子图,在其上学习特定任务的节点表示以减轻无关噪声影响;进而学习查询节点与类原型的关系以进行节点分类。在4个数据集上与11种基线方法进行比较实验表明,TAS-FNC能在标记样本稀缺的场景下有效提高节点分类的准确度。
Abstract:Current graph neural network-based node classification methods rely on large amounts of labeled data and are limited by long-tailed label distributions. In low-resource settings, meta-learning-based few-shot learning is effective for graph representation. However, global graph learning introduces task-irrelevant noise, and current prototypical networks, which classify nodes by directly computing similarities between nodes and class prototypes, struggle to estimate accurate prototypes under few-shot conditions. To address these issues, we propose a task-aware subgraph-based few-shot node classification method (TAS-FNC). This method constructs high-connectivity subgraphs for each task through structural pruning and topological enhancement, enabling task-specific node representation learning and reducing noise. It then models the relationships between query nodes and class prototypes for classification. Experiments on four datasets against 11 baselines show that TAS-FNC effectively improves node classification accuracy in label-scarce scenarios.
-
节点分类作为典型的图分析任务,广泛应用于社交网络分析[1]、蛋白质功能预测[2]、金融欺诈检测[3-4]等领域。现有节点分类方法大多遵循监督或半监督范式,依赖于每个类别都有足够数量的标记节点[5-6]。然而,现实中的图数据往往呈现出长尾分布,即大多数节点集中在少数头部类别中,而尾部类别的标记节点数量稀缺,导致模型难以有效学习尾部类别节点的表示,限制了现有节点分类方法在多类别图数据中的应用效果。少样本学习能够在仅有极少标记样本的情况下实现有效训练与快速泛化,为应对节点分类中的标注稀缺问题提供了新的解决思路[7-8]。
少样本节点分类方法通常采用元学习框架,从包含大量标记数据的类别中采样元训练任务进行模型的训练和优化,进而实现对只有少量标记样本类别的有效分类[9-12]。这种元学习过程使模型能够从多个训练任务中学习先验知识,并将其有效应用于只有少量标记样本的测试任务。相较于基于优化的方法需要大量迭代更新参数,类原型方法通过直接比较查询样本与类原型的相似性进行分类,显著降低了计算复杂度,从而更好地满足少样本场景下对效率和可解释性的双重需求[13]。
现有的少样本节点分类方法面临两大挑战。首先,图数据规模庞大且每个元任务仅包含少量节点,若利用全局图结构进行学习,可能会引入任务无关的噪声。虽然为特定任务采样子图可以在一定程度上缓解这一问题,但现有方法在采样过程中往往忽视类内拓扑的连通性,限制了消息传播的范围。其次,现有基于原型网络的方法通过计算查询集与类原型的相似性来确定查询节点类别,然而,在标签样本较少的情况下,节点或类原型的表示可能缺乏判别性,与其他非最近原型的嵌入距离中可能包含有关节点类别的额外信息,直接计算二者的相似性难以提供有效的分类信息。
针对上述挑战,本文提出基于任务子图感知的少样本节点分类算法(few-shot node classification based on task-aware subgraphs,TAS-FNC),为每个任务采样连通性强的任务子图,并在其上优化关系学习模型,以更准确地判定查询节点与类原型的关系。TAS-FNC包括任务子图表示、原型学习、关系学习、节点分类4个模块。任务子图表示模块融合邻域采样与连通性采样,筛选关键邻域和枢纽节点并补充高相似度边以增强类内连通性,生成连通性好的子图以学习任务相关节点嵌入,减少任务无关噪声并提升任务适应性;原型学习模块通过评估支持节点对类原型的贡献程度,加权构建类原型以减轻异常节点影响;关系学习模块将查询节点与类原型的相对位置投影到关系学习空间,学习二者之间关系,以提升分类准确性;节点分类模块基于学得的关系进行节点分类。
1. 相关工作
在少样本节点分类中,节点表示的质量直接影响分类准确率,节点表示越优,类原型的代表性越强,分类效果越好。元学习框架则通过在极少标记样本下实现跨任务的知识迁移,进一步提升模型的泛化能力。本节将从图表示学习、少样本学习和图少样本节点分类3个关键方向梳理相关研究进展。
1.1 图表示学习
图神经网络作为图表示学习领域的前沿技术,在节点分类任务中取得了显著成功,逐渐成为少样本图学习的核心方法[6,14-15]。基于图神经网络的节点分类方法主要分为谱域方法和空域方法。谱域方法通过卷积定理在频域定义谱滤波器,利用图傅里叶变换实现特征提取,典型模型如GCN(graph convolutional network)[16]、SGC (simplifying graph convolutional network)[11]等。空域方法则基于消息传递机制,通过聚合邻域节点特征实现拓扑结构感知,代表模型如GraphSAGE(graph sample and aggregation)[17]、GAT(graph attention network)[18]等。这些方法通常依赖监督或半监督学习范式,需要大量的标记数据,但在标注数据稀缺时性能显著下降,暴露出对标签依赖性强的局限性。
1.2 少样本学习
少样本学习(few-shot learning, FSL)旨在通过极少量标记样本实现模型对新任务的快速适应[19]。元学习是经典的少样本学习方法,通过构建“元任务”模拟真实场景中的知识迁移过程,以快速获取先验知识[20]。现有方法可分为基于度量和基于优化两类。ProtoNet(prototypical networks)[21]作为典型的基于度量的方法,通过元任务训练机制构建跨任务的特征嵌入空间,将支持集样本映射为类别原型表示并计算查询样本与原型间的相似性实现分类;而MAML(model-agnostic meta-learning)[22]是基于优化的经典方法,通过提取元知识优化模型初始化参数,使得仅需少量训练样本的内部优化即可快速适应新的任务。
1.3 图少样本节点分类
传统少样本学习方法虽在图像视觉领域取得显著进展,但由于其假设数据独立同分布且缺乏显式拓扑结构,难以直接迁移至图数据任务。在基于优化的方法中,Meta-GNN(meta graph neural network)[10]将MAML与GNN(graph neural network)结合,通过元训练阶段的梯度更新实现参数快速适应。AMM-GNN(attribute matching meta-learning graph neural network)[7]引入注意力机制强化元知识提取,动态分配权重以捕捉任务间关联。TENT(task-adaptive few-shot node classification)[23]采用节点级特征对齐、类级原型对齐和任务级关系对齐的协同优化策略,缓解元任务方差对泛化性能的影响。然而,上述方法直接在全局图上学习节点表示,易受任务无关噪声干扰,泛化能力受限。为缓解噪声问题,子图采样方法被提出,GLITTER(graph few-shot learning with task-specific structure)[8]通过全局邻域采样与关键节点采样,为每个元任务构建特定子图结构以学习任务相关的节点表示。X-FNC(few-shot node classification with extremely weak supervision)[24]通过随机采样任务节点的邻居与非任务节点构建任务子图用于下游任务。尽管这类子图采样策略旨在减少全局噪声,其采样过程往往缺乏对子图拓扑连通性的显式约束,可能导致类内节点间消息传播范围受限,影响表示学习效果。
在基于原型网络的方法中,GPN(graph posterior network)[25]提出基于自注意力机制的节点重要性加权策略,评估节点重要性以构建鲁棒类原型。MetaTNE(meta transformed network embedding)[26]设计嵌入转换函数,将通用节点表示映射至任务特定空间以增强原型区分度。UDPN(prototypical networks with unlabeled data for few-shot node classification)[27]则利用未标记数据的对比学习为编码器和原型提供额外监督,细化类原型表示。虽然这些方法提升了类原型的鲁棒性,但其分类决策仍依赖于在原始表示空间中直接计算查询节点与类原型的相似度,而在少样本条件下类原型的判别性不足,这种相似度计算难以有效识别节点与类原型之间的关系,可能导致分类边界模糊。
2. 预备知识
2.1 问题定义
将一个属性图记为G=(V,E,X,A),其中V={v1, v2,···,vn}表示节点集,E={e1,e2,···,em}表示边集,$ \boldsymbol{X}=[{\boldsymbol{x}}_{1} \quad {\boldsymbol{x}}_{2} \quad \cdots \quad {\boldsymbol{x}}_{n}]\in {{\bf R}}^{n\times d} $表示节点特征矩阵,xi表示节点vi的特征,$ \boldsymbol{A}\in {\{0,1\}}^{n\times n} $是邻接矩阵。
对属性图G,将其顶点集分为互不相交的训练集和测试集,分别记作Vtrain和Vtest。训练集Vtrain中的每个节点均属于标签集Ctrain的某一类,而测试集中的节点属于标签集Ctest,且Ctrain∩Ctest=$\varnothing $。少样本节点分类问题是在节点集Vtrain上对模型进行训练,利用测试集Vtest上的少量带标记节点进行模型适应,并预测Vtest上的未标记节点的类别标签[28]。
元学习是求解少样本分类问题的经典范式,通过构建“元任务”模拟测试集分类情景以实现从已见类到未见类的知识迁移。若每个元任务包含N个类,每个类有K个带标记节点,则称为N-way K-shot节点分类。
2.2 情景学习
元学习通过情景学习框架[12]进行,包括元训练和元测试两个阶段。在元训练阶段,在训练集上构建多个元训练任务进行模型训练;在元测试阶段,在元测试任务上利用少量标记节点进行任务内模型适应,并预测未标记节点标签。具体地,对于每个元训练任务$T_t=\left\{S_t, Q_t\right\}(1 \leqslant t \leqslant \mathcal{T}) $,其中支持集St 从N个类别中各采样K个节点,记作St={(v1, y1), (v2, y2), ···, (vNK, yNK)}, vi ∈ Vtrain, yi ∈ Ctrain;查询集Qt从剩余节点中为每个类采样Q个节点,记作
$$ \begin{gathered} {Q}_{t}=\{({q}_{1},{{{y}}}_{1}^{\prime}),({q}_{2},{{{y}}}_{2}^{\prime}),\cdots,({q}_{NQ},{{{y}^{\prime}}}_{NQ})\} ,\\ {q}_{i}\in V{}_{{\mathrm{train}}},{{{y}^{\prime}}}_{i}\in C{}_{{\mathrm{train}}} 。 \end{gathered}$$ 3. 任务子图感知的少样本节点分类
基于任务感知的高连通性子图构建与关系学习的核心思想,设计了基于任务子图感知的少样本节点分类算法(few-shot node classification based on task-aware subgraphs, TAS-FNC),包括任务子图表示、原型学习、关系学习、节点分类4个模块,如图1所示。任务子图表示模块构建高连通性任务子图;原型学习模块获得节点关于任务的细粒度表示,并对支持节点进行贡献度评估以构建类原型;关系学习模块将查询节点与类原型投影到共享关系学习空间以获得二者关系表示;节点分类模块预测查询节点的类别。
3.1 任务子图表示模块
使用一个预训练的2层图卷积网络$f_{\theta_1} $学习节点在原始图上的粗粒度表示,并在此基础上采样任务子图,θ1为网络参数。
3.1.1 粗粒度节点表示
首先采用2层图卷积网络$f_{\theta_1} $对原始图G=(V,E,X,A)上的节点特征进行聚合,以得到节点关于原始图的粗粒度嵌入H=$f_{\theta_1} $(A, X)。为减少节点特征中噪声的影响,此处设计一个基于InfoNCE损失的对比学习任务,以无监督的方式对$f_{\theta_1} $进行预训练。将节点vi的一阶邻居作为其正样本,其他节点为负样本,对比损失定义为
$$ {{\cal L}_{{\mathrm{contrast}}}} ={ - \dfrac{1}{{|V|}}} \displaystyle\sum\limits_{i = 1}^{|V|}\log { \dfrac{{\displaystyle\sum\limits_{j \in \varGamma ({v_i})} {\exp ( {\rm{sim}}({{\boldsymbol{H}}_{i,:}},{{\boldsymbol{H}}_{j,:}})/\tau )} }}{{\displaystyle\sum\limits_{j \in \varGamma ({v_i})} {\exp ( {\rm{sim}}({{\boldsymbol{H}}_{i,:}},{{\boldsymbol{H}}_{j,:}})/\tau )} + \displaystyle\sum\limits_{k \in S_{{\mathrm{neg}}}^i} {\exp ( {\rm{sim}}({{\boldsymbol{H}}_{i,:}},{{\boldsymbol{H}}_{k,:}})/\tau )} }}} $$ (1) 式中:sim(Hi,:, Hj,:)表示节点vi与vj的粗粒度嵌入的余弦相似度,$ S_{{\mathrm{neg}}}^{i} $表示节点vi的负样本集,Γ(vi)是节点vi在图G中的一阶邻居节点集。
3.1.2 任务子图采样
对任务Tt = {St,Qt} (1≤ t ≤T),子图采样部分从原始图G上采样与Tt相关的节点构成任务子图Gt = (Vt,Et,Zt,At)。为在Gt上进行有效的消息传递,此处通过结构裁剪和拓扑增强以保证任务子图的高连通性。
1)结构裁剪
首先通过邻域采样得到任务Tt的关键邻居集$ {\varGamma }_{t} $;再通过连通性采样得到影响类内节点连通性的枢纽节点集Ct。具体过程如下。
邻域采样:在标签稀缺的情况下,模型需依赖邻域结构信息增强节点表征能力,而直接采样全部邻居会增大计算量且引入噪声。因此,对每个节点vi ∈Tt ,筛选与其关联紧密的邻居构成邻域结构。
对于节点vi,提取它在G中的二跳闭邻域导出子图Gi = (Vi,Ei),则Gi的随机游走概率矩阵P可表示为
$$ \boldsymbol{P}=\boldsymbol{D}_{i}^{-1}{\boldsymbol{A}}_{i} $$ (2) 式中:Ai是Gi的邻接矩阵,Di是度矩阵。则矩阵Pm的第i行元素$ \boldsymbol{P}_{i,\colon }^{m} $代表从中心节点vi到其他节点的m步转移概率。从Gi中采样节点vi的邻域结构,各节点的采样概率:
$$ {\rho }_{i}=\mu {\boldsymbol{P}}_{i,\colon }+(1-\mu )\boldsymbol{P}_{i,\colon }^{2} $$ (3) 式中:$ \mu \in [0,1] $是平衡因子,默认取0.5。按采样概率$ {\rho }_{i} $,选取前k个节点构成vi的邻域结构节点集$ {\Gamma }_{t}(i) $。则任务Tt的关键邻域集$ {\varGamma }_{t}=\underset{i\in {T}_{t}}{\cup }{\varGamma }_{t}(i) $。
连通性采样:为有效进行消息传递,任务子图中同类节点间应有良好的连通性。受文献[8]启发,从原始图G中采样必要的枢纽节点以使得任务子图支持集中同类节点间通过最短路径连通。假设支持集St中类c的节点集为$ S_{t}^{c}=\{{s}_{1},{s}_{2},\cdots,{s}_{k}\} $,在图G上采用双向广度优先搜索算法计算$ S_{t}^{c} $中所有节点对间r条独立的最短路径。则任务Tt枢纽节点集Ct由这些最短路径上的节点合并而成。
最终,Tt的任务子图Gt的节点集为
$$ {V}_{t}={S}_{t}\cup {Q}_{t}\cup {\varGamma }_{t}\cup {C}_{t} 。 $$ 2)拓扑增强
接下来,利用拓扑增强过程得到任务子图Gt的节点间的连接关系。基于第3.1.1节得到的粗粒度嵌入计算Gt中节点间的相似性:
$$ {{\boldsymbol{M}}_{\mathrm{SI}}}_{ij}=\dfrac{{\boldsymbol{H}}_{i,\colon }\cdot{\boldsymbol{H}}_{j,\colon }}{||{\boldsymbol{H}}_{i,\colon }||\times ||{\boldsymbol{H}}_{j,\colon }||} $$ (4) 进一步,将${\boldsymbol{M}}_{\mathrm{SI}} $矩阵中值小于阈值θ 的节点对之间的相似性置0,得到Gt中节点间的相似性矩阵$ {{\boldsymbol{A}}^{\prime\prime}} $:
$$\boldsymbol{A}^{\prime \prime}= \begin{cases}{\boldsymbol{M}}_{\mathrm{SI}}_{i j}, \quad {\boldsymbol{M}}_{\mathrm{SI}}_{i j} \gt \theta \\ 0, \quad \text { 其他 }\end{cases} $$ (5) 则Tt的任务子图Gt的邻接矩阵At定义为
$$ {\boldsymbol{A}}_{t}=\dfrac{{{\boldsymbol{A}}^{\prime}}}{\left|\left|{{\boldsymbol{A}}^{\prime}}\right|\right|}+\alpha \cdot\dfrac{{{\boldsymbol{A}}^{\prime\prime}}}{\left|\left|{{\boldsymbol{A}}^{\prime\prime}}\right|\right|} $$ (6) 式中:$ {{\boldsymbol{A}}^{\prime}} $为节点集Vt在G中的导出子图的邻接矩阵,α为超参数。
3.2 原型学习模块
首先使用一个2层图卷积网络$f_{\theta_2} $得到节点关于任务Tt的细粒度表示Zt=$f_{\theta_2} $(At, Ht),θ2为网络参数;再利用节点评估器gω学习支持节点对类原型的贡献度;进而按照贡献度加权聚合支持集St中同类节点的细粒度表示以得到类原型表示。
支持节点对类原型的贡献度计算为
$$ \boldsymbol{R}={\mathrm{Sigmoid}}({g}_{\omega }({\boldsymbol{A}}_{t},{\boldsymbol{H}}_{t})\cdot {\boldsymbol{D}}_{t}) $$ (7) 式中:Dt是任务子图Gt的度矩阵,R的第i个分量Ri表示节点vi的贡献程度。对类别c∈Ctrain内节点vi的贡献度进行归一化为
$$ {\mathrm{score}}({v}_{i})=\dfrac{\exp ({R}_{i})}{\displaystyle\sum_{{{v}_{j}}\in {S_{t}^{c}}}\exp ({R}_{j})} $$ (8) 则类c的原型可表示为
$$ {\boldsymbol{p}}_{c}=\dfrac{1}{|S_{t}^{c}|}\displaystyle\sum\limits_{{v}_{i}\in S_{t}^{c}}{\mathrm{score}}({v}_{i})\cdot {\boldsymbol{z}}_{i} $$ (9) 式中:$ S_{t}^{c} $是类c的支持集,zi是节点vi的相对于任务Tt的细粒度表示。令$ {\boldsymbol{P}}_{t}\in {\bf{R}}^{N\times d} $表示Ctrain关于任务Tt的原型表示矩阵,N表示任务Tt的类别数。
3.3 关系学习模块
此模块通过计算查询节点与类原型在表示空间的相对位置,学习查询节点与类之间的关系,从而对查询节点进行分类。首先从任务Tt中提取查询节点的细粒度表示$ \boldsymbol{Z}_{t}^{Q}={\boldsymbol{Z}}_{t}[{Q}_{t},\colon ](\in {\bf{R}}^{|{{Q}_{t}}|\times d}) $,并通过关系投影层$ {g}_{\varphi }({\boldsymbol{Z}}_{t},{\boldsymbol{P}}_{t}) $获取查询节点与所有类原型的关系表示矩阵$ {\boldsymbol{G}}^{Q}(\in {\bf{R}}^{|{{Q}_{t}}|\times {{d}^{\prime}}}) $,具体计算方式为
$$ {\boldsymbol{G}}^{Q}={g}_{\varphi }({\boldsymbol{Z}}_{t},{\boldsymbol{P}}_{t})={\boldsymbol{W}}_{\varphi }((\boldsymbol{Z}_{t}^{Q}\otimes {{{\bf{1}}}}_{N\times {1}})-({{\boldsymbol{1}}}_{|{{Q}_{t}}|\times 1}\otimes {\boldsymbol{P}}_{t}))+{\boldsymbol{b}}_{\varphi } $$ (10) 式中:$ {\boldsymbol{P}}_{t}\in {\bf{R}}^{N\times d} $为任务Tt中类原型的表示,$ \otimes $为Kronecker积用于广播操作,$ {\boldsymbol{W}}_{\varphi } $和$ {\boldsymbol{b}}_{\varphi } $是可学习参数。关系投影层$ {g}_{\varphi }({\boldsymbol{Z}}_{t},{\boldsymbol{P}}_{t}) $将查询集节点的细粒度表示与类原型的相对位置关系映射到统一的关系学习空间。
进一步,此处将类原型间的相对位置关系也映射到统一的关系学习空间中,原型间的关系表示矩阵$ {\boldsymbol{G}}^{P}(\in {\bf{R}}^{N\times {{d}^{\prime}}}) $的具体计算方式为
$$ {\boldsymbol{G}}^{P}={g}_{\varphi }({\boldsymbol{P}}_{t},{\boldsymbol{P}}_{t})={\boldsymbol{W}}_{\varphi }(({\boldsymbol{P}}_{t}\otimes {\boldsymbol{1}}_{|{{Q}_{t}}|\times 1})-({\boldsymbol{1}}_{|{{Q}_{t}}|\times 1}\otimes {\boldsymbol{P}}_{t}))+{\boldsymbol{b}}_{\varphi } $$ (11) 3.4 节点分类模块
节点分类模块利用学习到的节点与类原型的关系GQ以及类原型之间的关系GP对查询集节点进行分类。具体计算过程为
$$ \boldsymbol{F}={\mathrm{Softmax}}({\boldsymbol{G}}^{Q}{({{\boldsymbol{G}}^{P}})}^{\top }) $$ (12) 式中:$ \boldsymbol{F}(\in {\bf{R}}^{|{{Q}_{t}}|\times }{}^{N}) $,其元素Fij表示在当前任务Tt中查询节点i对第j类的归属度,将归属度最大的类别作为节点i的最终预测类别。
模型训练优化目标包括分类损失和原型分离正则项两部分。分类损失为分配正确类别标签的平均负对数似然概率:
$$ {\mathcal{L}}_{{\mathrm{class}}}=-\dfrac{1}{N\times Q}\displaystyle\sum\limits_{i=1}^{N\times Q}\log ({\boldsymbol{F}}_{i,{{c}_{i}}}) $$ (13) 式中ci表示查询节点i的真实类别标签。
原型分离正则项旨在增强嵌入空间中各类别原型之间的可分性,从而提升表示的判别能力:
$$ {\mathcal{L}}_{{\mathrm{sep}}}=\dfrac{1}{N(N-1)}\displaystyle\sum\limits_{i=1}^{N}\displaystyle\sum\limits_{j\neq i}\dfrac{1}{{\left|\left|\,{\boldsymbol{p}}_{i}-{\boldsymbol{p}}_{j}\right|\right|}_{2}+\epsilon } $$ (14) 式中:pi和pj分别表示第i类和第j类的原型表示,||·||2表示两个原型之间的欧氏距离,$ \epsilon $是任意小的正常数。综上,模型训练的优化目标为
$$ \text{min}\,{\mathcal{L}}_{{\mathrm{total}}}=\min \,({\mathcal{L}}_{{\mathrm{class}}}+\lambda \cdot {\mathcal{L}}_{{\mathrm{sep}}}) $$ (15) 式中$ \lambda $是超参数,控制原型分离正则项的权重。
3.5 算法框架
算法1给出了所提出的基于任务子图感知的少样本节点分类算法(TAS-FNC)的具体过程。
算法1 TAS-FNC算法。
输入 图G = (V, E, X, A),训练轮数$\mathcal{T} $,元任务类别数N,支持集实例数K,查询集实例数Q,元测试任务Ttest ={Stest, Qtest}。
输出 Qtest中查询节点的标签。
1)根据式(1)预训练图卷积网络$f_{\theta_1} $,计算G中节点的粗粒度表示H;
//元训练阶段
2)for t = 1, 2, ···,$\mathcal{T} $ do
3) 采样元训练任务Tt = {St, Qt};
4) 通过邻域采样获得关键邻居集$ {\varGamma }_{t} $,通过连通性采样获得枢纽节点集Ct,令$ {V}_{t}={S}_{t}\cup {Q}_{t}\cup {\varGamma }_{t}\cup {C}_{t} $;
5) 利用式(4)~(6),计算Vt中节点间的相似性,得到带权邻接矩阵At ;
6) 计算节点的细粒度表示Zt = $f_{\theta_2} $(At, Ht);
7) 对v∈St,利用式(7)和(8)计算节点贡献度score(v),利用式(9)得到类原型表示矩阵Pt;
8) 利用式(10)和(11)计算GP与GQ;
9) 利用式(12)预测节点v(∈Qt)的类别归属度;
10) 利用Adam优化器根据式(15)优化模型参数$ {\theta }_{2},{g}_{\omega },{\boldsymbol{W}}_{\varphi },{\boldsymbol{b}}_{\varphi } $;
11)end for
//元测试阶段
12)构建Ttest的任务子图Gtest,并获得细粒度节点表示Ztest = $f_{\theta_2} $(Atest, Htest);
13)计算v (∈Stest)的贡献得分,获得类原型表示矩阵Ptest;
14)计算关系矩阵GP与GQ;
15)利用式(12)计算节点归属度矩阵F,并取最大归属度对应的类别作为预测结果。
//结束
4. 实验与结果分析
4.1 数据集
使用Amazon-C[29]、Amazon-E[29]、DBLP[30]、OGBN-arxiv[31] 等4个真实数据集进行对比实验,基本信息如表1所示。Amazon-C和Amazon-E:分别是亚马逊“服装、鞋类和珠宝”类和“电子产品”类的购买网络,节点为产品,属性为产品描述,边为“共同查看”和“共同购买”关系,标签为产品类别。DBLP:引文网络,节点为论文,边为引用关系,属性通过论文摘要生成,标签是论文的发表场所。OGBN-arxiv:引文网络,节点为论文,边为引用关系,属性通过标题和摘要生成,标签是论文的主题。
表 1 数据集的基本信息Table 1 Basic information of datasets数据集 节点数 边数 特征维度 标签数 类别划分 Amazon-C 24919 91680 9034 77 40/17/20 Amazon-E 42318 43556 8669 167 90/37/40 DBLP 40672 288270 7204 137 80/27/30 OGBN-arxiv 169343 1166243 128 40 15/5/20 4.2 实验设置
参数设置:所有算法均基于PyTorch框架实现,训练过程中采用 Adam 优化器进行参数更新。算法TAS-FNC中,预训练图编码器fθ1、子图图编码器fθ2、节点评估器gω均采用2层GCN,关系投影层gφ为一个多层感知机MLP(multilayer perceptron)。过滤相似度边的阈值θ 设置为0.5。
基线设置:选取了11个算法进行对比实验,包括图嵌入方法SGC[11]、GCN[16],少样本方法PN[21]、MAML[22],少样本节点分类方法Meta-GNN[10]、GPN[25]、AMM-GNN[7]、TENT[23]、GLITTER[8]、X-FNC[24]、UDPN[27]。
4.3 实验结果
对每个数据集进行4种实验设置:5-way 3-shot(5w 3s)、5-way 5-shot(5w 5s)、10-way 3-shot(10w 3s)和10-way 5-shot(10w 5s)。将查询集实例数设置为20,训练轮数设置为
1000 ,评估标准为准确率。采用10次随机抽样的50个元测试任务的平均准确率作为最终结果,具体见表2~5。表 2 Amazon-C数据集对比实验结果Table 2 Comparative results of Amazon-C方法 5w 3s 5w 5s 10w 3s 10w 5s SGC[11] 56.8 62.2 43.1 46.3 GCN[16] 54.3 59.3 41.3 44.8 PN[21] 53.7 63.5 41.5 44.8 MAML[22] 55.2 66.1 45.6 46.8 Mate-GNN[10] 74.1 77.3 61.4 64.2 GPN[25] 75.4 78.6 65.0 67.7 AMM-GNN[7] 79.7 81.7 67.8 69.6 TENT[23] 80.7 82.3 70.1 73.0 GLITTER[8] 80.4 82.0 66.8 67.6 X-FNC[24] 77.6 79.6 66.3 68.5 UDPN[27] 81.5 82.7 71.4 72.9 TAS-FNC 82.6 82.9 72.8 74.4 注:加粗表示最优结果。 表 3 Amazon-E数据集对比实验结果Table 3 Comparative results of Amazon-E方法 5w 3s 5w 5s 10w 3s 10w 5s SGC[11] 54.6 60.8 43.2 50.0 GCN[16] 53.8 59.6 42.3 47.4 PN[21] 53.5 59.7 39.9 45.0 MAML[22] 53.3 59.0 37.4 43.4 Mate-GNN[10] 63.2 67.9 58.2 60.8 GPN[25] 64.6 70.9 60.3 62.4 AMM-GNN[7] 70.1 72.7 63.5 67.9 TENT[23] 74.2 76.8 65.7 68.6 GLITTER[8] 72.4 75.1 59.4 63.7 X-FNC[24] 68.8 73.2 60.0 61.6 UDPN[27] 74.3 79.5 66.8 71.5 TAS-FNC 76.8 81.6 67.6 73.7 注:加粗表示最优结果。 表 4 DBLP数据集对比实验结果Table 4 Comparative results of DBLP方法 5w 3s 5w 5s 10w 3s 10w 5s SGC[11] 57.3 65 40.2 50.3 GCN[16] 59.6 68.3 43.9 51.2 PN[21] 37.2 43.4 26.2 32.6 MAML[22] 39.7 45.5 30.8 34.7 Mate-GNN[10] 70.9 78.2 60.7 68.1 GPN[25] 74.5 80.1 62.6 69.0 AMM-GNN[7] 76.5 80.4 65.8 69.9 TENT[23] 79.6 80.3 68.5 72.2 GLITTER[8] 75.2 76.0 68.4 71.6 X-FNC[24] 79.1 72.5 71.9 70.2 UDPN[27] 78.6 81.5 72.0 72.4 TAS-FNC 80.1 83.0 70.5 74.3 注:加粗表示最优结果。 表 5 OGBN-arxiv数据集对比实验结果Table 5 Comparative results of OGBN-arxiv方法 5w 3s 5w 5s 10w 3s 10w 5s SGC[11] 41.4 47.0 32.5 36.4 GCN[16] 44.6 47.3 35.8 37.8 PN[21] 42.9 49.71 34.6 35.7 MAML[22] 43.0 42.14 34.1 36.8 Mate-GNN[10] 48.8 45.4 35.0 37.3 GPN[25] 55.3 53.0 36.3 43.3 AMM-GNN[7] 53.6 55.4 37.5 41.6 TENT[23] 55.6 62.9 41.1 44.7 GLITTER[8] 54.5 60.3 39.3 41.4 X-FNC[24] 57.1 62.7 45.3 46.5 UDPN[27] 58.7 62.5 47.7 48.2 TAS-FNC 60.2 62.3 46.9 48.5 注:加粗表示最优结果。 结果表明,所提方法TAS-FNC在两个共同购买网络上取得了最好结果,在两个引文网络上取得了较好的分类结果。由于标记数据稀缺,图嵌入方法的性能最差;而少样本方法PN和MAML由于未考虑节点之间的拓扑关系,在节点分类问题上表现不佳;少样本节点分类方法均优于上述4种方法,表明将GNN与元学习范式结合可有效提升少样本节点分类性能。然而,Mate-GNN、GPN、AMM- GNN、TENT等方法直接在全局图结构上学习节点表示,易受任务无关噪声干扰,导致模型泛化能力受限;GLITTER、X-FNC在进行子图采样时忽略了子图连通性约束,导致消息传播范围受限;GPN、UDPN直接计算查询节点与类原型的相似性以对查询节点分类,忽视了判别性维度对分类的潜在影响。本文方法TAS-FNC通过构建连通性强的任务子图以获得任务相关的节点表示,并学习查询节点与类原型的关系以进行节点分类,提高了分类性能。
4.4 消融实验
为了验证本方法中各个模块的有效性,以Amazon-C数据集为例在5-way 3-shot任务上设计了3个消融实验,分别移除任务子图表示模块(TAS-FNC w/o TS)、关系学习模块(TAS-FNC w/o G),以及同时移除两个模块(TAS-FNC w/o TSG)。实验结果见表6。
表 6 消融实验结果Table 6 Results of ablation study实验设置 准确率/% TAS-FNC w/o TS 78.67(↓4.76) TAS-FNC w/o G 79.45(↓3.81) TAS-FNC w/o TSG 76.07(↓7.46) TAS-FNC 82.60 实验结果表明,移除任务子图表示模块将导致模型准确率下降4.76%,移除关系学习模块则使准确率下降3.81%,同时移除两个模块时准确率下降幅度达7.46%。这充分说明两个模块在模型性能中的重要作用。具体而言,结构裁剪可过滤掉任务无关信息,拓扑增强可促进语义相似节点之间的信息传递,从而提升模型对任务的适应能力。而关系学习模块则能够精准建模查询节点与类原型之间的关系,进一步提升分类性能。
4.5 参数分析
4.5.1 原型分离正则项的权重参数$ \lambda $
以Amazon-C数据集为例,在5-way 3shot设置下,查询集实例数为10,对控制原型分离正则项$ \lambda $= {0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.0}的情况进行实验,如图2所示。当$ \lambda $取0.7时,准确率最高。
4.5.2 支持集类别数N
支持集类别数表示每个元任务中类的个数。为了分析N的变化对实验结果的影响,固定K=5、Q=20,设置了N={5,6,7,8,9}进行实验。实验结果如图3所示。随着N的增大,准确率逐渐下降,主要原因是随着任务中类别数的增多,节点分类的难度增加。
4.5.3 支持集实例数K
支持集实例数表示元任务中每个类采样的有标记节点的个数。为了分析K的变化对实验结果的影响,固定N=5、Q=20,设置了K={3,4,5,6,7}进行实验。实验结果如图4所示。随着K的增大,准确率逐渐升高。主要原因是随着支持集节点个数的增多,类原型的代表性就越有效,查询节点与类原型的关系也就学习得越好。
4.5.4 查询集实例数Q
查询集实例数是每个元任务中需要预测的节点个数。为了分析Q的变化对实验结果的影响,固定N=5、K=5,设置了Q={5,10,15,20}进行实验。实验结果如图5所示。随着Q的增大,准确率逐渐升高。主要原因是查询集实例数越多越有利于模型学习到跨任务的元知识,从而提升模型的泛化性能。
5. 结束语
针对少样本节点分类任务中任务无关信息干扰与低资源环境制约模型性能的问题,本文提出了一种基于任务子图感知的少样本节点分类算法TAS-FNC。通过邻域采样与连通性采样对原图进行结构裁剪,并结合拓扑增强策略构建高连通性的任务子图,有效抑制噪声干扰信息的影响。在此基础上,设计了关系学习模块以更精确地建模查询节点与类别原型之间的关系,提升模型在低资源场景下的判别能力。在4个基准数据集上的实验结果表明,TAS-FNC 在分类准确率上优于对比算法,说明其在任务感知建模与泛化能力方面的有效性。
未来考虑将本文方法推广至动态图或时序图环境,以更好地适应现实场景中节点属性与结构关系随时间演化的动态特性;此外,还将探索多模态图结构的建模方式,融合节点所携带的文本、图像等非结构化信息,以增强模型对复杂语义模式的理解与表达能力。
-
表 1 数据集的基本信息
Table 1 Basic information of datasets
数据集 节点数 边数 特征维度 标签数 类别划分 Amazon-C 24919 91680 9034 77 40/17/20 Amazon-E 42318 43556 8669 167 90/37/40 DBLP 40672 288270 7204 137 80/27/30 OGBN-arxiv 169343 1166243 128 40 15/5/20 表 2 Amazon-C数据集对比实验结果
Table 2 Comparative results of Amazon-C
方法 5w 3s 5w 5s 10w 3s 10w 5s SGC[11] 56.8 62.2 43.1 46.3 GCN[16] 54.3 59.3 41.3 44.8 PN[21] 53.7 63.5 41.5 44.8 MAML[22] 55.2 66.1 45.6 46.8 Mate-GNN[10] 74.1 77.3 61.4 64.2 GPN[25] 75.4 78.6 65.0 67.7 AMM-GNN[7] 79.7 81.7 67.8 69.6 TENT[23] 80.7 82.3 70.1 73.0 GLITTER[8] 80.4 82.0 66.8 67.6 X-FNC[24] 77.6 79.6 66.3 68.5 UDPN[27] 81.5 82.7 71.4 72.9 TAS-FNC 82.6 82.9 72.8 74.4 注:加粗表示最优结果。 表 3 Amazon-E数据集对比实验结果
Table 3 Comparative results of Amazon-E
方法 5w 3s 5w 5s 10w 3s 10w 5s SGC[11] 54.6 60.8 43.2 50.0 GCN[16] 53.8 59.6 42.3 47.4 PN[21] 53.5 59.7 39.9 45.0 MAML[22] 53.3 59.0 37.4 43.4 Mate-GNN[10] 63.2 67.9 58.2 60.8 GPN[25] 64.6 70.9 60.3 62.4 AMM-GNN[7] 70.1 72.7 63.5 67.9 TENT[23] 74.2 76.8 65.7 68.6 GLITTER[8] 72.4 75.1 59.4 63.7 X-FNC[24] 68.8 73.2 60.0 61.6 UDPN[27] 74.3 79.5 66.8 71.5 TAS-FNC 76.8 81.6 67.6 73.7 注:加粗表示最优结果。 表 4 DBLP数据集对比实验结果
Table 4 Comparative results of DBLP
方法 5w 3s 5w 5s 10w 3s 10w 5s SGC[11] 57.3 65 40.2 50.3 GCN[16] 59.6 68.3 43.9 51.2 PN[21] 37.2 43.4 26.2 32.6 MAML[22] 39.7 45.5 30.8 34.7 Mate-GNN[10] 70.9 78.2 60.7 68.1 GPN[25] 74.5 80.1 62.6 69.0 AMM-GNN[7] 76.5 80.4 65.8 69.9 TENT[23] 79.6 80.3 68.5 72.2 GLITTER[8] 75.2 76.0 68.4 71.6 X-FNC[24] 79.1 72.5 71.9 70.2 UDPN[27] 78.6 81.5 72.0 72.4 TAS-FNC 80.1 83.0 70.5 74.3 注:加粗表示最优结果。 表 5 OGBN-arxiv数据集对比实验结果
Table 5 Comparative results of OGBN-arxiv
方法 5w 3s 5w 5s 10w 3s 10w 5s SGC[11] 41.4 47.0 32.5 36.4 GCN[16] 44.6 47.3 35.8 37.8 PN[21] 42.9 49.71 34.6 35.7 MAML[22] 43.0 42.14 34.1 36.8 Mate-GNN[10] 48.8 45.4 35.0 37.3 GPN[25] 55.3 53.0 36.3 43.3 AMM-GNN[7] 53.6 55.4 37.5 41.6 TENT[23] 55.6 62.9 41.1 44.7 GLITTER[8] 54.5 60.3 39.3 41.4 X-FNC[24] 57.1 62.7 45.3 46.5 UDPN[27] 58.7 62.5 47.7 48.2 TAS-FNC 60.2 62.3 46.9 48.5 注:加粗表示最优结果。 表 6 消融实验结果
Table 6 Results of ablation study
实验设置 准确率/% TAS-FNC w/o TS 78.67(↓4.76) TAS-FNC w/o G 79.45(↓3.81) TAS-FNC w/o TSG 76.07(↓7.46) TAS-FNC 82.60 -
[1] WANG Weiqing, YIN Hongzhi, DU Xingzhong, et al. Online user representation learning across heterogeneous social networks[C]//Proceedings of the 42nd International ACM SIGIR Conference on Research and Development in Information Retrieval. New York: ACM, 2019: 545−554. [2] FOUT A, BYRD J, SHARIAT B, et al. Protein interface prediction using graph convolutional networks[C]//Proceedings of the 31st International Conference on Neural Information Processing Systems. New York: ACM, 2017: 6533−6542. [3] 于浩淼, 刘炜, 孟流畅, 等. RWK-GNN: 基于特征增强与子核分解的非平衡图欺诈检测算法[J]. 电子学报, 2024, 52(10): 3382−3391. YU Haomiao, LIU Wei, MENG Liuchang, et al. RWK-GNN: fraud detection for imbalanced graphs with feature enhancement and subkernel decomposition[J]. Acta electronica sinica, 2024, 52(10): 3382−3391. [4] 刘晓光, 李梅. 基于深度学习的药物−靶标相互作用预测研究综述[J]. 智能系统学报, 2024, 19(3): 494−524. doi: 10.11992/tis.202308024 LIU Xiaoguang, LI Mei. A survey of deep learning-based drug-target interaction prediction[J]. CAAI transactions on intelligent systems, 2024, 19(3): 494−524. doi: 10.11992/tis.202308024 [5] DING Kaize, WANG Jianling, CAVERLEE J, et al. Meta propagation networks for graph few-shot semi-supervised learning[J]. Proceedings of the AAAI conference on artificial intelligence, 2022, 36(6): 6524−6531. doi: 10.1609/aaai.v36i6.20605 [6] DONG Chuanqi, LI Wenbin, HUO Jing, et al. Learning task-aware local representations for few-shot learning[C]//Proceedings of the Twenty-Ninth International Joint Conference on Artificial Intelligence. New York: ACM, 2021: 716−722. [7] WANG Ning, LUO Minnan, DING Kaize, et al. Graph few-shot learning with attribute matching[C]//Proceedings of the 29th ACM International Conference on Information & Knowledge Management. New York: ACM, 2020: 1545−1554. [8] WANG Song, CHEN Chen, LI Jundong. Graph few-shot learning with task-specific structures[C]//Proceedings of the 36th International Conference on Neural Information Processing Systems. New York: ACM, 2022: 38925−38936. [9] LIU Zemin, FANG Yuan, LIU Chenghao, et al. Relative and absolute location embedding for few-shot node classification on graph[J]. Proceedings of the AAAI conference on artificial intelligence, 2021, 35(5): 4267−4275. doi: 10.1609/aaai.v35i5.16551 [10] ZHOU Fan, CAO Chengtai, ZHANG Kunpeng, et al. Meta-GNN: on few-shot node classification in graph meta-learning[C]//Proceedings of the 28th ACM International Conference on Information and Knowledge Management. New York: ACM, 2019: 2357−2360. [11] WU F, ZHANG Tianyi, DE SOUZA A H, et al. Simplifying graph convolutional networks[C]//International Conference on Machine Learning. Long Beach: PMLR, 2019: 6861−6871. [12] VINYALS O, BLUNDELL C, LILLICRAP T, et al. Matching networks for one shot learning[C]//Proceedings of the 30th International Conference on Neural Information Processing Systems. New York: ACM, 2016: 3637−3645. [13] YU Xingtong, FANG Yuan, LIU Zemin, et al. A survey of few-shot learning on graphs: from meta-learning to pre-training and prompt learning[EB/OL]. (2024−03−15)[2025−12−22]. https://arxiv.org/abs/2402.01440. [14] 刘美麟, 李华, 郑文萍. 模体感知的多视图协同聚类优化算法[J]. 计算机研究与发展, 2026, 63(2): 324−337. doi: 10.7544/issn1000-1239.202550356 LIU Meilin, LI Hua, ZHENG Wenping. Motif-aware multi-view cooperative clustering optimization algorithm[J]. Journal of computer research and development, 2026, 63(2): 324−337. doi: 10.7544/issn1000-1239.202550356 [15] 郑文萍, 王英楠, 杨贵. 基于双监督网络嵌入的社区发现算法[J]. 模式识别与人工智能, 2022, 35(3): 283−290. ZHENG Wenping, WANG Yingnan, YANG Gui. Dual supervised network embedding based community detection algorithm[J]. Pattern recognition and artificial intelligence, 2022, 35(3): 283−290. [16] KIPF T N, WELLING M. Semi-supervised classification with graph convolutional networks[EB/OL]. (2016−09−09)[2025−12−22]. https://arxiv.org/abs/1609.02907. [17] HAMILTON W L, YING R, LESKOVEC J. Inductive representation learning on large graphs[C]//Proceedings of the 31st International Conference on Neural Information Processing Systems. New York: ACM, 2017: 1025−1035. [18] VELIČKOVIĆ P, CUCURULL G, CASANOVA A, et al. Graph attention networks[C]//Proceedings of the 6th International Conference on Learning Representations. Vancouver: ICLR, 2018: 1−12. [19] 周凯锐, 刘鑫, 景丽萍, 等. 概念驱动的小样本判别特征学习方法[J]. 智能系统学报, 2023, 18(1): 162−172. ZHOU Kairui, LIU Xin, JING Liping, et al. Concept-driven discriminative feature learning for few-shot learning[J]. CAAI transactions on intelligent systems, 2023, 18(1): 162−172. [20] GHAROUN H, MOMENIFAR F, CHEN Fang, et al. Meta-learning approaches for few-shot learning: a survey of recent advances[J]. ACM computing surveys, 2024, 56(12): 1−41. doi: 10.1145/3659943 [21] SNELL J, SWERSKY K, ZEMEL R S. Prototypical networks for few-shot learning[C]//Neural Information Processing Systems. Red Hook: Curran Associates, 2017: 4077−4087. [22] FINN C, ABBEEL P, LEVINE S. Model-agnostic meta-learning for fast adaptation of deep networks[C]//Proceedings of the 34th International Conference on Machine Learning-Volume 70. Sydney: PMLR, 2017: 1126−1135. [23] WANG Song, DING Kaize, ZHANG Chuxu, et al. Task-adaptive few-shot node classification[C]//Proceedings of the 28th ACM SIGKDD Conference on Knowledge Discovery and Data Mining. New York: ACM, 2022: 1910−1919. [24] WANG Song, DONG Yushun, DING Kaize, et al. Few-shot node classification with extremely weak supervision[C]//Proceedings of the Sixteenth ACM International Conference on Web Search and Data Mining. New York: ACM, 2023: 276−284. [25] DING Kaize, WANG Jianling, LI Jundong, et al. Graph prototypical networks for few-shot learning on attributed networks[C]//Proceedings of the 29th ACM International Conference on Information & Knowledge Management. New York: ACM, 2020: 295−304. [26] LAN L, WANG P, DU X, et al. Node classification on graphs with few-shot novel labels via meta transformed network embedding[J]. Advances in Neural Information Processing Systems, 2020, 33: 16520−16531. [27] WANG Ningrui, LAI Yujing, CHEN Chuan, et al. Prototypical networks with unlabeled data for few-shot node classification[J]. Engineering applications of artificial intelligence, 2025, 145: 110088. doi: 10.1016/j.engappai.2025.110088 [28] 刘鑫磊, 冯林, 廖凌湘, 等. 基于元学习的图卷积网络少样本学习模型[J]. 电子学报, 2024, 52(3): 885−897. doi: 10.12263/DZXB.20220037 LIU Xinlei, FENG Lin, LIAO Lingxiang, et al. Few-shot learning on graph convolutional network based on meta learning[J]. Acta electronica sinica, 2024, 52(3): 885−897. doi: 10.12263/DZXB.20220037 [29] MCAULEY J, PANDEY R, LESKOVEC J. Inferring networks of substitutable and complementary products[C]//Proceedings of the 21th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. New York: ACM, 2015: 785−794. [30] TANG Jie, ZHANG Jing, YAO Limin, et al. ArnetMiner: extraction and mining of academic social networks[C]//Proceedings of the 14th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. New York: ACM, 2008: 990−998. [31] HU W, FEY M, ZITNIK M, et al. Open graph benchmark: datasets for machine learning on graphs[C]//Proceedings of the 34th International Conference on Neural Information Processing Systems. Red Hook: Curran Associates, 2020: 1−12.
下载: