主页 > IT业界  > 

Self-Pro:ASelf-PromptandTuningFrameworkforGraphNeuralNet

Self-Pro:ASelf-PromptandTuningFrameworkforGraphNeuralNet
Self-Pro: A Self-Prompt and Tuning Framework for Graph Neural Networks

​#paper/GFM/GNN-BASED#​ #paper/⭐⭐⭐#​

注意:这篇文章是每个图一个GCN模型,而不是所有图一个GCN 模型

算是最早的涉及异配图的prompt了

贡献和动机:

非对称图对比学习(GraphACL) 提出一种预训练方法,通过非对称对比学习捕获节点间的高阶相似性,避免传统方法对同质图(homophily)的依赖,有效处理异质图。

统一任务模板 将预训练与下游任务(如节点分类、链接预测)统一为相似性计算模板,减少目标差异导致的负迁移问题。例如,节点分类通过类原型(class prototype)与节点的相似性进行预测。

自适配器与参数重用 重用预训练阶段的投影器(projector)作为下游任务的适配器(self-adapter),无需额外参数,显著提升调优效率。

自提示机制

结构提示:通过添加两跳邻居等结构信息增强上下文表示。语义提示:利用节点属性(如替换邻接矩阵为单位矩阵)保留语义信息。 提示生成基于图自身信息,而非随机初始化,提升稳定性和泛化能力。 方法: 对比学习的三种方法:

​​

作者使用了第三种方法,并认为 g ( ⋅ ) g(\cdot) g(⋅)可以引入语义信息

方法框架:

​​

由于对应上面第三种方法,其对比损失可以为:

L = − 1 ∣ V ∣ ∑ v ∈ V 1 ∣ N ( v ) ∣ ∑ v + ∈ N ( v ) log ⁡ exp ⁡ ( z v T h v + / τ ) exp ⁡ ( z v T h v + / τ ) + ∑ v − ∈ V − exp ⁡ ( h v T h v − / τ ) , \mathcal{L}=-\frac{1}{|\mathcal{V}|}\sum_{v\in\mathcal{V}}\frac{1}{|\mathcal{N}(v)|}\sum_{v^+\in\mathcal{N}(v)}\log\frac{\exp(\mathbf{z}_v{}^\mathsf{T}\mathbf{h}_{v^+}/\tau)}{\exp(\mathbf{z}_v{}^\mathsf{T}\mathbf{h}_{v^+}/\tau)+\sum_{v^-\in\mathcal{V}^-}\exp(\mathbf{h}_v{}^\mathsf{T}\mathbf{h}_{v^-}/\tau)}, L=−∣V∣1​∑v∈V​∣N(v)∣1​∑v+∈N(v)​logexp(zv​Thv+​/τ)+∑v−∈V−​exp(hv​Thv−​/τ)exp(zv​Thv+​/τ)​,

其中,z是映射头g的输出。

节点分类任务

