第三章 · 3.5

3.5 消息传递的细节:GraphConv 与读出函数

Message Passing and Readout
本节接手 3.4 留下的两个接口:邻居信息如何聚合,原子向量如何变成分子输出。先立消息传递的一般框架,明确消息、聚合、更新三步的分工与置换不变性约束,让 GCN、神经指纹与有向消息传递对号入座;继而辨析 sum、mean、max 三种聚合的表达力边界;最后给出读出函数的硬约束与选项谱系,讨论感受野与信息瓶颈。

3.4 把谱卷积离散化,得到"邻域平均、线性变换、非线性"三层折叠的图卷积层,节末留下两个接口问题:聚合为什么取平均,还能取什么?一轮轮更新之后得到的是原子级向量,分子级的预测从哪里来?本节沿第一个问题展开消息传递的一般框架,把各家模型放进同一张图纸;再沿第二个问题梳理读出函数,并在收尾处回答"要多少层"。

3.5.1 消息传递的一般框架

分子图没有网格那样的平移结构,也没有固定的节点次序;图上的计算只能采取一种形态——每个原子反复"收消息、算新态"。Gilmer 等(2017)把这一形态提炼为消息传递神经网络(message passing neural network, MPNN)。设分子图 G = (V, E),原子 v 在第 t 轮的表示为 hv(t) ∈ Rd,其邻居集为 N(v),边 euv 携带键特征。一轮包含三步:

muv(t) = Mt( hv(t), hu(t), euv )
(3.5-1)消息函数(message function) M:邻居 u 发往 v 的一份消息,由两端当前状态与键特征共同决定。边特征在此进入模型——单键、双键、芳香键给出不同消息。
mv(t+1) = AGGt( { muv(t) : u ∈ N(v) } )
(3.5-2)聚合算子(aggregation operator) AGG:把 v 收到的全部消息并为一个向量。花括号强调自变量是多重集(multiset)——允许元素重复、不记排列顺序的集合。
hv(t+1) = Ut( hv(t), mv(t+1) )
(3.5-3)更新函数(update function) U:旧状态与新收到的聚合结果合并成下一轮状态。T 轮之后,{ hv(T) } 交由读出函数(3.5.5)生成分子级向量。

三步的可学习性分工明确。M 与 U 通常是小型神经网络——一层线性映射,或一个门控循环单元(gated recurrent unit, GRU)——参数端到端训练;AGG 一般不设参数,由设计者从求和、均值、逐维最大值中选定。分工并非偶然:聚合承担一项学习无法可靠完成的约束——置换不变性(permutation invariance)。分子图本无节点次序,"邻居列表"的顺序只是存储的产物;同一原子的邻居无论按什么顺序送入,聚合结果必须逐位相同。求和、均值、最大值天然满足;按列表顺序拼接邻居向量则不满足——一次任意的顺序变动就改变输出。原则上可以用数据增广逼近期望意义下的不变,但逐点相等无法靠学习保证。不变性应由结构免费提供,而不是靠训练去逼近。

定义

MPNN 框架。在图 G = (V, E) 上,给定初始状态 hv(0) 与边特征 euv,按式 (3.5-1)–(3.5-3) 迭代 T 轮,再以置换不变的读出函数 R 把 { hv(T) } 映为图级向量。其中 M、U 可学习;AGG 与 R 必须对输入顺序不变,即都是多重集上的函数。GCN 式层、Duvenaud 神经指纹、D-MPNN、GGNN 与 3.6 的 AttentiveFP 都是该框架的特例——差别只在三个槽位上放了什么零件。

回看 3.4 末尾的 GCN 式层,它恰是框架里最省零件的一种装法:

hv(t+1) = σ( Wt Σu∈N(v)∪{v} cuv hu(t) ), cuv = 1/√(d̃uv)
(3.5-4)d̃ 为加自环后的度,cuv 是 Kipf–Welling 重归一化的系数(Kipf & Welling, 2017)。三个槽位分别是:消息 = 邻居当前表示(恒等消息,忽略边特征);聚合 = 度归一化平均;更新 = 线性变换加非线性。

