本文来自微信公众号:中国工程院院刊(ID:CAE-Engineering),作者:Dana Mackenzie,题图来自:视觉中国
将卵石投入流动的水流,可能不会大幅度改变流型。但是若将卵石扔到其他位置,则可能会发生很大变化。谁能进行预测呢?
答案:神经网络可以。美国帕萨迪纳加利福尼亚理工学院(California Institute of Technology, Caltech)的计算机科学家和数学家,通过展示神经网络可自学如何比以往任何一种计算机程序更快、更准确解决一大类流体流动问题,为人工智能(AI)开辟了新的舞台。
加利福尼亚理工学院的计算与数学科学教授、科学人工智能(AI4Science)联合负责人Animashree Anandkumar表示:“当我们的小组两年前聚在一起时,我们讨论了人工智颠覆哪些科学领域的时机已经成熟。我们认为,如果能找出一个强大的框架来解算偏微分方程,那么我们就能产生广泛的影响。”
他们的首个目标是二维纳维-斯托克斯方程(Navier-Stokes equation),该方程描述了无限薄的一层水的运动情况(图1)。他们的神经网络(他们称之为“傅里叶神经算子”)在解决这类问题时,其性能(速度提高了400倍,精度提高了30%)大大优于以前的任何微分方程解算器。
偏微分方程(PDE)是牛顿运动定律自然而然产生的一类方程。为此,偏微分方程是科学的基础,解算这些方程取得的任何重大进展都会产生广泛影响。Anandkumar表示:“我们正与各行业以及学术界和国家实验室的众多团队进行讨论。我们已在进行三维流体流动实验。”
Anandkumar表示,一个很好的应用案例是核聚变建模方程式。她补充道:“另一个应用案例是材料设计,尤其是塑性与弹性材料设计。在此领域中,团队成员,即力学与材料科学教授Kaushik Bhattacharya具有丰富的经验。”
在第二次世界大战期间,计算机应运而生的部分原因是使用微分方程来预测炮弹运动。从那时起,计算机一直用于解算微分方程,具有一定的准确性和成功率。但是以往的方法,无论涉及传统计算机编程或人工智能,始终是一次只能处理一个方程。例如,计算机可弄清楚扔到一个位置的一颗卵石如何影响水流动。然后,计算机就可学习扔到其他位置的卵石如何改变水流动。但计算机并不会进一步理解扔到任何位置的卵石如何改变水流动。这是加利福尼亚理工学院傅里叶神经算子背后的宏伟目标。
当然,以往的方法之所以无法实现一次处理多个方程是有原因的。神经网络擅长学习数学家所称的有限维空间之间的关联。例如,击败人类最强围棋选手的谷歌公司的人工智能程序AlphaGo,学习了围棋位置(尽管为天文数字,但是数量有限)与围棋落棋之间的函数关系。相比之下,傅里叶神经算子将流体的初始速度场作为输入,并在一定时间后产生速度场输出。这两个速度场都存在于无限维空间中,这只是一种数学表达方式,即存在无限多种方式将一颗卵石扔到水流中。
加利福尼亚理工学院的团队通过用传统方法解算的数千个纳维-斯托克斯方程实例来训练傅里叶神经算子。然后,通过“代价函数”(cost function)对该网络进行评估,衡量了预测距正确解算有多远,并且以逐渐改进其预测的方式发展。由于该网络始于一组精选的输入与输出,因此其被称为“监督学习”(supervised learning)。谷歌公司的AlphaGo原始版本结合了“监督学习”和“无监督学习”(尽管后来的版本仅采用“无监督学习”)。用于图像处理的其他神经网络程序通常采用“监督学习”。
但无论你拥有多少训练数据,你都可能无法探索无限维空间中最微小的部分。你无法尝试将卵石放入水流中的所有位置。此外,若无任何事先假设,则不能保证你的网络能正确预测将卵石扔到新位置时会发生什么事情。
为此以及出于其他原因,另一名科学人工智能团队成员及计算与数学科学教授Andrew Stuart表示:“我们想采用神经网络的相关部分,并将其与对数学方面特定领域的理解相结合。”
特别是,Stuart知道线性偏微分方程(最简单的偏微分方程类型)可以通过著名的格林函数方法来解算,这是用于解算这些常见问题和偏微分方程的一种策略,而其他方法可能无法解决这些问。基本上,它为方程的适当解提供了一个模板。该模板可在有限维空间中进行近似求解,因此,可将问题从无限维减少到有限维。
纳维-斯托克斯方程为非线性方程,因此,其尚无此类模板。但是,若纳维-斯托克斯方程存在类似于格林函数的东西,即非线性方程(不过其仍存在有限维模板),那么神经网络应该能够对其进行学习。虽然无法保证这样做会奏效,但Stuart称其为“见多识广的冒险”。他表示,经验一次又一次地表明,神经网络非常适合学习有限维空间中的非线性映射。
美国加利福尼亚大学圣克鲁兹分校的应用数学系助理教授Daniele Venturi表示,学习无限维空间之间的非线性算子是计算科学领域的“圣杯”(holy grail)。Venturi的研究涉及微分方程和无限维函数空间,他表示不相信加利福尼亚理工学院团队已经做到了这一点。他说:“通常,在有限数量的输入-输出对基础上学习无限维空间之间的非线性映射是不可能的,但能够对其进行近似求解。实际上,主要问题在于这种近似求解的计算成本及其准确性和效率。他们展示的结果确实令人印象深刻。”
除前所未有的速度和准确性外,加利福尼亚理工学院的方法还具有其他显著特性。通过设计,该方法甚至可在没有初始数据的位置上预测流体流动,并预测之前未见过的扰动结果。该程序还确认了纳维-斯托克斯方程的解的突现行为:随着时间推移,它们将长波长能量重新分配给短波长。这种现象称为“能量级联” (energy cascade),其由Andrei Kolmogorov在20世纪40 年代提出,用于解释流体的湍流现象。
傅里叶神经算子的未来研究前沿是三维流体流动,其中湍流和混沌为主要障碍。神经网络能驯服混沌吗?Anandkumar表示:“我们知道,混沌意味着无法精确预测长时间内的流体运动。但我们也从理论中知道存在统计不变量,如不变测度和稳定吸引子。”若神经网络能够了解吸引子的位置,则即使不可能进行精确的确定性预测,也有可能做出更好的概率预测。Anandkumar指出,神经网络可控制混沌系统,因此,不会朝着不受欢迎的吸引状态发展。她表示:“例如,在核聚变中,控制破坏(如等离子体失稳)的能力变得非常重要。”
改编原文:
Dana Mackenzie.Pushing Mathematical Limits, a Neural Network Learns Fluid Flow[J].Engineering,2021,7(5):550-551.
本文来自微信公众号:中国工程院院刊(ID:CAE-Engineering),作者:Dana Mackenzie