当前位置:首页 > 每日看点 > 正文内容

为什么神经网络可以解偏微分方程,是什么原理?

卡卷网1年前 (2024-11-20)每日看点241

题主一直比较关心神经网络在其他科学领域的应用,比如数学、物理学还有生物学,比如AlphaFold。本次带来的这篇文章傅里叶神经网络算子解偏微分方程就是一个很有意思的方向,其实我自己去年在给美国一个客户做兼职预测数字货币期权价格的时候就用到过这个算法,因为期权领域的Black-Scholes Model也是一个偏微分方程。在想这周写个什么内容时,突然想到这篇文章,当然我不是物理学专业,其实只需要知道怎么用即可,闲话不多说,下面介绍这篇文章吧。

文章地址:Fourier Neural Operator for Parametric Partial Differential Equations

源码地址:github.com/neuraloperat

作者博客:zongyi-li.github.io/blo

youtube讲解:youtube.com/watch?

一作是来自加州理工的Zongyi Li博士,获得过英伟达 2023-2024 研究生奖学金,其导师是Anima Anandkumar,本文的通讯作者,同时也是英伟达的机器学习总监。

为什么神经网络可以解偏微分方程,是什么原理?  第1张

为什么神经网络可以解偏微分方程,是什么原理?  第2张

图1 zero-shot超分辨率评测:Navier-Stokes 方程,粘度 ν = 1e−4; 上面是groud-truth,下面是预测值; 在 64 × 64 × 20 数据集上训练; 在 256 × 256 × 80 上评估

直接上效果,zero-shot超分辨率预测,准确率非常高,说明其FNO无惧分辨率变化-resolution-invariant,它实现了 Burgers 方程的错误率降低 30%,达西流Darcy Flow 降低 60%,Navier Stokes 降低 30%。同时FNO 深度神经网络拥有极快的运行速度。例如,在一个需要进行 30000 次仿真(包括 Navier-Stokes 方程)的求解过程中,对于每个仿真,FNO 花费了不到一秒的时间;而 DeepONet 耗时 2.5 秒;传统的求解器则大概需要花费 18 个小时。

传统的求解器vs 数据驱动的解决方案

有限元法 (FEM) 和有限差分法 (FDM) 等传统求解器通过将空间离散化来求解方程。 因此,需要在分辨率上进行了权衡:粗网格速度快但精度较低; 精细网格准确但速度慢。但复杂的 PDE 系统通常需要非常精细的离散化,因此对于传统求解器来说非常具有挑战性和耗时。 另一方面,数据驱动的方法可以直接从数据中学习方程族的映射mapping。 因此,基于数据驱动学习的方法可以比传统求解器快几个数量级。

算子学习:

神经网络其实就是从有限的输入输出对中学习一种拓展到无限空间的非线性的映射关系,设 为什么神经网络可以解偏微分方程,是什么原理?  第3张 是一个有界的开集, 为什么神经网络可以解偏微分方程,是什么原理?  第3张为什么神经网络可以解偏微分方程,是什么原理?  第3张是函数的可分 Banach 空间,分别在 为什么神经网络可以解偏微分方程,是什么原理?  第3张为什么神经网络可以解偏微分方程,是什么原理?  第3张 中取值。 此外,设 G† : A → U 是一个(通常)非线性映射。假设我们有观测值 为什么神经网络可以解偏微分方程,是什么原理?  第3张 , 旨在通过构建参数映射,通过选择 θ† ∈ Θ 对于某些有限维参数空间 Θ 来构建 G† 的近似值 使得 G(·, θ†) = Gθ† ≈ G†。

为什么神经网络可以解偏微分方程,是什么原理?  第3张或等效地 为什么神经网络可以解偏微分方程,是什么原理?  第3张为什么神经网络可以解偏微分方程,是什么原理?  第3张

这是无限维学习的自然框架,因为可以定义成本函数 C : U × U → R 并寻求问题的最小值

为什么神经网络可以解偏微分方程,是什么原理?  第3张

对于上面的图可知,算子学习可以看作是图像到图像的问题。 傅里叶层可以看作是卷积层的替代品。

主要解决解决cnn无法实现的resolution-invariant

傅里叶算子

为什么神经网络可以解偏微分方程,是什么原理?  第13张

图2 傅里叶算子FNO的架构

让v 是输入向量,u是输出向量。 一个标准的深度神经网络可以写成以下形式:

为什么神经网络可以解偏微分方程,是什么原理?  第14张

K是线性层或卷积层,σ 是 ReLU 等激活函数。

映射 为什么神经网络可以解偏微分方程,是什么原理?  第3张 可以参数化为

为什么神经网络可以解偏微分方程,是什么原理?  第16张

