神经网络原理(深度神经网络为何在破解数学难题上独具天赋?)

神经网络原理(深度神经网络为何在破解数学难题上独具天赋?)

神经网络原理(为什么深度神经网络在解决数学问题上独树一帜?)

基于深度神经网络的两种新方法可以成功求解偏微分方程,并能以更快、更简单的方式对复杂系统建模。有趣的是,和大多数神经网络一样,我们也猜不出它们为什么这么优秀。

研究人员致力于使用偏微分方程(PDE)来描述涉及许多独立变量的复杂现象,例如模拟一架客机在空中飞行,模拟地震波,模拟疾病在人群中传播的过程,模拟基本力与粒子的相互作用。

一直以来,求解复杂问题的偏微分方程都是世界级难题。CPU得到相对复杂的偏微分方程往往需要上百万个小时,而且问题越复杂,用偏微分方程求解就越困难。无论是设计更好的火箭发动机,还是模拟气候变化,我们都需要更有效的方法来解决这些问题。

最近,研究人员在求解偏微分方程方面取得了令人兴奋的新进展。他们建立了一个新的人工神经网络,可以更快地求解偏微分方程。经过训练后,新的神经网络不仅可以求解单个偏微分方程,还可以求解整个偏微分方程族,无需进一步训练。

瑞士苏黎世联邦理工学院的数学家Siddhartha Mishra表示,传统的神经网络通常会将数据从一个有限维空映射或转换到另一个有限维空,但新的深度网络可以在无限维空和无限维空之间进行映射。

毫无疑问,这样的技术将加速许多涉及偏微分方程的模型。作为开发团队的一员,Anima Anandkumar说,“最终,我们的目标是取代传统的求解器,它非常慢而且昂贵。」

当然,新方法不仅仅是加速。只有数据但不知道用哪个偏微分方程建模时,训练数据然后使用新的神经网络是唯一的方法。

神经网络接纳解决方案

偏微分方程之所以有用,而且极难求解,是因为它的复杂性。这使他们能够模拟各种现象。比如建模者想知道空中任意一点,不同时刻流体的速度和压力,就可能使用纳维尔-斯托克斯偏微分方程进行建模。通过求解纳维尔-斯托克斯方程,将得到一个描述系统内容的公式。如果对初始和边界条件有足够的了解,比如t = 0时刻的流场值,就可以用数学工具来分析偏微分方程。

然而,偏微分方程往往如此复杂,以至于没有一般的解析解,即使对于最一般形式的纳维尔-斯托克斯方程:数学家也没有证明是否存在唯一解,更不用说通过分析实际找到它们了。

即使在超级计算机上,用数值方法求解复杂的偏微分方程也可能需要几个月的时间。而且,每次我们改变初始或边界条件或所研究系统的几何形状,都必须重新开始。同样,使用的增量越小(网格越细),模型的分辨率越高,数值方法花费的时间也越长。

2016年,研究人员试图应用图像识别常用的深度神经网络来求解偏微分方程。首先,研究人员生成了用于训练深度网络的图像数据。输入关于物体几何形状和流体初始条件的2D图像编码信息,并输出相应速度场的2D快照。

有了这些数据,研究人员开始训练他们的神经网络,以学习这些输入和输出之间的相关性。训练主要是先比较输出和期望输出的差异,然后通过算法调整神经元的权重,使生成输出和期望输出的差异最小。重复此过程,直到输出误差在可接受的范围内。

让神经网络学习如何解偏微分方程是令人兴奋的,但仍然有很大的缺点。一旦在某个网格尺寸上进行训练,神经网络就变得非常特定于这个分辨率。深度网络已经学会预测将数据从一个有限维空映射到另一个空的函数。但在求解不同分辨率的偏微分方程时,如果想对流场有更细致的了解,或者改变初始和边界条件,就需要重新开始训练,学会预测新的函数。

DeepONet

现在,深度神经网络不仅可以学习预测函数,还可以学习将函数映射到函数的“算子”,而且似乎不存在神经网络和其他计算机算法从数据中学习的维数问题。例如,如果要将神经网络的错误率从10%降低到1%,所需的训练数据量或网络规模可能会呈指数级增长,导致任务失败。

在此之前,研究人员必须弄清楚如何让神经网络学习算子来求解偏微分方程。布朗大学的George Karniadakis说学习算子是从无限维空到无限维空。运算符作用于一个函数,然后将其转换为另一个函数。比如一个算子把一个函数转换成它的导数(比如x的正弦转换成x的余弦),它的输入和输出是无限维的。

乔治·卡尔尼亚达基斯.

学习算子的深度网络可用于一次性求解整个偏微分方程族,并对一系列初始和边界条件以及物理参数建模相同的现象。这样的偏微分方程族是输入端的一组函数,偏微分方程的相应解由输出端的函数表示。

