Elastic Graph neural network

背景

使用L1正则来做平滑,得到一个更好的效果。

Liu X, Jin W, Ma Y, et al. Elastic graph neural networks[C]//International Conference on Machine Learning. PMLR, 2021: 6837-6849.

模型

弹性图神经网络 (Elastic GNN) 被提出\upcite{17},一般的图拉普拉斯被定义 L = D − A {\bf{L}} = {\bf{D}} - {\bf{A}} L=DA, A {\bf{A}} A表示邻接矩阵, D {\bf{D}} D 表示为度矩阵。除此以外 L ~ = I − A ~ {\bf{\tilde L}} = {\bf{I}} - {\bf{\tilde A}} L~=IA~ A ~ = D ^ − 1 2 A ^ D ^ − 1 2 {\bf{\tilde A}} = {{\bf{\hat D}}^{^{ - \frac{1}{2}}}}{\bf{\hat A}}{{\bf{\hat D}}^{^{ - \frac{1}{2}}}} A~=D^21A^D^21 A ^ = A + I {\bf{\hat A}} = {\bf{A}} + {\bf{I}} A^=A+I I {\bf{I}} I表示单位矩阵, D ^ i i = ∑ j A ^ i j {{\bf{\hat D}}_{ii}} = \sum\nolimits_j {{{{\bf{\hat A}}}_{ij}}} D^ii=jA^ij 。在Elastic GNN中表示一个关联矩阵为 Δ {\bf{\Delta }} Δ Δ ∈ { − 1 , 0 , 1 } M × N {\bf{\Delta }} \in {\{ - 1,0,1\} ^{M \times N}} Δ{1,0,1}M×N M M M表示边的数量, N N N表示节点的数量。没有通过归一化的图拉普拉斯矩阵和关联矩阵具有相同点,所以 L = Δ T Δ {\bf{L}} = {{\bf{\Delta }}^{\rm{T}}}{\bf{\Delta }} L=ΔTΔ

ElasticGNN使用EMP

Y = E M P ( h w ( X ) , K , β 1 , β 2 ) {\bf{Y}} = {\rm{EMP}}({h_w}({\bf{X}}),K,{\beta _1},{\beta _2}) Y=EMP(hw(X),K,β1,β2)

特征输入为 X {\bf{X}} X h w ( X ) {h_w}({\bf{X}}) hw(X)表示 X {\bf{X}} X关于 w w w的一个机器学习模型。 w w w是模型可学习的参数。 K K K表示信息传播的步数。 β 1 , β 2 {\beta _1},{\beta _2} β1,β2是两个超参数,在模型学习过程中被给予特定的值。ElasticGNN模型最终的预测结果被表示为 Y {\bf{Y}} Y
E M P ( ⋅ ) {\rm{EMP}}( \cdot ) EMP()是ElascticGNN中提出的一中弹性的信息通过机制。EMP的表示形式可以被描述为如下形式:
初始化 F 0 = X {{\bf{F}}^0} = {\bf{X}} F0=X O 0 = 0 m × d {{\bf{O}}^0} = {{\bf{0}}^{m \times d}} O0=0m×d 0 m × d {{\bf{0}}^{m \times d}} 0m×d 表示所有值为0的矩阵。
Y k + 1 = γ X + ( 1 − γ ) A ~ F k {{\bf{Y}}^{k + 1}} = \gamma {\bf{X}} + (1 - \gamma ){\bf{\tilde A}}{{\bf{F}}^k} Yk+1=γX+(1γ)A~Fk
γ \gamma γ表示的是步长,作为一个超参数。 A ~ {\bf{\tilde A}} A~表示 D ^ − 1 2 A ^ D ^ − 1 2 {{\bf{\hat D}}^{^{ - \frac{1}{2}}}}{\bf{\hat A}}{{\bf{\hat D}}^{^{ - \frac{1}{2}}}} D^21A^D^21

F ~ k + 1 = Y k − λ Δ ~ T O k {{\bf{\tilde F}}^{k + 1}} = {{\bf{Y}}^k} - \lambda {\tilde \Delta ^{\rm{T}}}{{\bf{O}}^k} F~k+1=YkλΔ~TOk

其中 Δ ~ = Δ D ^ − 1 2 \tilde \Delta = \Delta {{\bf{\hat D}}^{^{ - \frac{1}{2}}}} Δ~=ΔD^21。然后,
O ~ k + 1 = O k − β Δ ~ F ~ k + 1 {{\bf{\tilde O}}^{k + 1}} = {{\bf{O}}^k} - \beta \tilde \Delta {{\bf{\tilde F}}^{k + 1}} O~k+1=OkβΔ~F~k+1
使用Elastic GNN中不同的正则项,得到不同的 O k + 1 {{\bf{O}}^{k + 1}} Ok+1,当使用 l 1 {l_1} l1正则时,
当使用 l 2 {l_2} l2正则项时
O i k + 1 = min ⁡ ( ∣ ∣ O ~ i k + 1 ∣ ∣ 2 , λ 1 ) ⋅ O ~ i k + 1 ∣ ∣ O ~ i k + 1 ∣ ∣ 2 {\bf{O}}_i^{k + 1} = \min (||{\bf{\tilde O}}_i^{k + 1}|{|_2},{\lambda _1}) \cdot \frac{{{\bf{\tilde O}}_i^{k + 1}}}{{||{\bf{\tilde O}}_i^{k + 1}|{|_2}}} Oik+1=min(O~ik+12,λ1)O~ik+12O~ik+1
对于 i ∈ m i \in m im。最终
F k + 1 = Y k − λ Δ ~ T O k {{\bf{F}}^{k + 1}} = {{\bf{Y}}^k} - \lambda {\tilde \Delta ^{\rm{T}}}{{\bf{O}}^k} Fk+1=YkλΔ~TOk
上述表示整个的Elastic GNN的算法流程。

通过执行基于 l 2 l_2 l2的图平滑可以增强全局的平滑度。在ElasticGNN中,通过引入 l 1 l_1 l1 l 2 l_2 l2图平滑,增强图神经网络的平滑度,并提升网络性能。在弹性图神经网络,使用一种新的消息传递方案。

实验结果

下面的实验结果是相关模型的精度
在这里插入图片描述
在对抗图攻击下的扰动率
在这里插入图片描述

代码

https://github.com/lxiaorui/ElasticGNN
在这里插入图片描述

环境配置
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值