框架的收纳力由此显形:各家模型并非各奔东西,而是在 M、AGG、U 三个槽位上替换零件。表 3.5-1 让三个代表对号入座,图 3.5-1 则把最简装法落到一条三原子链的具体数值上。

表 3.5-1MPNN 框架收纳各家模型:三个槽位上的零件替换
模型消息 M聚合 AGG更新 U
GCN 式(3.4)恒等:m = hu,不用边特征度归一化平均线性 W +非线性 σ
Duvenaud 神经指纹线性:m = Wt hu求和(含自身)逐点 σ;每轮另作软落位,逐层拼进指纹(3.5.3)
D-MPNN(Chemprop)GRU 合并"上一轮本边消息+发送端收到的其余消息",消息在上(3.5.4)求和(发送端收到的有向消息)GRU 输出即新状态,T 轮共享权重
三原子链 A、B、C 上一轮消息传递的完整数值演算:消息为邻居的当前表示,聚合取闭邻域均值,更新为乘以共享权重 0.5 第一步 · 消息:邻居把当前表示原样发来(箭头上的数字 = 发送方的 h) 1 2 2 3 A h = 1 B h = 2 C h = 3 第二步 · 聚合:对闭邻域(自身+邻居)的多重集取均值,与列举顺序无关 mean{1, 2} = 1.5 邻域 = {A, B} mean{1, 2, 3} = 2.0 邻域 = {A, B, C} mean{2, 3} = 2.5 邻域 = {B, C} 第三步 · 更新:h′ = 0.5 × 聚合值(全体共享 W = 0.5,激活取恒等) h′ = 0.5×1.5 = 0.75 h′ = 0.5×2.0 = 1.00 h′ = 0.5×2.5 = 1.25 一轮之后,(1, 2, 3) 变为 (0.75, 1.00, 1.25):均值聚合把各状态拉向邻域中心,原子间的差距收窄—— 多轮叠加,趋同加速,这是过平滑(3.5.6)的苗头。习题 3.5-1 把聚合换成求和再算两轮。
图 3.5-1 消息—聚合—更新三步在一条三原子链上的完整数值演算(一维表示,W = 0.5,恒等激活)。紫色弧线是消息:数值即发送方当前的 h,闭邻域均值聚合并乘以共享权重后,三个原子从 (1, 2, 3) 变为 (0.75, 1.00, 1.25)。三步各自可替换:消息可以带边特征、聚合可换求和或取最大、更新可换多层感知机——这正是表 3.5-1 中各家模型的差别所在。

3.5.2 聚合算子:sum、mean 与 max

聚合算子一旦选定,模型的"计数学"随之确定。三个无参数候选的差别,用一组最小多重集即可显影:{1, 1} 与 {1, 1, 1}。求和得 2 与 3——可分,"有多少个"被保留下来;均值得 1 与 1——塌缩,只剩"平均是什么样";逐维最大得 1 与 1——同样塌缩,只剩"最显著的是什么"。三个算子对应三种读法:求和聚合保留计数信息,能区分仅重数不同的多重集;均值聚合对规模不敏感;最大值聚合是特征检测器,回答"邻居里有没有谁带有此特征"。

化学里的对应并不抽象。初始特征相同的原子在分子各处不可区分——若初始嵌入只含元素种类,一条全碳链上所有节点同值,则任何由均值堆出的模型都把甲烷到三十烷映到同一个分子向量:尺寸信息第一轮就被平均掉。而同系物的 LogP、沸点随碳数单调爬升,计数恰是主要信号。均值的用处也在另一侧:它抹平规模,性质若接近"强度量"——平均每原子的贡献、比例型描述符——均值反而是正确的归纳偏置。没有免费的午餐,只有匹配与否。

Xu 等(2019)把这条界线划成了定理:单射是分水岭。特征空间可数时,求和配以合适的 MLP 可以做到对多重集单射——不同多重集必得不同表示;均值与最大值不能,上例即反例。由此得到图同构网络(graph isomorphism network, GIN)

