DeepONet 深度算子网络入门

许可证: MIT · 更新于 2026-08-01

学习路径

阶段 1:理论(1–2 天)

核心思想: DeepONet = Branch Net(参数输入 u(x) 的编码)+ Trunk Net(空间坐标 t 的编码),两者做内积得到解算子 G(u)(t)。其理论基础是 Kolmogorov-Arnold 表示定理在神经网络中的离散化。

必读论文

  • Lu et al. “DeepONet: Learning nonlinear operators for inverse problems”(Nature Machine Intelligence 2021)

阶段 2:DeepXDE 实现(3–5 天)

DeepXDE(MIT License)是 DeepONet 与 PINN 最成熟的 Python 框架,支持多种算子与边界条件。

from deepxde.backend import tf
from deepxde.nn.tensorflow.fnn import FNN

# 支网络:编码函数 u(x)
branch = FNN([100, 128, 128, 128], "relu", "Glorot normal")

# 干网络:编码坐标 t
trunk = FNN([2, 128, 128, 128], "relu", "Glorot normal")

# 拼接入积分解算子
net = deepxde.nn.DeepONetOperator([100, 128, 128, 128], [2, 128, 128, 128])

学习顺序(DeepXDE 官方 Tutorial)

  1. Burgers 方程(1D 无粘)
  2. Porter 方程(参数化初边值)
  3. 随机微分方程(不确定性量化)

阶段 3:工业场景实战

  • 参数化几何(多几何形状的力学响应预测)
  • 多物理耦合(热-结构顺序耦合)
  • 在 U-bend 数据集上做流场代理模型

与 FNO 的对比

特性DeepONetFNO
网格适应性✅ 任意点评估❌ 固定分辨率
参数化维度✅ 高维参数⚠️ 有限
训练效率✅ 数据效率高⚠️ 需大量数据
开源框架DeepXDE ✅NeuralOperator ✅

推荐资源

  • DeepXDE 官方文档(中文友好)
  • Lu et al. 2021 Nature MI 原文
  • GitHub: lululxvi/deepxde(Star 3k+,活跃维护)
标签: DeepONet神经算子DeepXDEPINN教程
相关条目
  • FNO(Fourier Neural Operator)入门教程 · 系统学习 Fourier Neural Operator(傅里叶神经算子)从理论到代码实现,适合希望将神经算子用于 PDE 代理模型的工程师与研究者。
  • Physics-Based Deep Learning 在线教材 · 由慕尼黑工业大学团队维护的免费在线教材,系统讲解「物理 + 深度学习」的融合范式,从可微物理、PINN 到神经算子与湍流建模,配套可运行代码。
  • PINN from Scratch · 从零实现物理信息神经网络的经典中文结构化教程,配合 Raissi 原版 PINNs 仓库,是入门物理 AI 的最佳起点。
  • 物理仿真与机器学习融合路线图 · 从经典 PDE 数值方法到数据驱动物理 AI 的系统学习路线,覆盖有限元、有限体积、代理模型、PINN 等方法的演进逻辑与适用场景。
  • 算子学习综述(Operator Learning Survey) · 系统梳理算子学习方法的综述论文,覆盖 DeepONet、FNO 及其变体的理论、架构与误差分析,是理解「学习无限维映射」最合适的入门与查阅材料。