社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  机器学习算法

PINN自动微分一定是对的吗?论物理信息机器学习中自动微分的失效

AI4CFD • 6 天前 • 53 次点击  

观点文章精读 · arXiv:2609.33078 (cs.LG), 2026

导数算得再准,物理也可能是错的?读 Jagtap 的“精确性的极限”,并动手检验它

The limits of exactness: On the failure of automatic differentiation in physics-informed machine learning

本文为AI人机协同原创解读和审查文章

论文投稿/审稿邮箱:xiongxiongnwpu@mail.nwpu.edu.cn

作者Ameya D. Jagtap(伍斯特理工学院航空航天工程系)

类型Perspective(观点文章),18 页,83 条参考文献

出处arXiv:2609.33078v2 [cs.LG],2026 年 9 月 30 日

自动微分(AD)是物理信息机器学习的基础设施:PINN、深度 Ritz、神经算子,几乎都靠它把方程里的导数算出来。AD 没有截断误差,因此人们很自然地认为,用精确导数写成的残差,就会忠实地反映方程里的物理。这篇观点文章要反驳的正是这个直觉:导数的精确,不等于物理的忠实。

文章没有实验,是一篇论证性的综述。本文先梳理它的论证,再挑出其中最容易检验的一条,亲手做了几个小实验。结论是:论文关于“AD 之外还有一大类全局物理性质需要单独保证”的总体判断是有价值的;但它用来开篇的核心例子,也就是 AD 不懂方向、所以在对流方程上失败,需要修正。

读后要点

· 主张:AD 是逐点、不带结构信息的操作,守恒、热力学一致性、对称、辛结构、正性与有界、频谱保真这六类全局性质不会因导数精确而自动成立,需要通过格式、约束或架构去保证。

· 我们同意这个大方向,也认为它的“六类性质清单”和“各自对应的经典修复手段”整理得很有用。

· 但对流方程这个例子不能说明“AD 不懂方向”。我们用同样精确的导数,通过一次全局最小二乘就把对流方程解到了  精度,没有任何迎风偏置;真正失败的是时间推进的中心差分和神经网络的训练。

· 文章还存在若干表述过强与引用错位的地方,也没有给出可操作的诊断方法。

一论文在说什么

AD 的“够不着”。文章先指出一个定义上的限制:AD 是一串初等局部运算沿链式法则的组合,只能求局部的整数阶导数;分数阶或积分型导数是非局部的,被认为无法用 AD 求。

“精确却错误”的导数。以   为例,PINN 的残差  由 AD 精确给出,却已知在对流占优问题上表现不佳。作者的解释是:AD 在一点给出的  是一个不分方向的数;而数值方法对右行波应当向上游看。上游差分(迎风)、ENO/WENO、间断 Galerkin 的数值通量,都是在设计导数的近似,以尊重信息传播方向,这正是 AD 不具备的。

一长串类似的性质。文章把“方向性”看作冰山一角,列出六类 AD 不会自动保证的全局性质,见下表。

性质
失效表现
经典对策
学习型对策(文中举例)
守恒、热力学一致
长时间积分中质量、能量漂移;熵减
动能守恒、熵稳定通量
将这类通量放入损失或架构;保能量耗散的 PINN
对称与不变性
外推时破坏平移、旋转、伽利略不变
—
等变层;李对称惩罚;对称约化解形式
辛/哈密顿结构
长轨迹上能量与相空间体积漂移
辛积分器
哈密顿网络、SympNet、辛神经算子
正性、单调、有界
密度为负、激波处振荡
保正限制器、TVD、通量限制器
硬约束输出层、保界 PINN、原始–对偶对抗
频谱保真
过度耗散、相位误差
色散/耗散控制
(文中未给出学习型对策)
方向性
解沿错误方向传播、激波被抹平
迎风、ENO/WENO、数值通量
人工扩散、课程学习、时间分区、CAN-PINN

据原文 Box 1、Table 2 与正文整理,第四列为笔者归纳。

随后文章用大量篇幅逐学科列举:流体、固体与地震、电磁()、量子化学(密度正性与归一)、等离子体、分子动力学与天体力学、气候(能量与拟涡守恒)、燃烧、生物力学、材料相场、数值相对论、混沌与多尺度系统,每一类都对应一个在经典数值分析里早已解决的结构性问题。

结论。五条:精确不等于忠实;这一落差是普遍的;每种性质需要各自的修复;标准基准测试不足以检验可靠性,需要专门的结构诊断;出路是选择性混合,即 AD 只用于“对网络自身参数求导”,物理结构交给专门设计的格式、约束或架构。

