[论文解读] NeuralUQ: A comprehensive library for uncertainty quantification in neural differential equations and operators
NeuralUQ 是一个开源的 Python 库,为科学机器学习(SciML)模型中的不确定性量化(UQ)提供统一且可扩展的框架,包括物理信息神经网络(PINNs)和深度算子网络(DeepONets)。它通过模块化、用户友好的工作流支持多种现代 UQ 方法,如贝叶斯神经网络、蒙特卡洛 dropout 和哈密顿蒙特卡洛,从而在动力系统和高维偏微分方程(PDEs)中实现可靠的不确定性估计,且实现开销极低。
Uncertainty quantification (UQ) in machine learning is currently drawing increasing research interest, driven by the rapid deployment of deep neural networks across different fields, such as computer vision, natural language processing, and the need for reliable tools in risk-sensitive applications. Recently, various machine learning models have also been developed to tackle problems in the field of scientific computing with applications to computational science and engineering (CSE). Physics-informed neural networks and deep operator networks are two such models for solving partial differential equations and learning operator mappings, respectively. In this regard, a comprehensive study of UQ methods tailored specifically for scientific machine learning (SciML) models has been provided in [45]. Nevertheless, and despite their theoretical merit, implementations of these methods are not straightforward, especially in large-scale CSE applications, hindering their broad adoption in both research and industry settings. In this paper, we present an open-source Python library (https://github.com/Crunch-UQ4MI), termed NeuralUQ and accompanied by an educational tutorial, for employing UQ methods for SciML in a convenient and structured manner. The library, designed for both educational and research purposes, supports multiple modern UQ methods and SciML models. It is based on a succinct workflow and facilitates flexible employment and easy extensions by the users. We first present a tutorial of NeuralUQ and subsequently demonstrate its applicability and efficiency in four diverse examples, involving dynamical systems and high-dimensional parametric and time-dependent PDEs.
研究动机与目标
- 解决科学机器学习(SciML)模型中不确定性量化(UQ)缺乏可访问、维护良好的软件工具的问题,特别是针对物理信息神经网络(PINNs)和深度算子网络(DeepONets)。
- 提供一个统一、可扩展且用户友好的软件框架,通过极低的实现复杂度,简化多样化的 UQ 方法在 SciML 问题中的应用。
- 使研究人员和从业者能够高效地应用、比较和扩展最先进的 UQ 技术,如贝叶斯推断、蒙特卡洛 dropout 和深度集成,均在一致的软件环境中完成。
- 通过提供全面的教程和模块化设计,支持自定义代理模型、先验分布和推断方法,促进可复现的研究和快速原型开发。
- 通过提供高效、可扩展且生产就绪的 UQ 实现,支持计算科学与工程领域的大规模实际应用,适用于小数据和大数据场景。
提出的方法
- 设计模块化软件架构,将代理模型(如 PINNs、DeepONets)、先验分布、推断方法(如 HMC、MFVI、MCD)和后验估计组件解耦。
- 将多种不确定性量化技术,包括贝叶斯神经网络(BNNs)、蒙特卡洛 dropout(MCD)、深度集成和哈密顿蒙特卡洛(HMC),整合到单一连贯的工作流中。
- 通过与随机优化兼容的方法(如朗之万动力学(LD)、平均场变分推断(MFVI)和 MCD)支持大规模数据场景下的小批量训练,实现可扩展的 UQ。
- 为用户提供灵活的接口,可插入自定义代理模型(如预训练的生成模型)、先验分布(如与物理无关的功能先验)和后验推断策略。
- 围绕标准化、可扩展的 API 构建库,便于轻松扩展并集成到现有 SciML 工具和框架中。
- 包含全面的教育性教程,引导用户完成从设置到在真实问题(包括 ODEs、PDEs 和算子学习任务)中应用 UQ 方法的全过程。

实验结果
研究问题
- RQ1如何系统且高效地将不确定性量化(UQ)应用于科学机器学习中的神经微分方程和算子学习模型?
- RQ2在不同数据规模(小数据与大数据)和问题类型(正向/反向 ODEs/PDEs、参数化与时间依赖 PDEs)下,哪些 UQ 方法对科学机器学习(SciML)最为有效?
- RQ3如何设计一个统一、模块化且可扩展的软件库,以支持多样化的 UQ 技术,同时保持对科研和工业应用的可用性和性能?
- RQ4在应用于 SciML 模型时,不同 UQ 方法(如深度集成、贝叶斯推断和基于 dropout 的方法)在计算效率、准确性和鲁棒性之间的实际权衡是什么?
- RQ5如何利用 UQ 输出将不确定性感知的主动学习集成到 SciML 流程中,以实现智能数据采集和模型优化?
主要发现
- NeuralUQ 通过极低的代码复杂度,成功实现了对 HMC、MFVI、MCD 和深度集成等多种 UQ 方法在 PINNs 和 DeepONets 中的应用,展现出高度的可用性和可扩展性。
- 在小样本数据集(约数百个测量值)下,哈密顿蒙特卡洛(HMC)能提供准确的后验估计,并具备良好的计算效率,适用于对不确定性敏感的应用。
- 在大数据集下,与随机优化兼容的方法(如朗之万动力学(LD)、平均场变分推断(MFVI)和蒙特卡洛 dropout(MCD))为 HMC 提供了可扩展且高效的替代方案,支持小批量训练。
- 深度集成方法在神经 ODE/PDE 和神经算子问题中,均能提供计算高效且可靠的模型不确定性估计,尤其在结合数据小批量处理时表现更优。
- 与物理无关的功能先验(PA-FP)能有效量化因数据不完整或缺失带来的不确定性,而深度集成则在捕捉认知不确定性方面表现优异。
- 该库支持灵活集成自定义代理模型(如预训练的物理信息生成对抗网络(GANs))和推断方法,展现出其对新型和复杂 SciML 工作流的强大适应能力。
![Figure 2: A unified view of the UQ models studied in Section 2.2 ; adopted from [ 45 ] . The model $\pazocal{M}_{1}$ can be a NN or a generator network, or nothing. The model $\pazocal{M}_{2}$ can be a PDE or an operator, such as a pre-trained DeepONet. The quantities $\phi$ , $\psi$ can be the solu](https://ar5iv.labs.arxiv.org/html/2208.11866/assets/figs/unified_model.png)
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。