用上傅里叶变换,很快啊,AI几秒钟就能解出偏



来源:量子位

最近的气温真是忽高忽高、让人琢磨不定,但所幸天气预报都还很准确,没有和大家开玩笑。

不过,你知道这些准确的气温预测,是通过解方程算出来的吗?

不仅如此,靠解方程还能模拟飞机空气动力、疾病传播模型!

是什么方程这么厉害?我学过吗?

它就是偏微分方程(PDE),在我们的世界中无处不在。

用上傅里叶变换,很快啊,AI几秒钟就能解出偏

但在实际应用中,用计算机求解偏微分方程的难度很大,往往为了求出一个解而需要大型机器运行一个月。

并且,随着科研中遇到问题的复杂度、运算量逐渐增加,也就更需要高效快速的求解方法。

最近,来自加州理工大学的一个研究团队就用AI来解决这一难题,他们开发了一种新的神经网络,比传统的PDE求解快几个数量级,并且在理论上适用于任何偏微分方程。

用上傅里叶变换,很快啊,AI几秒钟就能解出偏

甚至连流体力学里的“老大难”:N-S方程也不在话下!

对于简单方程的求解,这种方法只需几秒就能解出答案,而传统方法需要18个小时!

训练神经网络=求解PDE

神经网络的本质是逼近一个函数,函数是从一个变量到另一个变量的映射。

比如图像识别网络,就是把输入的图像数据,与最后的分类结果之间建立映射关系。

训练神经网络其实就是尽可能逼近这个函数,这和数值求解PDE本质是一样的。

2016年,人们开始研究图像识别神经网络如何用于求解PDE,用成对的生成数据来训练神经网络,比如计算平面上不同基本形状(如三角形、四边形)物体周围的空气流速场。

用上傅里叶变换,很快啊,AI几秒钟就能解出偏

训练数据集的输入是物体几何形状和的初始条件信息,输出是相应的二维几何物体。训练过程等于建立输入和输出之间的相关性。

训练后的神经网络,可以用于预测其他情况(比如汽车形状)的流速场,它只和与传统数值求解器的结果略有不同,但求解速度更快。

然而,对于专门研究PDE的人来说,这种方法还远远不够。

因为上面的方法精度一般达不到要求,如果想要实现更高的精度,所需的数据量和网络大小将爆炸式增长,失去了原本快速求解的意义。

从函数到算子

所以,人们想到了一种新方法,求助于“算子”。算子是一种从函数到函数的映射。

函数:数→数

算子:函数→函数

比如,正弦算子(sin)把线性函数x变成三角函数sinx,微分(求导)算子(d/dx)把三次函数x³变成二次函数3x²。

2019年,来自布朗大学和中科院的学者开发了一种“深度算子网络”(DeepONet),就是用算子的方法求解PDE。

DeepONet的特殊之处在于其分叉架构,它以两个并行网络处理数据,一个是“分支”和一个“主干”。

“分支网络”学习生成算子,也就是对输入端函数进行近似,“主干网络”负责对输出端函数进行同样操作。然后,DeepONet结合两个网络的输出,得到PDE的解。

用上傅里叶变换,很快啊,AI几秒钟就能解出偏

虽然DeepONet相比PDE数值求解器速度惊人,但是它需要在训练期间进行密集计算。当必须使用大量数据训练使算子越来越精确时,可能会存在问题。

那么神经算子能加速PDE求解吗?

傅里叶变换

后来,加州理工大学与普渡大学的团队,开发了另一种新的方法——“傅里叶神经算子”(FNO)。

FNO比DeepONet在计算上要更加简单,因为DeepONet还要浅层网络去近似模拟算子,而FNO有现成的方法可用,就是傅里叶变换。

有些音乐软件显示的频谱图,其实就是一种傅里叶变换,它把连续变化声音信号转换到频率空间中。

经过傅里叶变换,原来函数之间的卷积,在频率空间中变成了更简单的乘积。

FNO的核心是傅里叶层。




上一篇:我科学家从海洋中发现能降解塑料的菌群和酶
下一篇:核电池或将研制成功?电池技术走向了终点?