二这篇文章做对了什么

把“结构”提升为设计对象。准确率不等于可靠性:一个在测试集上误差很小的代理模型,可能在长时间积分中漏能量、在外推时丢对称、在没见过的输入上给出负密度。这一点对做科学机器学习的人很有提醒意义,第四条结论建议为结构性质设计专门的诊断,也值得认真对待。

梳理清晰。六类性质各自配有“失效机理—经典方案—学习型方案”,并与具体领域对应,是一份很好的索引。末尾的 Table 2 同时指出了每种修复方案的代价(需要已知通量形式、只在采样点上约束、限制假设空间等)。

态度克制。文章明确说不是反对 AD,而是反对“无条件”地使用它,并承认结构保持会牺牲 AD 方法原有的简洁与通用。

图1 从“精确导数”到“全局物理性质”之间的几层环节:论文强调第 ① 与第 ⑤ 层的落差,但对流方程上 PINN 的困难更多出现在中间的求解方式与优化层(自制)

三 我们动手检验:对流方程上,是 AD 的错吗

文章最强的例子是线性对流方程 。我们取周期域 、、初值 ,精确解 ,做了三组对照。

实验一:同样精确的导数,全局求解

取空间 Fourier 基乘以时间 Chebyshev 基构成试探空间,用解析导数(与 AD 给出的值在机器精度内一致)构造时空残差  ,再加初值约束,用一次线性最小二乘求出全部系数。这是 PINN 的“全局残差最小化”思想去掉神经网络之后的线性版本:既没有迎风,也没有时间推进,导数完全是对称、逐点、精确的。

结果是: 时,相对  误差分别为 、、、,几乎就是机器精度。

实验二:同一个方程,时间推进

用大家熟悉的显式格式,网格 200 点、CFL 数 0.5:中心差分(FTCS)在  时误差已达 , 时 , 时溢出;一阶迎风稳定,但很耗散,误差为 7.9×10⁻³ 到 0.38。

这才是经典的“迎风”问题:它出现在逐步推进的显式格式里,对称差分对双曲方程无条件不稳定,需要迎风偏置来稳住。

实验三:真正的 PINN

4 层 × 64 神经元 tanh 网络,周期嵌入,AD 残差,Adam 训练 6000 步,每次 2 个随机种子。 时相对误差约 0.3%–1%,  时约 1.5%, 时升至约 83%,训练基本失败。我们还尝试了一个简单的因果加权(按时间分段,早期残差未下降时压低后期权重),在  时误差为 93% 和 123%,没有奏效。需要说明,这只是我们的一个简易实现,没有精细调参,不能当作对因果训练方法的评价。

图2 对流方程上,不同求解方式的相对  误差:全局最小二乘用精确导数一次求解可达 ;时间推进的迎风格式稳定但耗散;PINN 在 β=30 时失败(自制实验)

这组对照说明什么。同样用精确、对称、无方向性的导数:全局线性求解毫无问题,神经网络训练却失败。差别不在导数,而在试探空间与优化:线性问题凸、条件数可控;神经网络的损失景观非凸,而且传播速度越大,初始时刻的信息越难沿特征线传到后面,梯度越难传播,这与已有的“PINN 失效模式”研究和因果训练文献的结论一致。换言之,对流方程上 PINN 的困难,更主要的来源是优化与因果性,而不是“AD 没有迎风”。

迎风与 AD 也并不处于同一层面:迎风是对时间推进格式的稳定性处理,而 PINN 解的是全局的时空残差最小化,两类方法对“方向性”的需求并不相同。把二者直接对照,容易让人误以为只要给 AD 加上上游偏置,PINN 就能解对流问题。事实上,文章后面列举的那些修复,如人工扩散、课程学习、时间分区,恰恰在优化层面起作用,而非改变导数。

四其余需要修正或补充的地方

1. “AD 无法处理分数阶导数”说得过绝对

分数阶导数确实是非局部的,AD 不能一步求出它。但像 Caputo 导数这样的定义,可以写成对整数阶导数的加权积分,积分可用求积公式离散,而 AD 可以对整个计算过程求导。文中所指的“没有有限的链式分解”只对“把分数阶导数当作一个原子算子”成立。已有的分数阶 PINN 正是把 AD 与数值求积结合起来使用的。

2. “AD 不强制”不等于“无法强制”

守恒、对称、正性这类性质,很多并不是 AD 本身的缺陷,而是损失函数没有把它们写进去。例如把守恒律写成积分形式的损失项,或者让输出层通过 softplus 保证正性,都是在 AD 框架内完成的。文章把“逐点残差的 PINN”当作“AD”的同义词,容易模糊这一区别。

