Few-Shot Learning with Graph Neural Networks 笔记
第一步
输入
T = { { ( x 1 , l 1 ) , … ( x s , l s ) } , { x ~ 1 , … , x ~ r } , { x ‾ 1 , … , x ‾ t } ; l i ∈ { 1 , K } , x i , x ~ j , x ‾ j ∼ P l ( R N ) } \mathcal{T}=\left\{\left\{\left(x_{1}, l_{1}\right), \ldots\left(x_{s}, l_{s}\right)\right\},\left\{\tilde{x}_{1}, \ldots, \tilde{x}_{r}\right\},\left\{\overline{x}_{1}, \ldots, \overline{x}_{t}\right\} ; l_{i} \in\{1, K\}, x_{i}, \tilde{x}_{j}, \overline{x}_{j} \sim \mathcal{P}_{l}\left(\mathbb{R}^{N}\right)\right\} T={{(x1,l1),…(xs,ls)},{x~1,…,x~r},{x1,…,xt};li∈{1,K},xi,x~j,xj∼Pl(RN)}
其中s为有标签的样本数量,r为无标签的样本数量,t为待分类的样本数量,其中所有x独立同分布。
提取
将输入 $\mathcal{T} $ 转换为全连接图 G T = ( V , E ) G_{\mathcal{T}}=(V, E) GT=(V,E) ,其中 v a ∈ V v_{a} \in V va∈V 代表图片 x x x (包括有标签和无标签的)。
初始化点特征
图
G
G
G 的初始值通过下式得到
x
i
(
0
)
=
(
ϕ
(
x
i
)
,
h
(
l
i
)
)
\mathbf{x}_{i}^{(0)}=\left(\phi\left(x_{i}\right), h\left(l_{i}\right)\right)
xi(0)=(ϕ(xi),h(li))
其中
ϕ
(
x
i
)
\phi\left(x_{i}\right)
ϕ(xi) 是一个CNN,
h
(
l
i
)
h(l_{i})
h(li) 是独热码。
GNN
边特征
A
~
i
,
j
(
k
)
=
φ
θ
~
(
x
i
(
k
)
,
x
j
(
k
)
)
=
MLP
θ
~
(
a
b
s
(
x
i
(
k
)
−
x
j
(
k
)
)
)
\tilde{A}_{i, j}^{(k)}=\varphi_{\tilde{\theta}}\left(\mathbf{x}_{i}^{(k)}, \mathbf{x}_{j}^{(k)}\right)=\operatorname{MLP}_{\tilde{\theta}}\left(a b s\left(\mathbf{x}_{i}^{(k)}-\mathbf{x}_{j}^{(k)}\right)\right)
A~i,j(k)=φθ~(xi(k),xj(k))=MLPθ~(abs(xi(k)−xj(k)))
MLP是多层感知机
图卷积
在其最简单的模型中,给定赋权图
G
G
G的顶点上的输入信号
F
∈
R
V
×
d
F \in R^{V\times d}
F∈RV×d ,我们考虑图形本征线性算子的族
A
\mathcal{A}
A,其在该信号上局部地起作用。 最简单的是邻接算子
A
:
F
↦
A
(
F
)
A : F \mapsto A(F)
A:F↦A(F)其中
(
A
F
)
i
:
=
∑
j
∼
i
w
i
,
j
F
j
(A F)_{i} :=\sum_{j \sim i} w_{i, j} F_{j}
(AF)i:=∑j∼iwi,jFj,其中
(
i
,
j
)
∈
E
(i, j) \in E
(i,j)∈E ,
w
i
,
j
\quad w_{i, j}
wi,j 为其相关权重。 GNN层Gc(·)接收信号
x
(
k
)
∈
R
V
×
d
k
\mathbf{x}^{(k)} \in \mathbb{R}^{V \times d_{k}}
x(k)∈RV×dk作为输入,并产生
x
(
k
+
1
)
∈
R
V
×
d
k
+
1
x^{(k+1)} \in \mathbb{R}^{V \times d_{k+1}}
x(k+1)∈RV×dk+1
x
l
(
k
+
1
)
=
Gc
(
x
(
k
)
)
=
ρ
(
∑
B
∈
A
B
x
(
k
)
θ
B
,
l
(
k
)
)
,
l
=
d
1
…
d
k
+
1
\mathbf{x}_{l}^{(k+1)}=\operatorname{Gc}\left(\mathbf{x}^{(k)}\right)=\rho\left(\sum_{B \in \mathcal{A}} B \mathbf{x}^{(k)} \theta_{B, l}^{(k)}\right), l=d_{1} \ldots d_{k+1}
xl(k+1)=Gc(x(k))=ρ(B∈A∑Bx(k)θB,l(k)),l=d1…dk+1
其中
Θ
=
{
θ
1
(
k
)
,
…
,
θ
∣
A
∣
(
k
)
}
k
\Theta=\left\{\theta_{1}^{(k)}, \dots, \theta_{|\mathcal{A}|}^{(k)}\right\}_{k}
Θ={θ1(k),…,θ∣A∣(k)}k,
θ
A
(
k
)
∈
R
d
k
×
d
k
+
1
\theta_{A}^{(k)} \in \mathbb{R}^{d_{k} \times d_{k+1}}
θA(k)∈Rdk×dk+1 为参数,
ρ
(
⋅
)
\rho(\cdot)
ρ(⋅)是非线性函数,论文中选择Leaky ReLUs
损失函数
min 1 L ∑ i ≤ L ℓ ( Φ ( T i ; Θ ) , Y i ) + R ( Θ ) ℓ ( Φ ( T ; Θ ) , Y ) = − ∑ k y k log P ( Y i = y k ∣ T ) \begin{array}{l}{\min \frac{1}{L} \sum_{i \leq L} \ell\left(\Phi\left(\mathcal{T}_{i} ; \Theta\right), Y_{i}\right)+\mathcal{R}(\Theta)} \\ {\ell(\Phi(\mathcal{T} ; \Theta), Y)=-\sum_{k} y_{k} \log P\left(Y_{i}=y_{k} | \mathcal{T}\right)}\end{array} minL1∑i≤Lℓ(Φ(Ti;Θ),Yi)+R(Θ)ℓ(Φ(T;Θ),Y)=−∑kyklogP(Yi=yk∣T)
其中 Φ ( T ; Θ ) = p ( Y ∣ T ) \Phi(\mathcal{T} ; \Theta)=p(Y | \mathcal{T}) Φ(T;Θ)=p(Y∣T),通过极大似然估计得出预测标签。