文章解读:Dynamic Graph Information Bottleneck(DGIB)

1. 研究要解决的问题:动态图模型怕“攻击”,咋破?

咱们先搞懂“动态图”是啥——比如每天变化的社交网络(今天加好友、明天删好友)、实时更新的金融交易网络(每秒都有转账),这些随时间变的图就是动态图。

现在处理动态图常用“动态图神经网络(DGNNs)”,但它有个大毛病:经不起折腾。比如有人故意改几条链路(“结构攻击”),或者给节点特征加些噪声(“特征攻击”),模型预测 accuracy 就掉得厉害(这叫“鲁棒性差”)。

为啥会这样?因为 DGNNs 学的时候会把没用的冗余信息也记住(比如偶然的一次转账、临时加的好友),这些信息一被干扰,模型就“懵了”。之前有个叫“信息瓶颈(IB)”的方法能解决类似问题——它让模型只学“最少但足够用”的信息(比如只记长期稳定的好友关系,忽略临时互动),但 IB 原本是给静态数据设计的,直接用到动态图上会遇到两个坑:

  1. 动态图的节点不是独立的(比如你朋友的朋友也会影响你),但 IB 要求数据独立,这就不匹配;
  2. 动态图又有空间结构(谁和谁连)又有时间变化(今天和明天不一样),IB 里的关键计算(互信息)根本算不出来。

所以这篇文章的目标很明确:把 IB 改一改,让它能处理动态图,同时让模型更抗攻击

2. 核心思路:给动态图定个“好表示”的标准,再拆成两步优化

2.1 第一步:先定义“好表示”要满足啥条件?

模型最终要学出一个“节点表示 Z”(可以理解成给每个节点编个数字码),这个 Z 得满足 3 个要求,作者叫它“最小-充分-一致(MSC)条件”:

  • 充分性:Z 里得包含所有能预测未来链路的信息。比如要预测你明天会不会加某个好友,Z 里必须有你和他的历史互动、共同好友这些关键信息;
  • 最小性:Z 里不能有没用的冗余信息。比如你去年偶然和某个人聊过一次,这个信息对预测明天的好友关系没用,就别放进 Z 里;
  • 一致性:不同时间的 Z 得“思路一致”。比如你上周喜欢加同行业好友,这周也该保持这个趋势,不能上周学一套、这周学另一套。

用公式写出来就是(别慌,咱们慢慢解释):
Z T + 1 = arg ⁡ min ⁡ S ( D ) : I ( S ( D ) ; Y T + 1 ) = I ( D ; Y T + 1 ) I ( S ( D ) ; D ) Z^{T+1} = \arg\min_{S(\mathcal{D}): I(S(\mathcal{D}); Y^{T+1})=I(\mathcal{D}; Y^{T+1})} I(S(\mathcal{D}); \mathcal{D}) ZT+1=argS(D):I(S(D);YT+1)=I(D;YT+1)minI(S(D);D)

  • D \mathcal{D} D:训练数据(历史所有图 G 1 : T G^{1:T} G1:T + 下一刻节点特征 X T + 1 X^{T+1} XT+1);
  • S ( D ) S(\mathcal{D}) S(D):对数据的“提炼函数”,输出就是表示 Z;
  • I ( A ; B ) I(A;B) I(A;B):互信息,衡量 A 和 B 之间的关联程度(I 越大,A 包含 B 的信息越多);
  • 等式 I ( S ( D ) ; Y T + 1 ) = I ( D ; Y T + 1 ) I(S(\mathcal{D}); Y^{T+1})=I(\mathcal{D}; Y^{T+1}) I(S(D);YT+1)=I(D;YT+1) 就是“充分性”——提炼后的 Z 包含的目标信息( Y T + 1 Y^{T+1} YT+1 是未来链路标签)和原始数据一样多;
  • 外面的 min ⁡ I ( S ( D ) ; D ) \min I(S(\mathcal{D}); \mathcal{D}) minI(S(D);D) 就是“最小性”——Z 和原始数据的关联尽可能小(少带冗余);
  • 后面加的约束 C ( θ ) C(\theta) C(θ) 就是“一致性”——让不同时间的 Z 保持预测模式一致。

2.2 第二步:把复杂问题拆成两个小任务

直接优化上面的 MSC 条件太难,作者把它拆成两个通道,分别解决“充分+最小”和“一致”:

通道1:DGIB_MS——学“最小充分”的表示

这个通道负责处理原始数据,学出能预测未来链路的核心信息,公式长这样:
Z T + 1 = arg ⁡ min ⁡ P ( Z T + 1 ∣ D , θ ) ∈ Ω [ − I ( Y T + 1 ; Z T + 1 ) + β 1 I ( D ; Z T + 1 ) ] Z^{T+1} = \arg\min_{\mathbb{P}(Z^{T+1}|\mathcal{D},\theta)\in\Omega} \left[ -I(Y^{T+1}; Z^{T+1}) + \beta_1 I(\mathcal{D}; Z^{T+1}) \right] ZT+1=argP(ZT+1D,θ)Ωmin[I(YT+1;ZT+1)+β1I(D;ZT+1)]

  • β 1 \beta_1 β1:平衡系数,控制“充分”和“最小”的权重;
  • 第一项 − I ( Y T + 1 ; Z T + 1 ) -I(Y^{T+1}; Z^{T+1}) I(YT+1;ZT+1):负的互信息,要最小化它,其实就是要最大化 I ( Y T + 1 ; Z T + 1 ) I(Y^{T+1}; Z^{T+1}) I(YT+1;ZT
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值