hv(t+1) = MLP(t)( (1 + ε(t)) hv(t) + Σu∈N(v) hu(t) )
(3.5-5)ε(t) 为可学习标量(或直接取 0),加权和把"自身"与"邻居之和"并进一次求和型聚合。定理的另一面:消息传递类模型的判别力上界是 WL 图同构测试(Weisfeiler–Lehman test);sum 聚合在可数特征空间取到此上界,mean 与 max 达不到。该分析假设节点特征同质、无边特征;分子建模引入键特征后,界仍成立,取界与否另论。"最强"不等于"最合适"——偏置与任务匹配才是选型依据,3.5.5 的方法框回到这一点。
习题 3.5-1

三原子链 A—B—C,一维初始表示 h(0) = (1, 2, 3)。聚合取闭邻域(自身+邻居)求和,更新取 h′ = 0.5 × 聚合值(W = 0.5 为全体共享的标量,激活取恒等)。(1) 求 h(1) 与 h(2)。(2) 改用图 3.5-1 的闭邻域均值,写出 h(1),比较两种聚合下三个原子的区分度。(3) 对求和版的 h(1) 分别计算 sum、mean、max 三种读出。

参考解答

(1) 闭邻域求和:hA(1) = 0.5×(1+2) = 1.5;hB(1) = 0.5×(1+2+3) = 3.0;hC(1) = 0.5×(2+3) = 2.5。第二轮:hA(2) = 0.5×(1.5+3.0) = 2.25;hB(2) = 0.5×(1.5+3.0+2.5) = 3.5;hC(2) = 0.5×(3.0+2.5) = 2.75。(2) 均值版即图 3.5-1:h(1) = (0.75, 1.00, 1.25)。区分度以极差计:求和版 3.0 − 1.5 = 1.5,均值版 1.25 − 0.75 = 0.5。均值把状态拉向邻域中心;求和保留计数——B 的两个邻居使其聚合值独高,拓扑位置转化为数值差异。(3) sum:1.5 + 3.0 + 2.5 = 7.0;mean:7.0/3 ≈ 2.33;max:3.0。三种读出给出三个不同的分子向量,偏置各异(3.5.5)。

习题 3.5-2

(1) 证明求和池化区分多重集 {1, 1} 与 {1, 1, 1},而均值池化不能;并各举一个求和也无法区分的实数多重集对,说明 GIN 的单射结论为何要把特征空间限制在可数集。(2) 证明:任何对输入顺序不变的聚合算子 F,都存在定义在多重集上的函数 G,使 F(x1, …, xn) = G({{ x1, …, xn }}),其中 {{ · }} 记多重集。

参考解答

(1) 求和:1+1 = 2 ≠ 3 = 1+1+1,可分;均值:2/2 = 1 = 3/3,塌缩。更一般地,均值只保留经验分布的一阶信息,一切平均相同的多重集(如 {1, 3} 与 {1, 1, 3, 3})都映到同值。求和的盲区在连续空间:{2} 与 {1, 1} 之和同为 2,{1, 2} 与 {3}? 3 = 1+2 亦同。若特征取自可数集(离散的原子特征即是),可先把每个特征嵌入为线性无关的向量,此时多重集的和唯一确定各特征的重数——单射成立;GIN 的单射结论因此把讨论限制在可数特征空间,分子初始特征天然满足这一条件。(2) 定义 G({{ x1, …, xn }}) := F(x1, …, xn)。若两个输入序列给出同一多重集,则二者互为置换,由 F 的置换不变性知 F 取值相同,故 G 与代表元的选取无关、定义无歧义,且对一切输入有 F = G∘{{ · }}。逆方向显然。结论:置换不变的聚合就是多重集函数;一个模型"能分辨什么",完全由它作用的多重集函数是否单射决定。

3.5.3 神经指纹:把 ECFP 的哈希软化

