推荐指数: #paper/⭐⭐
发表于:LoG 2022
推荐指数是因为22年,所以给2行.
贡献:用MLP来区分不同的标签信息.
思想阐述:
假设
N
k
(
v
)
\mathcal{N}_{k}(v)
Nk(v)表示节点v标签为k的邻居.我们定义基于
a
v
,
k
a_{v,k}
av,k为聚合标签为k的邻居:(即只聚合标签为k的邻居)
a
v
,
k
=
∑
u
∈
N
k
(
v
)
1
∣
N
k
(
v
)
∣
x
u
\mathbf{a}_{v,k}=\sum_{u\in\mathcal{N}_k(v)}\frac1{|\mathcal{N}_k(v)|}\mathbf{x}_u
av,k=u∈Nk(v)∑∣Nk(v)∣1xu
然后,我们将每个节点聚合不同标签的邻居的嵌入进行拼接:
h
v
c
=
C
O
N
C
A
T
(
a
v
,
1
,
…
,
a
v
,
C
)
\mathbf{h}_v^c=\mathsf{CONCAT}(\mathbf{a}_{v,1},\ldots,\mathbf{a}_{v,C})
hvc=CONCAT(av,1,…,av,C)
但是,并不是所有的邻居信息都有标签的
伪标签预测
但是,现实中,又很难分清哪个是邻居,哪个不是邻居.因此,就用伪标签预测器
f
P
f_{P}
fP去预测标签.具体的是,MLP被用作去预测标签:
y
^
v
P
=
M
L
P
(
x
v
)
\hat{\mathbf{y}}_{v}^{P}=\mathrm{MLP}(\mathbf{x}_{v})
y^vP=MLP(xv),
x
v
x_{v}
xv是节点v的属性.我们用如下损失函数去训练
f
P
f_{P}
fP.
min
θ
P
L
P
=
1
∣
V
t
r
a
i
n
∣
∑
v
∈
V
t
r
a
i
n
l
(
y
^
v
P
,
y
v
)
,
\min_{\theta_P}\mathcal{L}_P=\frac1{|\mathcal{V}_{train}|}\sum_{v\in\mathcal{V}_{train}}l(\hat{y}_v^P,y_v),
θPminLP=∣Vtrain∣1v∈Vtrain∑l(y^vP,yv),
其中,
l
l
l是交叉熵函数.这样,我们就得到每个节点的伪标签:
y
v
P
^
\hat{y_{v}^P}
yvP^.
LW-gcn
a
v
,
k
(
l
)
=
∑
u
∈
N
k
P
(
v
)
1
∣
N
k
P
(
v
)
∣
h
u
(
l
)
,
h
v
l
+
1
=
σ
(
W
(
l
)
⋅
C
O
N
C
A
T
(
h
v
(
l
)
,
a
v
,
1
(
l
)
,
…
,
a
v
,
C
(
l
)
)
)
\mathbf{a}_{v,k}^{(l)}=\sum_{u\in\mathcal{N}_k^P(v)}\frac1{\left|\mathcal{N}_k^P(v)\right|}\mathbf{h}_u^{(l)},\quad\mathbf{h}_v^{l+1}=\sigma\left(\mathbf{W}^{(l)}\cdot\mathbf{CONCAT}(\mathbf{h}_v^{(l)},a_{v,1}^{(l)},\ldots,a_{v,C}^{(l)})\right)
av,k(l)=u∈NkP(v)∑
NkP(v)
1hu(l),hvl+1=σ(W(l)⋅CONCAT(hv(l),av,1(l),…,av,C(l)))
N
k
P
(
v
)
=
{
u
:
(
v
,
u
)
∈
E
∧
y
^
u
P
=
k
}
\mathcal{N}_{k}^{P}(v)=\{u:(v,u)\in\mathcal{E}\wedge\hat{y}_{u}^{P}=k\}
NkP(v)={u:(v,u)∈E∧y^uP=k}表示聚合节点标签为k的邻居.
y
^
v
C
=
s
o
f
t
m
a
x
(
W
C
⋅
C
O
M
B
I
N
E
(
h
v
(
1
)
,
.
.
.
,
h
v
(
K
)
)
)
\hat{\mathbf{y}}_v^C=\mathrm{softmax}\Big(\mathbf{W}_C\cdot\mathtt{COMBINE}(\mathbf{h}_v^{(1)},...,\mathbf{h}_v^{(K)})\Big)
y^vC=softmax(WC⋅COMBINE(hv(1),...,hv(K)))
W
c
W_{c}
Wc表示可学习的参数.
y
v
C
^
\hat{y_{v}^C}
yvC^是节点v的预测标签的可能性.
模型的自动选择:(有点像自适应的了)
模型分为GCN和MLP两部分:
我们定义:
Y
^
G
=
G
N
N
(
A
,
X
)
\hat{\mathcal{Y}}^G=\mathrm{GNN}(\mathbf{A},\mathbf{X})
Y^G=GNN(A,X)
y
^
v
C
\hat{\mathbf{y}}_v^C
y^vC为MLP.
然后,自适应确定MLP和GCN的
y
^
v
=
exp
(
ϕ
1
)
∑
i
=
1
2
exp
(
ϕ
i
)
y
^
v
C
+
exp
(
ϕ
2
)
∑
i
=
1
2
exp
(
ϕ
i
)
y
^
v
G
\hat{\mathbf{y}}_v=\frac{\exp\left(\phi_1\right)}{\sum_{i=1}^2\exp\left(\phi_i\right)}\hat{\mathbf{y}}_v^C+\frac{\exp\left(\phi_2\right)}{\sum_{i=1}^2\exp\left(\phi_i\right)}\hat{\mathbf{y}}_v^G
y^v=∑i=12exp(ϕi)exp(ϕ1)y^vC+∑i=12exp(ϕi)exp(ϕ2)y^vG