Gradient-free online learning of subgrid-scale dynamics with neural emulators
本文提出了一种利用神经模拟器来逼近不可微求解器的无梯度在线学习框架,使得在无需对原始数值模型进行直接微分的情况下,能够有效地训练混沌气候系统的亚网格尺度参数化方案。
原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明
想象一下,试图用一个巨大的计算机模拟来预测天气或洋流。这些模拟就像是地球的宏大数字地图,但它们有一个问题:由于分辨率太粗糙,无法看到像单滴雨水或微小漩涡那样细微、旋转的细节。为了解决这个问题,科学家们使用了一种被称为“参数化”(parameterizations)的“捷径”。这就像是厨师制作酱汁的秘密配方;厨师知道酱汁应该是什么味道,所以他只需加入一撮调料和一点点酱汁,而不需要从头开始烹饪每一种原材料。在气候模型中,这些捷径代表了计算机无法直接观测到的那些微小且快速移动的物理过程。
长期以来,科学家们一直试图通过向计算机展示“答案解析”(即微观物理现象本该呈现的样子)并让计算机进行猜测,来教它如何改进这些捷径。这被称为“离线”(offline)学习。这就像是通过只看道路的照片来教驾驶员开车;当他们真正坐进驾驶座时,会因为没能体会到车辆行驶时的“感觉”而发生碰撞。更好的方法是“在线”(online)学习,即计算机在驾驶过程中进行学习,根据模拟系统的表现实时调整其捷径。然而,这里有一个难点:用于天气预报的真实计算机代码构建得像一个由陈旧、僵硬金属制成的黑匣子。你无法轻易窥视内部,了解一个微小的变化如何影响整个系统,这使得使用标准工具进行“在线”学习变得不可能。
本文介绍了一个聪明的变通方案:“幽灵驾驶员”或神经模拟器(neural emulator)。作者构建了一个独立的、平滑且灵活的 AI,用来模仿那个陈旧、僵硬的计算机代码的行为。这个“幽灵”易于观察和理解。他们利用这个幽灵来教导“捷径配方”如何在实时驾驶中进行调整。一旦捷径通过幽灵完成了学习,再将其换回真实的、僵硬的“汽车”中。结果显示,这种捷径的表现几乎与直接在真实汽车上进行训练的效果一样好,而无需拆解那辆车。
问题所在:黑匣子与缺失的环节
气候科学家正致力于构建更好的模型,以预测我们不断变化的星球。这些模型本质上是模拟空气和水流动的巨大数学方程。但计算机无法计算每一颗空气分子;它们必须将分子组合成大的块状。这意味着它们会错过块状之间发生的微小且混沌的旋涡。为了填补这些空白,他们使用次网格尺度(SGS)模型——这基本上是对微观旋涡行为的一种基于经验的推测。
传统上,科学家们使用“离线”方法来训练这些推测。他们运行一个极其详细的模拟(即“真相”),将其切成大块,然后训练一个机器学习模型,根据这些大块来猜测缺失的旋涡。这就像是通过观看进球集锦来学习踢足球,却从未真正跑在球场上。虽然这种方法在统计学上表现尚可,但在长时间运行模拟时,往往会导致模拟不稳定,出现崩溃或产生荒诞、不真实的极端天气。
“在线”方法才是金标准。在这里,机器学习模型在运行模拟的过程中进行学习。它能看到自己的推测如何影响未来的天气,并据此调整自身,以保持模拟的稳定性。问题在于?用于真实气候模型的计算机代码通常是用旧语言(如 Fortran)编写的,且极其复杂,是一个“不可微”(non-differentiable)的黑匣子。简单来说,你无法轻松计算模型设置中的微小变化如何通过整个系统层层传递,最终影响结果。由于无法追踪这些传递的“涟漪”(梯度),标准的在线学习变得无法实现。
解决方案:“幽灵驾驶员”
由 Hugo Frezat 领导的作者们提出了一个创造性的解决方案:神经模拟(neural emulation)。他们并没有试图强行让旧的、僵硬的代码变得灵活,而是构建了一个新的、灵活的 AI“模拟器”,该模拟器旨在模仿旧代码的行为。
把真实的气候求解器想象成一台沉重、老式的蒸汽机。它运行良好,但你无法轻易看到内部齿轮的转动,从而理解如何对其进行微调。作者构建了一台“幽灵引擎”——一个神经网络,它的行为与蒸汽机完全一致,但它是用光滑、灵活的塑料制成的。因为这个幽灵引擎是用现代 AI 工具构建的,所以你可以观察其中的齿轮,并精确计算如何进行微调。
他们使用了两步训练法来实现这一目标:
- 第一步:训练幽灵。 首先,他们教导幽灵引擎去模仿真实的蒸汽机。他们向幽灵输入来自真实引擎的数据,并不断调整幽灵,直到它能完美复现引擎的运动。
- 第二步:训练捷径。 接下来,他们利用这个“幽灵”来训练“捷径”(即 SGS 模型)。由于幽灵是灵活的,他们可以使用在线学习技术,教导捷径如何在与幽灵引擎交互的过程中表现得当。
至关重要的一点是,他们意识到如果尝试同时训练幽灵和捷径,捷径就会学会去补偿幽灵的错误。为了防止这种情况,他们将两者分开训练。此外,他们还引入了一个特殊的技巧:不再仅仅告诉捷径“让天气看起来正确”,而是告诉它“让微观旋涡看起来正确”。这防止了捷径在无意中去修正那些它不该修正的幽默引擎错误。
结果:稳定的旅程
团队在两个不同的系统上测试了这种方法。首先,他们使用了一个名为 Lorenz-96 的简化混沌系统,这类似于一个具有快慢运动部分的地球大气层玩具模型。他们发现,该方法产生的捷径几乎与“完美”的在线训练效果相当,且无需修改原始代码。
随后,他们转向了一个更复杂的测试:准地转系统(quasi-geostrophic system),该系统模拟了海洋和大气中旋转的风与流。这是一个极其困难的问题,因为微小的旋涡既可以使系统趋于平静,也可以使系统爆发为混沌状态。
在这些模拟中,他们将新方法与旧技术进行了对比:
- “离线”模型: 该模型从静态数据集中学习。它很快就失效了,随着能量不受控制地积聚,导致模拟崩溃。
- “状态损失”(State Loss)模型: 该模型试图通过观察宏观天气状态来进行学习。它极不稳定,并产生了剧烈的震荡。
- “次网格损失”(Subgrid Loss)模型(获胜者): 该模型采用了作者的两步训练法,并专注于微观旋涡。它比训练期长了 250 倍仍能保持稳定。尽管它从未见过原始、僵硬代码的内部齿轮,但它成功地还原了能量模式和稳定性,达到了与“完美”在线模型一致的效果。
这意味着什么
这篇论文表明,我们不需要为了使用现代 AI 而去重写那些庞大的、已有数十年历史的气候代码。相反,我们可以构建一个代码的“幽灵”版本来承担繁重的训练工作。这为训练更稳定、更准确的气候模型开辟了道路,使这些模型能够运行数年而不崩溃。
然而,作者也谨慎地指出,这目前还不是一剂“万灵药”。“幽灵”引擎并不完美,它存在微小的误差。在测试中,这些微小误差有时会导致宏观天气模式出现轻微偏差,尽管微观细节表现得非常精准。他们建议,未来的工作需要让“幽灵”引擎变得更好,例如教导它们关注特定的宏观特征(如风速),而不仅仅是旋转的涡度。
最终,这项研究提供了一条充满希望的路径:一种连接过去严谨物理学与未来强大学习能力的桥梁,而且无需拆解引擎。
您所在领域的论文太多了?
获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。