2.5 的 ECFP 是一条全硬的流水线:原子特征哈希成整数标识符,每轮"新标识符 = 哈希(自身标识符, 邻居标识符)",迭代若干轮后收集全部出现过的标识符,模 F 折叠成 0/1 位向量。每一步都不可微,梯度无从穿过。Duvenaud 等(2015)没有另起炉灶,而是给每个硬步骤配一个形状相同的软步骤,得到神经指纹(neural fingerprint):整数标识符换成连续向量,哈希换成可学习映射,"落进哪一位"换成概率摊开。传播层为

hv(t+1) = σ( Σu∈N(v)∪{v} Wt hu(t) )
(3.5-6)对照式 (3.5-1)–(3.5-3):消息 = 线性映射后的邻居表示,聚合 = 求和(含自身),更新 = 逐点非线性 σ。哈希的"扩散性"由 σ 与随机初始化的 Wt 共同顶替。
f(t) = Σv∈V softmax( Wout(t) hv(t) ), F = [ f(0) ; f(1) ; … ; f(T) ]
(3.5-7)每轮把各原子向量经 softmax 摊成 F 维"归属分布",对全部原子求和得该轮指纹片段;各轮片段直接拼接(direct connection),不做模折叠。softmax 充当软哈希:确定性的一位落位变成概率性的多位摊开。

逐条对照见表 3.5-2,直观对照见图 3.5-2。指纹每一位的含义由此改变:ECFP 的位是"某子结构出现与否"的布尔值,神经指纹的位是若干软标识符的期望计数——实值、连续可分。收集不再折叠:每轮占 F 维,T 轮共 F(T+1) 维,省去模折叠的确定性碰撞,代价是指纹长度随深度线性增长。

表 3.5-2ECFP 与神经指纹的逐条对照:同一骨架,硬软两种实现
环节ECFP(硬哈希)神经指纹(软化)
初始标识符原子特征哈希成整数 id原子特征经嵌入成连续向量 hv(0)
迭代新 id = H(自身 id, 邻居 id),整数进整数出hv(t+1) = σ(Σ Wt hu(t)),实数进实数出
收集出现过的 id 全部进集合各原子 softmax 摊到 F 维,对原子求和
折叠 / 拼接id mod F 折叠成 0/1 位,碰撞确定各轮片段直接拼接,实值软计数,无折叠
产物性质与模型无关、可复算、位有子结构词典随权重而变、可微、端到端、跨模型不可比
左:ECFP 用整数哈希与模折叠把子结构落成 0/1 位;右:神经指纹用求和、非线性与 softmax 把原子摊成实值软计数 ECFP:硬哈希与模折叠 原子 id = 57 邻居 id = 132 哈希 H 新 id = 812 折叠:812 mod 8 = 4 1 0 7 指纹位(F = 8) 位为 0/1:落位确定、可复算;碰撞由 mod 8 决定。 神经指纹:学习式软化 原子向量 邻居向量(求和) 求和+σ h′ = σ(W·Σh) softmax:软落位 0 7 指纹位(F = 8,实值软计数) 每位为实值软计数:无模折叠,向量随训练权重而变。
图 3.5-2 同一个"标识—传播—落位"骨架的硬软两种实现。左(ECFP):整数标识符经哈希得到新整数(示例 812),模 8 折叠落进第 4 位,位为 0/1;同一分子永远得到同一位向量,碰撞(812 与 4 同位)确定可复算。右(神经指纹):向量经求和与非线性传播,softmax 把每个原子摊成 F 维分布,对原子求和后每位是实值软计数;质量分散在多位上,无折叠碰撞,但数值随权重而变。可微与确定,二者取一。
注记

可微换来端到端,确定换来可复算。ECFP 与任何模型无关,任何项目、任何时刻对同一分子算出的指纹逐位相同,可直接入库、跨论文比对,位与子结构之间有词典可查。神经指纹把"什么算相似子结构"交给任务损失去打磨,换来端到端;代价是同一分子在不同训练好的模型下向量不同,跨模型不可比,位的可解释性也随之稀释。DeepChem 的 GraphConv 层属这一谱系:按邻居度数分桶设置一组 W,传播—求和—软落位的机理不变,只是不同连接度的原子各用各的线性映射。

