3. DeepONet架构原理

在动力系统预测中,我们真正想学的往往不是一个有限维向量到另一个向量的映射,而是一个算子:输入是一条函数(初值曲线、外激励时程、参数场),输出也是一条函数(状态轨迹、响应时程)。DeepONet 的核心思想,就是把这种“函数到函数”的映射拆成两条并行的子网络来学习,从而绕开传统全连接网络在高维函数空间上难以泛化的困境。

一、为什么要把网络拆成“分支”和“主干”

DeepONet 的输入由两部分组成:一部分是传感器采样得到的输入函数离散值 u(x₁), u(x₂), …, u(x_m),另一部分是输出函数在待求位置上的查询坐标 y(在动力系统中通常是时间 t,或时空坐标 (x, t))。如果直接把 (u, y) 拼接后送入一个全连接网络,网络必须同时学会“输入函数长什么样”和“在哪个位置取值”这两件性质完全不同的事,样本效率很低。

DeepONet 的做法是分工:分支网络(Branch Net)只吃输入函数的采样值,输出一个 p 维特征向量 b = [b₁, …, b_p];主干网络(Trunk Net)只吃查询坐标 y,输出同样维度的特征向量 t = [t₁, …, t_p]。最终输出取两者的内积:

G(u)(y) ≈ Σ_{k=1}^{p} b_k(u) · t_k(y) + b_0

这个形式的精妙之处在于:分支网络编码“是哪一个输入函数”,主干网络编码“在哪个位置取值”,内积则相当于在 p 个基函数上做加权求和。可以把 t_k(y) 理解为第 k 个可学习的基函数,b_k(u) 就是该基函数在当前输入下的系数。这正是算子逼近定理所保证的结构。

输入函数 u 传感器采样 u(x₁)…u(x_m) m 个离散值 分支网络 Branch Net 全连接 / CNN / RNN 输出 p 维系数 b 主干网络 Trunk Net 输入查询坐标 y 输出 p 维基函数 t 查询坐标 y 时间 t / 时空 (x,t) 任意位置可查询 内积 Σ bₖ·tₖ + b₀ 输出函数 G(u)(y) 状态轨迹 / 响应时程 p 个可学习基函数加权求和 分支定系数,主干定基函数 设计动机: 分支网络只学“输入函数 → 系数”,主干网络只学“坐标 → 基函数”,两者解耦后样本效率显著高于直接拼接 (u, y) 的全连接网络。 训练完成后,主干网络可对任意查询坐标求值,实现“一次训练、连续预测”。

二、算子逼近定理给出的理论保证

DeepONet 并非经验拼凑,其理论基础是万能算子逼近定理(Chen & Chen, 1995;Lu 等将其推广到深度网络形式)。定理的直观表述是:对于定义在紧集上的连续算子 G,只要分支网络和主干网络足够宽(或足够深),存在一组网络参数使得内积形式能以任意精度一致逼近 G。这一定理把“学算子”问题转化为“学两组有限维特征的内积”,为网络结构提供了合法性。

需要提醒的是,定理是存在性结论,不告诉我们需要多少样本、多宽的网络。实际建模中,p 的取值、传感器点数 m、分支/主干各自的层宽,仍要靠验证集误差来调。经验上 p 取 50~200 较为常见,m 应足以分辨输入函数的主要变化尺度(例如激励时程含 10 Hz 成分时,采样率至少 50 Hz 量级)。

三、输出形式与可解释性

DeepONet 的输出天然是“基函数展开”形式:G(u)(y) = Σ b_k(u)·t_k(y)。这带来两点可解释性优势。第一,主干输出的 t_k(y) 可以单独可视化,它们往往呈现出与系统固有模态、衰减包络相似的形状,相当于网络自己学出了一组数据驱动的基函数。第二,分支输出的 b_k(u) 是输入函数的“指纹”,对同一系统不同初值,比较系数向量即可判断响应差异主要落在哪几个模态上。

此外,由于主干网络与输入函数无关,训练完成后可以固定分支、只对主干在密集时间网格上求值,得到平滑的连续轨迹,而不像普通回归网络那样只能在训练点上插值。这一点对动力系统长期预测尤其重要。

四、与全连接网络、PINN 的局限对比

全连接网络把 (u, y) 拼接后回归,本质是在学一个高维函数 F(u, y)。当输入函数采样点 m 增大时,输入维度线性增长,网络需要大量样本覆盖“函数空间 × 坐标空间”的联合分布;换一组初值就要重新大量采样,泛化到未见函数的能力弱。DeepONet 通过解耦把函数维度和坐标维度分开处理,样本效率明显更好。

PINN 把 PDE 残差作为损失项,无需标签数据,适合正问题与反问题。但它的局限在于:每个新的初值/边界条件通常要重新训练一次网络,属于“一问题一训练”;损失中残差项与数据项权重敏感,训练不稳定;对高维、强非线性、长时间积分的问题收敛困难。DeepONet 则是“一次训练、多输入推理”,训练完成后对新初值只需前向计算,适合需要反复调用算子的场景(如实时控制、参数扫描、不确定性量化)。

方法学习对象新初值处理主要局限
全连接网络F(u, y) 联合映射需大量新样本,泛化弱输入维度随采样点增长,样本效率低
PINN单个解 u(x,t)每个条件重新训练训练不稳定,长时积分困难
DeepONet算子 G: u → G(u)前向推理即可需成对算子数据,p 与 m 需调
实践建议:若你的任务是“给定一族初值/激励,反复预测响应”,优先考虑 DeepONet;若只有单个边值问题且无标签数据,PINN 更合适;若输入维度很低且样本充足,全连接网络也可作为基线。