Graph Contrastive Learning Meets Graph Meta LearningA Unified Methodfor Few-shot Node Tasks

加粗样式WWW24
推荐指数: #paper/⭐⭐
通篇在讲元学习,但是个人觉得和元学习没有关系。因此从个人的理解来记录这篇文章
个人的粗浅的理解:典型的多视图对比,但是套上了元学习的外壳。写作能力真的很强

文章配图
(个人理解)首先N-way-k-shot可以理解为:假设一个batch有N个样本,那么每个样本有k个相近的样本互为正样本。

模型架构

给定一个图表述为 ( X , A ) (X,A) (X,A) ,我们可以应用三个不同的图增强:KaTeX parse error: Undefined control sequence: \textasciitilde at position 46: …\mathbf{A}_{3} \̲t̲e̲x̲t̲a̲s̲c̲i̲i̲t̲i̲l̲d̲e̲{}\mathcal{A}
那么,对应的三个增强图为: ( X 1 , A 1 ) , ( X 2 , A 2 ) , ( X 3 , A 3 ) (X_1,\mathrm{A}_1),(X_2,\mathrm{A}_2),(X_3,\mathrm{A}_3) (X1,A1),(X2,A2),(X3,A3)
L : = f ema ( X 1 , A 1 ) , S : = f ema ( X 2 , A 2 ) , Q : = g ( f ( X 3 , A 3 ) ) , L:=f_\text{ema}(X_1,A_1), S:=f_\text{ema}(X_2,A_2), Q:=g(f(X_3,A_3)), L:=fema(X1,A1),S:=fema(X2,A2),Q:=g(f(X3,A3)),
lookup emb L以及Support emb S是由动量编码器 f e m b f_{emb} femb 生成。Query emb Q是由可训练的图编码器以及映射头g生成。 f e m a f_{ema} fema的参数由 f f f动量更新(详情可见moco,下也有公式描述)
首先,我们可以得到query node(由lookup emb L得来的)并表示他们为: { L v 1 , ⋯   , L v N } \{L_{v_1},\cdots,L_{v_N}\} {Lv1,,LvN}(相当于一个batch)。对于每一个 i ∈ [ 1 , … , N ] i \in[1,\dots,N] i[1,,N],我们可以测量得到 L v i L_{vi} Lvi与所有support节点的嵌入 { S 1 , ⋯   , S ∣ V ∣ } \{S_1,\cdots,S_{|\mathcal{V}|}\} {S1,,SV} 之间的相似性。S中最高的k个相似相关的嵌入将会被选取作为support集合。我们表示他们为: { S v i 1 , ⋯   , S v i k } i = 1 N \{S_{v_i^1},\cdots,S_{v_i^k}\}_{i=1}^N {Svi1,,Svik}i=1N
我的理解:从lookup emb中取一个节点嵌入 L i L_{i} Li,我们查询在 S S S中与 L L L 最相近的前k个节点集合,表示为 S v i 1 , … , S v i k {S_{vi^1},\dots,S_{vi^k}} Svi1,,Svik。由于一个批次有N个样本,整个support set就是: { S v i 1 , ⋯   , S v i k } i = 1 N \{S_{v_i^1},\cdots,S_{v_i^k}\}_{i=1}^N {Svi1,,Svik}i=1N 。我们可以得到query nodes emb: { Q v 1 , ⋯   , Q v N } \{Q_{v_1},\cdots,Q_{v_N}\} {Qv1,,QvN}
最终,整个任务可以表示为: T = { Q v i , { S v i j } j = 1 k } i = 1 N \mathcal{T}=\{Q_{v_{i}},\{S_{v_{i}^{j}}\}_{j=1}^{k}\}_{i=1}^{N} T={Qvi,{Svij}j=1k}i=1N
(即:可以粗浅理解为:Q集与S集之间的对比)

编码器的参数动量更新:

θ e m a = m θ e m a + ( 1 − m ) θ \theta_{\mathrm{ema}} = m\theta_{\mathrm{ema}}+(1-m)\theta θema=mθema+(1m)θ
m是超参。其借鉴了moco,感兴趣可以自行搜寻

损失函数:

L C O L A ( { Q v i , { S v i j } j = 1 k } i = 1 N ) = − ∑ i = 1 N 1 k ∑ i = 1 k log ⁡ exp ⁡ ( Q v i ⋅ S v i j / τ ) ∑ v ∈ S t exp ⁡ ( Q v i ⋅ v / τ ) , L_{COLA}(\{Q_{v_i},\{S_{v_i^j}\}_{j=1}^k\}_{i=1}^N)=-\sum_{i=1}^N\frac1k\sum_{i=1}^k\log\frac{\exp(Q_{v_i}\cdot S_{v_i^j}/\tau)}{\sum_{v\in S_t}\exp(Q_{v_i}\cdot v/\tau)}, LCOLA({Qvi,{Svij}j=1k}i=1N)=i=1Nk1i=1klogvStexp(Qviv/τ)exp(QviSvij/τ),
这可以如何理解呢?可以理解为:Q与S集合中前k近的向量做对比。

总体的理解:

首先,利用Support S找到与集合L的每个节点 v i v_{i} vi前k近的节点集合,记为 { S v i j } j = 1 k \{S_{v_{i}^{j}}\}_{j=1}^{k} {Svij}j=1k。然后将集合里面的节点嵌入与其对应的 Q v i Q_{vi} Qvi进行对比。即:典型的多视图对比

结果

文章配图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值