3.5.4 以边为中心:D-MPNN

节点中心的传递在环上有一处毛病。设苯环上相邻两原子 A、B:第 t 轮 A 收 B 的消息,第 t+1 轮 B 又把刚从 A 收到的消息原样送回——同一份信息在一条键上原地往返,反复冲淡新消息的份额,训练随之震荡。Chemprop 的有向消息传递神经网络(directed message passing neural network, D-MPNN)(Yang et al., 2019)把消息从节点搬到"边"上:每条键拆成方向相反的两条有向边,各带一个隐藏状态 muv(初值由两端原子特征与键特征线性组合而来),每轮按

muv(t) = GRU( muv(t−1), Σw∈N(u)\{v} mwu(t−1) )
(3.5-8)关键在求和挖去了反向边 mvu:从 u 发往 v 的消息,只由"u 从其他邻居收到的消息"构成。同一份信息无法在一步内原路折返;在环上,它只能沿环逐步绕行,而不是在一条键上来回震荡。GRU 跨轮共享一套权重。

T 轮之后,把进入每个节点的边消息求和,回收为原子表示,再照常读出:

hv(T) = Σu∈N(v) muv(T)
(3.5-9)消息住在边上、答案取回节点:边状态承担"键的语境",节点状态只在末轮汇总。

代价与收益都清楚。隐藏状态从 |V| 个增到 2|E| 个,一步计算更贵;GRU 跨轮共享权重,内存占用得到控制。Yang 等在 MoleculeNet 上的系统比较显示,D-MPNN 对 Morgan 指纹基线的优势随训练集增大而扩大——固定指纹的子结构词典一旦写死便不再生长,学习式表示随样本继续打磨(Yang et al., 2019)。一步额外开销,换来环上更稳的信息流动与随数据增长的表示能力。

3.5.5 读出函数:从原子表示到分子表示

末轮之后得到一袋原子向量 { hv(T) },袋子的尺寸就是原子数,随分子不同而不同。分子级预测——毒性、溶解度——要求把这袋向量变成定长的分子向量,这一步是读出函数(readout)。约束是硬的:分子不因原子编号改变而改变,R 必须对节点次序置换不变。违反它的读出会把同一个分子(仅编号不同)映到不同向量、给出不同预测——这不是精度缺陷,是定义错误。与聚合一样,读出的自变量又是多重集。

ĥG = R( { hv(T) : v ∈ V } )
(3.5-10)R 作用于节点多重集,须置换不变;其后接全连接层输出任务预测。聚合管"邻居怎么合",读出管"全分子怎么合"——两处对称,一处局部、一处全局。

选项谱系见表 3.5-3。最朴素的三个是求和池化(sum pooling)均值池化(mean pooling)最大池化(max pooling),它们把 3.5.2 的三选一原样搬到分子级;拼接全部原子向量虽能保留全部信息,但长度随分子变化且不置换不变(须先排序),仅对小图成立。往上一级是分层聚合——先在官能团或环的层面归拢,再聚成全分子表示,把"子结构—全分子"的两级结构写进读出(3.6 的伏笔)。最灵活的一支是可学习加权:

αv = softmaxv( score(hv(T)) ), ĥG = Σv∈V αv hv(T)
(3.5-11)注意力池化(attention pooling):score 给每个原子打分,softmax 归一成权重再求和。sum/mean/max 的权重分别是"全 1"、"全 1/|V|"、"赢家通吃",注意力把权重交回学习——模型自己回答"看哪里"。Set2Set 更进一步:一个 LSTM 带读注意力对集合读两遍,表达力最强,训练与调参也最贵(Vinyals et al., 2015;Li et al., 2016)。
表 3.5-3读出函数选项谱系(均满足置换不变)
读出直觉主要偏置
求和池化累计每个原子的贡献保留尺寸与计数;与大小相关的任务易走捷径
均值池化平均每个原子的贡献归一掉尺寸;同系物等计数信号一并丢掉
最大池化最显著的原子说了算存在性检测器;无视其余原子提供的语境
注意力池化学出"看哪里"的权重灵活、可解释;权重本身可能学到捷径
Set2SetLSTM 对集合带注意力读两遍表达力最强;训练与调参成本最高