1995年的一项研究表明,浅网络可以看作是算子。因为涉及到神经网络,所以这类算子也被称为神经算子,即实际算子的近似。2019年10月,Karniadakis和他的同事将这一理论扩展到深度神经网络,并提出了“DeepONet”,这是一种可以学习这种算子并一次性求解多个偏微分方程的深度神经网络架构。

论文链接:http://arxiv-export-lb.library.cornell.edu/pdf/1910.03193

DeepONet的独特之处在于其分叉架构,它在两个并行网络(“分支”和“主干”)中处理数据。前者在输入端学习估计很多函数,后者在输出端学习估计函数。然后,DeepONet将两个网络的输出结合起来,学习偏微分方程所需的算子。训练DeepONet的过程包括重复显示由数字求解器生成的一族偏微分方程的输入和输出数据,并在每次迭代中调整分支网络和主干网络的权重,直到整个网络的误差可以接受。

因此,一旦DeepONet被训练,它将学会预测操作符。它可以在输入端获得表示偏微分方程的数据,然后在输出端将其转换为偏微分方程解的数据。假设提供了100个代表初始/边界条件和物理参数的样本,以及训练数据中没有包括的所需流场位置,DeepONet可以在不到一秒的时间内提供流场。

DeepONet架构图。

然而,即使DeepONet像数值求解器一样快,它仍然必须在训练期间执行密集的计算。当必须使用大量数据来训练深度网络以使神经算子越来越准确时,这可能会成为一个问题。

那么,神经算子能更快吗?

傅立叶算子

去年,加州理工学院的Anima Anandkumar和普渡大学的Kamyar Azizzadenesheli共同建立了一个名为傅立叶神经算子(FNO)的深度神经网络。

论文链接:https://arxiv.org/pdf/2010.08895v2.pdf

研究人员声称,新的架构使网络速度更快,可以将函数从无限维空映射到无限维空,并在偏微分方程上测试神经网络。

阿尼玛·阿南德·库马尔.

解决方案的核心是傅立叶层:在训练数据通过神经网络的每一层之前,对其进行傅立叶变换。然后,这一层通过线性运算对数据进行处理,再进行傅立叶逆变换,切换回原来的格式。这个过程显然比DeepONet的计算更直接,偏微分方程可以通过与其他函数卷积求解。在傅立叶领域,卷积相当于简单的乘法。傅里叶变换后的数据通过一层训练好权值的人工神经元传输,然后进行傅里叶逆变换。最后,FNO学会了整个偏微分方程族的算子,并将函数映射成函数。

傅立叶算子架构图。

O FN深度神经网络也有极快的运行速度。例如,在一个需要3万次模拟(包括纳维尔-斯托克斯方程)的求解过程中,FNO每次模拟用时不到1秒;而DeepONet需要2.5秒;传统的求解程序需要大约18个小时。

摘要

显然,DeepONet和FNO方法都将超越传统的求解器。两个团队的方法都是成功的,但像大多数黑盒神经网络一样,尚不清楚它们为什么如此优秀,以及它们是否在所有情况下都如此优秀。

经过一年的努力,今年2月,研究人员发表了一份长达112页的DeepONet架构的数学分析。研究证明这种方法真的是通用的,不仅仅是偏微分方程,DeepONet可以将输入端的任意函数集映射到输出端的任意函数集。

对FNO的数学分析还没有完成。但是对于不确定偏微分方程这种现象,学习神经算子可能是对这类系统建模的唯一途径。比如,对于交通问题,几乎不可能编制出准确捕捉交通动态的偏微分方程,但是有海量的数据可以学习。

以上就是由优质生活领域创作者 嘉文社百科网小编 整理编辑的,如果觉得有帮助欢迎收藏转发~

相关推荐

我的未来不是梦串词(我的未来不是梦串词报幕词)

   今天和大家分享的问题是我的未来不是梦串(我的未来不是梦串)。以下是边肖对这个问...

韩国服饰搭配(6位韩国欧巴教你如何打造)

韩服搭配(6个韩国欧巴教你怎么搭)大家经常抱怨边肖贴的图都是欧美街头拍的,说如果换成...

「干货」海东八县是哪八个县

海东八县是湟源县、湟中县、平安县、乐都县及互助土族自治县、民和回族土族自治县、化隆回...

粽子的煮法(粽子的煮法和时间做法)

今天跟大家分享一个关于粽子烹饪方法的问题(粽子的烹饪方法和时间方法)。以下是这个问题...

前言英文(前言的英文是什么)

今天和大家分享一下序言的英语知识,解释一下序言的英语是什么。如果你碰巧解决了你现在面...

白腊金(白蜡金女命)

   今天和大家分享一下关于白蜡树(白蜡树)的问题。以下是边肖对这个问题的总结。让我...

稽核是什么意思(稽核是什么意思拼音)

   今天我想和大家分享一个关于审计是什么意思的问题。以下是边肖对这个问题的总结。让...

「经验分享」行政单位是什么意思

行政单位是进行国家行政管理、组织经济建设和文化建设、维护社会公共秩序的单位,主要包括...