Page 91 - 《爆炸与冲击》2026年第5期
P. 91
第 46 卷 冯 彬,等: 基于图神经网络的可燃气体泄漏扩散预测方法 第 5 期
递信息,并通过汇总来自其邻居的信息来更新自身状态。处理器通过 L 个可学习的消息传递步骤更新
G = Processor(G ) 。在每个消息传递步骤中都会将一个 GN 模块应用到前一个块的输出,从
L
0
潜在图,即
G l+1 l v i 的过程如下:
而逐步更新节点和边的特征表示,即 = GN(G ) 。更新边嵌入 e ij 和节点嵌入
( )
∑
l
e
l
l
l
e l+1 ← g (e ,ν ,ν ), ν l+1 ← g v ν , e l+1 (4)
i j ij i j i i ij
j
g e g v 分别代表应用于边和节点的更新函数,它们也是同样通过具有残差连接的双层 MLPs 实
式中: 和
现。所需的消息传递步骤数量 L 可能会随着系统的复杂性而增加 [31] 。
Y = Decoder(G ) 。解码过程以节点为单位,其输出由一
L
解码器根据最终的潜在图生成预测结果,即
2 个可学习函数 h v 产生。该函数由 2 层 MLPs 组成,用于将潜在特征映射到所需的输出空间。该解码器
可使 GNN 模型将潜在图的抽象表示转换为现实世界的预测。具体而言,浓度网络 N co n 中的预测值是可
燃气体浓度。
1.3.2 体积网络
如图 1(f) 所示,体积网络 N vo l 的输入数据为图结构 Z, Z = (V Z ,E Z ) ,其节点特征 x i ∈ V Z ,它包括坐标位
x i = [l i ,C i ] ;图边特征则与图 r ij 。值得注意的是,在训练时,体积网
置 l i 和浓度 C i ,表示为 X 相同,即采用
络 N l 的输入数据 Y C i 采用标签值,而预测时,其值则来自于浓度网络 N n 的输出。
vo 中的浓度 co
体 积 网 络 N v o l 在 解 码 器 之 后 引 入 图 池 化 模 块 , 用 于 生 成 解 码 器 输 出 数 据 的 图 级 表 示 , 即 u =
GraphPooling(Y) 。具体而言,该模块将图结构 Y 中所有节点特征向量求平均,计算式如下:
n
1 ∑
u = y i (5)
n
i=1
式中:y 为图结构 Y 中节点的特征向量,n 为节点数量。
i
浓度网络 N n 建立了连续时间步浓度场之间的映射关系,因而可以逐时间步预测浓度场。通过将
co
体积网络 N vo l 应用于不同时刻的浓度场,即可实现不同时刻的等效气云体积预测。
1.4 多阶段训练策略
为克服单阶段训练对高频特征捕捉不足的局限 [37] ,一种直观的方法是训练第 2 个神经网络来捕获
训练数据与第 1 个网络之间的残差。受到 Wang 等 [38] 研究的启发,采用多阶段训练策略来提高图神经网
络的预测精度。多阶段训练策略通过逐步逼近目标,将误差分解为多个阶段的残差,每个阶段的网络专
注于学习前一阶段未捕捉到的残差信息。这种逐步逼近的方式可以更有效地捕捉数据中的高频特征,
从而提高模型的精度。
在 MSDGNN 模型训练的第 1 阶段,训练样本是给定时刻所有节点的状态( X t ),预测目标是下一时
X t+1 ),其损失函数为:
刻状态(
2
t
L 1 = f θ1 (X )− X t+1
(6)
在 MSDGNN 模型训练的第 2 阶段,预测目标是第 1 个网络的输出与 X t+1 之间的残差( ε 1 = X −
t+1
f θ1 (X ) ),其损失函数为:
t
2
t
(7)
L 2 = f θ2 (X )−ε 1
以此类推,可以继续训练第 3 个甚至更多的神经网络,以使模型达到更高精度。第 n 个神经网络的
预测目标是第 n−1 个神经网络的输出与 X t+1 之间的残差 ε n−1 ,即 ε n = X t+1 − f θn (X ) ,其损失函数为:
t
2
t
(8)
L n = f θn (X )−ε n−1
模型的最终预测 Y 为 n 个神经网络输出的叠加:
n
∑
Y = f θn (X) (9)
i=1
051431-6