偏置各有着力的任务,失效模式也各有形状。sum 读出让分子大小直接进入预测头:任务若与大小强相关——大分子更可能难溶、更可能触发某类毒性——模型可以只凭尺寸拿分,成绩体面而机理全无。mean 读出把尺寸归一,代价是同系物信号消失。更隐蔽的失效在聚合与读出的组合处:邻居 {蓝} 与 {蓝, 蓝} 经均值聚合得到相同的节点状态,此后读出无论多讲究,两个分子已不可区分——层间丢掉的计数,读出找不回来。选型的次序应是:先问性质对尺寸敏感与否,再问信号在局部还是全分子。

方法

为任务选聚合与读出。① 近似原子贡献加和的广延量(LogP、摩尔折射率、分子量)——sum 读出,层数可浅,0 层加特征求和已是合格基线;② 强度量或比例型性质——mean 聚合配 mean 读出,把规模归一写进结构;③ "有则改判"的局部信号(毒性警示子结构、反应软点)——浅层配 max 或注意力读出,存在性检测正合题意;④ 信号位置不明或跨尺度——注意力、Set2Set 或分层聚合(3.6);⑤ 判别力至上、特征离散——sum 聚合(GIN 式)打底。免费单元测试:把同一分子的原子编号任意置换后重算,输出必须逐位不变。

习题 3.5-3

三个性质预测任务:(i) LogP(近似原子贡献加和的广延量);(ii) 代谢软点判别——标出分子中哪个原子最易被代谢(位点型局部性质);(iii) 一个与分子大小强相关的聚集倾向数据集。为每个任务给出层数、聚合、读出的建议并说明理由;对 (iii) 额外说明 sum 读出的捷径风险与检查办法。

参考解答

(i) 一至两层足够,0 层加原子特征求和即合理基线;聚合 sum 或 mean 皆可,读出 sum——性质本身是加和结构,让归纳偏置与任务结构对齐,深混合无益。(ii) 层数取软点邻域半径量级(两三层);聚合 sum 保计数;输出宜在原子级直接给出(读出退化为逐节点判别),若必须分子级则 max 或注意力读出——"哪个原子最像软点"是存在性判别,max 即存在性检测器。(iii) sum 读出会把 |V| 直接送进预测头,模型可凭大小拿分;先建"只用分子量或原子数"的哑基线,若其成绩接近完整模型,捷径成立;再以 mean 读出或对尺寸去偏后重比,确认增益不来自大小。

3.5.6 感受野与信息瓶颈

T 轮消息传递后,hv(T) 只依赖 v 的 T 跳邻域内的原子与键——这是 GNN 的感受野(receptive field)。三四层的常见配置下,一个原子看到的是三五根键以内的片段,不是全分子。药物类分子的图直径常有十几个键:链端两个原子互相看不见,除非层数过半直径。读出能汇总的,也只是各原子局部视野的并集。

任务对感受野的要求差别很大。近似加和的全局性质——LogP、摩尔折射率——本来就是原子贡献之和,浅层加 sum 读出即可逼近,堆层无益;位点性质——某原子的反应活性——信号就在局部几键之内,浅即是够。真正需要远程的是另一类:共轭贯穿全分子的电子效应、取代基对远端位点的影响、环系如何拼在一起这类拓扑整体性。层数安排应与任务的特征相互作用半径对齐,而非一味求深。

层数不是免费的旋钮。反复的均值型更新把相邻状态拉近,多轮之后全图状态趋同——过平滑(oversmoothing):图 3.5-1 里 (1, 2, 3) 一轮就挤进 (0.75, 1.00, 1.25) 的窄带,趋同的势头随轮数加深;节点状态彼此无异,读出再精巧也无米下锅。同时参数随深度增长,小数据集上过拟合先于远程效应到来。两条出路:跳跃连接(skip connection)把初始特征与浅层状态直通读出,远程靠直达而非堆层;更粗的图——以官能团与环为节点的 junction tree——把图距离缩短,少数几轮覆盖全分子。