节点分类任务的话,作者采用了原型向量(prototype: C = { t 1 , t 2 , … , t C } \mathcal{C}=\{\mathbf{t}_1,\mathbf{t}_2,\ldots,\mathbf{t}_C\} C={t1​,t2​,…,tC​}。作者通过labeled节点的token均值来初始化原型向量。

t c = 1 N c ∑ v ∈ V L , y v = c t v , ∀ c ∈ 1 , 2 , … C , \mathbf{t}_c=\frac{1}{N_c}\sum_{v\in\mathcal{V}_L,y_v=c}\mathbf{t}_v,\forall c\in1,2,\ldots C, tc​=Nc​1​∑v∈VL​,yv​=c​tv​,∀c∈1,2,…C,

Self-prompt结构:

预训练的架构: θ ∗ , ϕ ∗ = arg ⁡ min ⁡ θ , ϕ L p r e ( f θ , g ϕ , G ) \theta^*,\phi^*=\arg\min_{\theta,\phi}\mathcal{L}_{pre}(f_\theta,g_\phi,\mathcal{G}) θ∗,ϕ∗=argminθ,ϕ​Lpre​(fθ​,gϕ​,G)

prompt时,GNN backbone应该是冻结的。作者认为 g ϕ g_{\phi} gϕ​可以包含更多的语义,应该用于下游训练。因此下游任务的优化可以表示为: ϕ ∗ ∗ = arg ⁡ min ⁡ ϕ ∗ L d o w ( g ϕ ∗ , V L , Y ) \phi^{**}=\arg\min_{\phi^*}\mathcal{L}_{dow}(g_{\phi^*},\mathcal{V}_L,\mathcal{Y}) ϕ∗∗=argminϕ∗​Ldow​(gϕ∗​,VL​,Y)

自结构语义的构建:作者认为2-hop代表同配性,并包含丰富的语义信息。因此: t v = f θ ( G 2 ) [ v ] = f θ ( A 2 , X ) [ v ] \mathbf{t}_v=f_\theta(\mathcal{G}_2)[v]=f_\theta(\mathbf{A}_2,\mathbf{X})[v] tv​=fθ​(G2​)[v]=fθ​(A2​,X)[v]

子语义提示:

s v = f θ ( G I ) [ v ] = f θ ( I , X ) [ v ] . \mathbf{s}_{v}=f_{\theta}(\mathcal{G}_{I})[v]=f_{\theta}(\mathbf{I},\mathbf{X})[v]. sv​=fθ​(GI​)[v]=fθ​(I,X)[v].

h v = f θ ( G ) [ v ] = f θ ( A , X ) [ v ] . \mathbf{h}_v=f_\theta(\mathcal{G})[v]=f_\theta(\mathbf{A},\mathbf{X})[v]. hv​=fθ​(G)[v]=fθ​(A,X)[v].​

t v = w v s v + ( 1 − w v ) h v , w v = s i m ( h v , s v ) , \mathbf{t}_v=w_v\mathbf{s}_v+(1-w_v)\mathbf{h}_v,w_v=sim(h_v,s_v), tv​=wv​sv​+(1−wv​)hv​,wv​=sim(hv​,sv​),

Prompt tuning:节点分类: L d o w = − ∑ v ∈ V L log ⁡ exp ⁡ ( t ′ v t ′ y v / τ ) exp ⁡ ( t ′ v T t ′ y v / τ ) + ∑ c = 1 , c ≠ y v C exp ⁡ ( t ′ v T t ′ c / τ ) , \mathcal{L}_{dow}=-\sum_{v\in\mathcal{V}_{L}}\log\frac{\exp(\mathbf{t^{\prime}}_{v}\mathbf{t^{\prime}}_{y_{v}}/\tau)}{\exp(\mathbf{t^{\prime}}_{v}^{\mathsf{T}}\mathbf{t^{\prime}}_{y_{v}}/\tau)+\sum_{c=1,c\neq y_{v}}^{C}\exp(\mathbf{t^{\prime}}_{v}^{\mathsf{T}}\mathbf{t^{\prime}}_{c}/\tau)}, Ldow​=−∑v∈VL​​logexp(t′vT​t′yv​​/τ)+∑c=1,c=yv​C​exp(t′vT​t′c​/τ)exp(t′v​t′yv​​/τ)​,其中, t ′ v = q ϕ ( t v ) \mathbf{t^{\prime}}_{v}=q_{\phi}(\mathbf{t}_{v}) t′v​=qϕ​(tv​)

L d o w = − ∑ ( v , a , b ) ∈ T log ⁡ exp ⁡ ( t ′ v T t ′ a / τ ) exp ⁡ ( t ′ v T t ′ a / τ ) + exp ⁡ ( t ′ v T t ′ b / τ ) \mathcal{L}_{dow}=-\sum_{(v,a,b)\in\mathcal{T}}\log\frac{\exp(\mathbf{t^{\prime}}_v^\mathsf{T}\mathbf{t^{\prime}}_a/\tau)}{\exp(\mathbf{t^{\prime}}_v^\mathsf{T}\mathbf{t^{\prime}}_a/\tau)+\exp(\mathbf{t^{\prime}}_v^\mathsf{T}\mathbf{t^{\prime}}_b/\tau)} Ldow​=−∑(v,a,b)∈T​logexp(t′vT​t′a​/τ)+exp(t′vT​t′b​/τ)exp(t′vT​t′a​/τ)​

结果:

​​

​​

标签:

Self-Pro:ASelf-PromptandTuningFrameworkforGraphNeuralNet由讯客互联IT业界栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“Self-Pro:ASelf-PromptandTuningFrameworkforGraphNeuralNet