其中 κ 是核函数,W 是偏置项,对于傅立叶神经算子,K 作为卷积并通过傅里叶变换实现。

如图2所示从输入 a 开始。

(1)傅里叶算子结构:

为通过神经网络 P 提升到更高维度的通道空间。 然后应用四层傅里叶积分算子和激活函数。 通过神经网络Q投影回目标维度,输出u。

(2)傅立叶层:

从输入 v 开始。在顶部:应用傅立叶变换 F,对较低的傅立叶模式进行线性变换 R 并滤除较高的模式,然后应用逆傅立叶变换 为什么神经网络可以解偏微分方程,是什么原理?  第3张 。 在底部:应用局部线性变换 W 。最后一起过一个激活函数。

FFT变换 为什么神经网络可以解偏微分方程,是什么原理?  第3张 和逆变换 为什么神经网络可以解偏微分方程,是什么原理?  第3张 可以定义为:

为什么神经网络可以解偏微分方程,是什么原理?  第20张

为什么神经网络可以解偏微分方程,是什么原理?  第21张

CNN滤波和傅里叶滤波的区别

卷积神经网络中的过滤器通常是局部的。 它们很适合捕捉局部图案,例如边缘和形状。 傅立叶滤波器是全局正弦函数。 它们更适合表示连续函数。

高频模式和非周期边界

傅立叶层本身会失去较高频率的模式,并且仅适用于周期性边界条件。 然而,傅里叶神经算子作为一个整体没有这些限制。 傅里叶变换-逆变换结构有助于恢复更高的傅立叶模式。另外偏置项 W 有助于恢复非周期边界。

分辨率不变性

傅里叶层是离散化不变的,因为它们可以从以任意方式离散化的函数中学习和评估。 由于参数是直接在傅里叶空间中学习的,因此在物理空间中求解函数简单地相当于在 为什么神经网络可以解偏微分方程,是什么原理?  第3张 的基础上进行投影,而 为什么神经网络可以解偏微分方程,是什么原理?  第3张为什么神经网络可以解偏微分方程,是什么原理?  第3张 上随处可见,这使FNO能够实现zero-shot超分辨率预估。

简单看一下GitHub中的傅里叶层的代码吧,整体实现不是很难看懂

为什么神经网络可以解偏微分方程,是什么原理?  第25张

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2024/11/1043.html

分享给朋友:

相关文章

创业容易吗?

创业容易吗?创建企业不一定是困难或令人生畏的。它可以从一个简单但有力的想法开始,比如小强意识到,如果洗手液能杀死真菌,尤其是拳击台上的真菌,就会更加有用。创业确实需要奉献精神、努力工作和仔细规划——这是没有办法的。虽然这本身可能并不容易,但...

下班后可以做点什么副业赚钱呢?

下班后可以做点什么副业赚钱呢?

首先说明一下,我分享的任务不需要交钱,也不需要入群,只需要你去平台学习就可以。如果有任何让你交钱,进群的任务,请警惕被割韭菜。今天给大家分享7大赚钱副业,新手小白0粉丝0门槛0技术都可以去做,不说大富大贵,但是赚个零花钱还是可以。如果你已经...

你每天用来涨知识的手机应用程序有哪些?

你每天用来涨知识的手机应用程序有哪些?

经过深度使用和测评,从100个APP中选出的这35个超实用的app,每一个都是最硬核最有料的涨知识神器!每天打开看看,能让你提神醒脑,眼界大开,成为朋友聚会上的话题王者!双击屏幕取走哦~先放上全部APP目录,有新闻资讯类、英语学习类、读书类...

无意中发现技术主管写的代码,大家帮忙看看什么水平?

无意中发现技术主管写的代码,大家帮忙看看什么水平?

虽然很多答主用了诸如“典范级”、“心旷神怡” 的形容, 赞美这段代码, 但这里, 出于技术讨论的动机, 我说说不同看法.栈, 如果善于利用栈来处理树结构, 那么可以写出更简洁的代码, 根本不需要 recuresiveFn 这种方法. 泛型,...

想学习Linux下的ELF文件有什么好书推荐吗?

想学习Linux下的ELF文件有什么好书推荐吗?

大家好,这里是物联网心球。 今天我们来聊聊ELF文件,了解一下Linux如何创建进程以及ELF文件如何转变成Linux进程?1.什么是ELF文件? ELF(Executable and Linkable Format)文...

鸿蒙系统到底是不是安卓系统?

你好,是的。接下来我给不懂技术的人简单的说一下哄蒙系统的来龙去脉。首先你要知道什么是开源。‌‌开源(Open Source)全称为开放源代码‌,意味着任何人都可以获取和使用软件的源代码,并在遵守版权协议的前提下进行修改和再发布。‌12开源软...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。