警示

感受野不足与层数迷信。① 报告 GNN 配置时,连同给出层数与数据集分子直径的分布——"三层"意味着三键视野,远程效应看不见并非模型学不会,而是结构上不可见;② 加层之前先问任务信号的作用半径:加和型性质上堆层,多半只收获过拟合与过平滑;③ 确需远程信息,优先考虑跳跃连接、粗粒化图或原子级直出,而非加深。感受野是预算,按任务的相互作用半径花。

本节把"怎么发消息、怎么聚邻居、怎么读分子"拆成三个可单独选型的槽位;但所有聚合与读出仍是固定算子,权重相等或写死。3.6 的 AttentiveFP 把"听谁的、看谁的"也交给学习:注意力既做聚合又做读出,同一机理贯通原子级与分子级。


关键术语

消息传递神经网络 (message passing neural network, MPNN)
以"消息—聚合—更新"三步循环在图上传播信息的一般框架,各家图模型皆其特例。
消息函数 (message function)
由两端点状态与边特征生成一条邻居消息的可学习函数。
聚合算子 (aggregation operator)
把收到的全部消息并为一个向量的算子,必须对邻居顺序置换不变。
更新函数 (update function)
合并旧状态与聚合结果、产生下一轮节点状态的函数。
多重集 (multiset)
允许元素重复、不记顺序的集合;置换不变算子的天然定义域。
置换不变性 (permutation invariance)
输出不随输入排列顺序改变的性质,图模型的硬约束。
图同构网络 (graph isomorphism network, GIN)
以 sum 聚合配 MLP 取到 WL 测试判别力上界的消息传递模型。
神经指纹 (neural fingerprint)
把 ECFP 的哈希与折叠软化成可学习映射的连续指纹,可微、随权重而变。
有向消息传递神经网络 (directed message passing neural network, D-MPNN)
消息在有向边上传递、反向边不参与下一消息的变体,Chemprop 的核心。
读出函数 (readout)
把节点表示多重集映为定长图级向量的置换不变函数。
感受野 (receptive field)
T 轮传递后单个节点所能依赖的 T 跳子图范围。
过平滑 (oversmoothing)
多轮均值型更新使全图节点状态趋同、判别力衰减的现象。

参考文献与延伸阅读

  1. Duvenaud DK, Maclaurin J, Iparraguirre J, et al. 2015. Convolutional networks on graphs for learning molecular fingerprints. In: Advances in Neural Information Processing Systems 28 (NeurIPS 2015).
  2. Gilmer J, Schoenholz SS, Riley PF, Vinyals O, Dahl GE. 2017. Neural message passing for quantum chemistry. In: Proceedings of the 34th International Conference on Machine Learning, PMLR 70:1263–1272.
  3. Kearnes S, McCloskey K, Berndl M, Pande V, Riley P. 2016. Molecular graph convolutions: moving beyond fingerprints. Journal of Computer-Aided Molecular Design 30:595–608.
  4. Kipf TN, Welling M. 2017. Semi-supervised classification with graph convolutional networks. In: International Conference on Learning Representations (ICLR).
  5. Li Y, Tarlow D, Brockschmidt M, Zemel R. 2016. Gated graph sequence neural networks. In: International Conference on Learning Representations (ICLR).
  6. Vinyals O, Bengio S, Kudlur M. 2015. Order matters: sequence to sequence for sets. arXiv:1511.06391.
  7. Xu K, Hu W, Leskovec J, Jegelka S. 2019. How powerful are graph neural networks? In: International Conference on Learning Representations (ICLR).
  8. Yang K, Swersky K, Zou J, Rush AM, Leskovec J. 2019. Analyzing learned molecular representations for property prediction. Journal of Chemical Information and Modeling 59:3370–3388.