3. 论证以例证为主,缺少定量与对照

全文没有一个数值实验或定量比较来说明某一性质在 AD 型模型中被违反的程度,也没有给出哪些问题上“结构保持”真的比“多加数据、更大网络”更划算。第四条结论呼吁专门的结构诊断,但没有给出诊断方法本身。

4. 引用细节

引言把深度 Ritz 方法标为 [8]、深度 Galerkin 方法标为 [9],而参考文献表中 [8] 是 DGM、[9] 才是 Deep Ritz,二者对调;引言把 DeepONet 与 FNO 称为“物理信息神经算子(PINO)”,实际二者本身不含物理约束。83 条参考文献中约一半(31 条)在 2020–2024 年,其中含作者本人的有 8 条,约占 10%,包括 PIKAN、FEKAN 等,与主题的联系相对较弱。

5. 历史叙述略有简化

文章把迎风格式的起源追溯到 Courant–Friedrichs–Lewy 1928 年的稳定性分析。该工作给出的是 CFL 条件,迎风格式是在其后(Courant、Isaacson、Rees 1952)才明确提出,Boris 与 Book 的工作是通量修正输运,并非单纯的迎风。这类细节不影响论点,但读者引用时需要谨慎。

图3 观点文章的参考文献年代分布与自引占比(据文末参考文献表统计,自制)

五局限与展望

文章的局限:属观点性质,没有给出新方法或实验;“选择性混合”的建议比较宽泛,缺乏对何时该选哪种保结构手段的决策依据;对各修复方案的代价只给出了定性描述。

我们建议补充的内容:针对每一类性质给出一个可复现的小基准,例如守恒量漂移曲线、最小值是否为负、旋转后的误差;报告在相同计算预算下“保结构方案”与“朴素 PINN 加大网络”的比较;把“优化层面的失败”与“结构层面的失败”分开归因,以免把前者误解为后者。

值得期待的方向:一是把结构诊断做成标准化的评测项,像测试误差一样随论文一起报告;二是研究在全局时空最小二乘框架下,哪些守恒性质可以被写成线性约束而严格满足;三是探索线性试探空间(或随机特征)与神经网络之间的折中,让精确导数的优势和结构保持同时得到利用。

+延伸阅读

Chiu P H, Wong J C, Ooi C, Dao M H, Ong Y S. CAN-PINN: A fast physics-informed neural network based on coupled-automatic–numerical differentiation method. Computer Methods in Applied Mechanics and Engineering, 2022, 395: 114909.

文中介绍的“数值导数与自动微分耦合”的代表工作,用数值差分注入方向性。读它时可以与本文的实验对照:这类方法是在改变导数的算法,还是在改善优化条件。

Wang S, Sankaran S, Perdikaris P. Respecting causality for training physics-informed neural networks. Computer Methods in Applied Mechanics and Engineering, 2024, 421: 116813.

从“时间因果性”解释 PINN 在时间相关问题上失败的原因,并给出加权训练方法,是理解对流类问题困难的重要一环。

Krishnapriyan A, Gholami A, Zhe S, Kirby R, Mahoney M W. Characterizing possible failure modes in physics-informed neural networks. Advances in Neural Information Processing Systems, 2021, 34.

系统地说明 PINN 失败常常源于损失景观,而不是网络表达能力,并在对流等问题上做了对照实验,可以和本文的第三节对读。

结小结

“精确的导数可能给出不忠实的物理”,这个提醒是对的,也值得所有用 AD 做科学机器学习的人记住。但要把它落到具体问题上,需要把失败的原因分层:导数的计算、残差的构造、求解方式、优化过程、全局性质的保持,各层各有各的修复办法。在对流方程这个例子里,精确而对称的导数完全可以得到高精度的解,困难主要来自优化。把精力花在正确的层面,比泛泛地批评“AD 的局限”更有助于推进这个领域。

文献信息

Jagtap A D. The limits of exactness: On the failure of automatic differentiation in physics-informed machine learning. arXiv:2609.33078v2 [cs.LG], 30 Sep 2026.

该文发布于 arXiv,未见开放许可声明,故本文未转载原文插图,配图均为笔者自制。第三节的三组实验由笔者独立完成(周期域对流方程,参数见图注),脚本保存在笔者本地;因果加权实验只是简易实现,不应据此评价相关方法。延伸阅读中 CAN-PINN 的书目信息已核对。


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/202157