META-PDE
未发表
摘要
本文提出了一种基于元学习的方法,该方法从一系列相关的偏微分方程中学习快速解决问题。作者使用元学习(MAML和LEAP)来识别近似PDE解的神经网络的初始化,以便在新任务中快速最小化 PDE 的残差。由此产生的meta-PDE方法可以在几个梯度步骤内找到大多数问题的解,中等精度下可以比有限元方法快一个数量级。
介绍
目前,求解PDE最常用的方法是有限元分析,解由网格上的分段多项式表示。但是当网格变得精细时,会带来非常大的计算量。
本文的主要目的是使用基于梯度的元学习来加速使用物理信息神经网络(PINN)求解偏微分方程。这使得相对于有限元分析,能以较低计算成本实现比较准确的求解。尽管这些求解器具有初始训练成本,但它们可以在必须重复求解偏微分方程的问题中节省计算成本。
PINN的缺点:
PINN主要存在两个问题。首先,PINN尚未证明可以求解所有的偏微分方程。特别是,PINN难以求解解依赖时间的偏微分方程,其解表现出混沌行为或者湍流。其次,普通的PINN比经典数值方法慢很多。
本文试图通过应用元学习来降低优化成本来缓解第二个问题,用来减少在特定问题上找到准确解决方案所需的时间。
元学习的最新工作集中在如何构建学习算法,这些算法可以通过尽可能少的额外训练来适应新任务。本文主要涉及基于梯度的元学习算法,如MAML、REPTILE和LEAP。这些算法将元学习视为一个双层优化问题:内部学习循环优化给定任务的模型参数,外部学习循环在内部循环可能遇到的任务中优化内部循环的学习过程。
在这里借助一个下图描述我理解的元学习:元学习就是学习函数的函数,就像泛函。

本文的主要贡献:
引入了一个框架,通过结合元学习和PINNs来加速PDE求解。通过使用基于梯度的元学习技术(如 LEAP 和 MAML)来训练 PINN 初始化,该初始化在针对从一组相关任务中提取的任务进行优化时将快速收敛,从而加速偏微分方程求解。
问题的分布由偏微分方程的不同参数化组成,例如不同的边界条件、初始条件、控制方程中的系数,甚至偏微分方程的问题域。这很像以前看过的一篇通过迁移学习加速PINN训练点,那一个是预训练好后,微调最后一个线性层。
在部署期间,元学习模型可用于为分布中的偏微分方程生成快速解决方案。
Meta-PDE
Meta-PDE使用基于梯度的元学习来摊销从参数化偏微分方程分布中求解问题所需的训练时间。本文主要关注两种学习方法:LEAP和MAML。这里主要介绍基于LEAP的方法。
大多数 PDE 都可以通过它们的域、边界、表示控制方程的运算符和表示边界条件的运算符来完全指定。
Meta-PDE的输入规范如下图所示:

其中,算子可以直接提供,不需要特定的参数形式。以上的输入足以计算出对损失L的估计L^^^ ,L是积分形式,L^^^ 是离散形式的损失,当神经网络足够大时,我们允许两个损失不完全相等。
基于LEAP的方法学习模型初始化θ0 对于神经网络f0,然后可以训练它来近似PDE的单个参数化的解u。每个任务都由采样器和约束运算符为边界和损失指定。然后我们可以得到一系列任务的n个损失函数Li 。
每个内部任务的初始化为θ0 ,并由内部梯度更新规则更新。 在每次内部梯度更新期间,我们都会根据 LEAP 算法更新元梯度。
学习过程如下:
首先,展开内循环训练K次,为n个任务寻找近似解。然后,在内循环训练K次后,利用元梯度更新内部循环中学习模型的初始化θ0 :

其中 d(θ0 ; Mi ) 是任务i在其流形Mi上的梯度路径的距离。 MAML 涉及略有不同的损失函数,并且还学习每个参数的步长。
在部署期间:
“前向传递”使用随机优化的 K 步计算给定 PDE 参数化的近似解。K 梯度步骤可最大程度地减少任务 L(f) 的训练损失。如果模型已使用基于 LEAP 的元偏微分方程方法进行训练,它将从元学习模型初始化 θ0 开始训练。
人们也可以在K梯度步骤之外进一步微调模型,以延长求解时间为代价实现更高的求解精度。
注:在实验中,作者将梯度的上限设成了100。
实验结果
实验设置

实验结果

META-PDE的更多相关文章
- 常用 meta 整理
<!-- 针对手持设备优化,主要是针对一些老的不识别viewport的浏览器,比如黑莓 --> <meta name="HandheldFriendly" con ...
- meta标签
参考:http://www.jb51.net/web/158860.html META标签分两大部分:HTTP标题信息(HTTP-EQUIV)和页面描述信息(NAME). 一.HTTP标题信息(HTT ...
- Django模型类Meta元数据详解
转自:https://my.oschina.net/liuyuantao/blog/751337 简介 使用内部的class Meta 定义模型的元数据,例如: from django.db impo ...
- H5 meta小结
<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1, ...
- Asp.net 后台添加CSS、JS、Meta标签
Asp.net 后台添加CSS.JS.Meta标签的写法,我这里写成函数方便以后使用.如果函数放在页面类中, Page参数也可以不要. 首先导入命名空间 using System.Web.UI.Htm ...
- 较为完整的meta
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 浏览器内核控制Meta标签说明文档【转】
背景介绍 由于众所周知的情况,国内的主流浏览器都是双核浏览器:基于Webkit内核用于常用网站的高速浏览.基于IE的内核用于兼容网银.旧版网站.以360的几款浏览器为例,我们优先通过Webkit内核渲 ...
- HTML <meta> 标签,搜索引擎
关于Mate标签的详尽解释,请查看w3school 网址为:http://www.w3school.com.cn/tags/tag_meta.asp meta标签作用 META标签是HTML标记HEA ...
- 内核控制Meta标签:让360浏览器默认使用极速模式打开网页(转)
为了让网站页面不那么臃肿,也懒的理IE了,同时兼顾更多的国内双核浏览器,在网页页头中添加了下面两行Meta控制标签. 1,网页头部加入 <meta name="renderer&quo ...
- 使用视 meta 标签来控制手机浏览器布局
移动浏览器的Fennec一样呈现在一个虚拟的"窗口"页面(视),通常比屏幕宽.所以他们不需要去挤每个页面布局到一个小窗口(这会破坏许多非移动优化的网站) .用户可以平移和缩放才能看 ...
随机推荐
- ET5.0-添加心跳功能
ET5.0 demo中添加心跳功能 一.服务端 1:添加文件夹,在Model/Module文件夹下新建文件夹 Hearbeat 2:添加心跳配置文件 SessionHeartbeatCompone ...
- 以数据驱动PCB制造革新:盘古信息引领行业领军企业数字化范式跃迁
智能车间内,机械臂正以高精度程序设定完成钻孔作业:每台设备上方的电子看板实时跳动生产数据--订单交付周期.工艺参数偏差值.设备OEE效率指标清晰可见:物料配送AGV小车穿梭于货架间,通过RFID标签自 ...
- 利用Python调用outlook自动发送邮件
↓↓↓欢迎关注我的公众号,在这里有数据相关技术经验的优质原创文章↓↓↓ 使用Python发送邮件有两种方式,一种是使用smtp调用邮箱的smtp服务器,另一种是直接调用程序直接发送邮件.而在outlo ...
- MySQL 11 怎么给字符串字段加索引?
场景引入 假设现在维护一个支持邮箱登录的系统,用户表定义如下: create table SUser(ID bigint unsigned primary key,email varchar(64), ...
- js下载绝对路径的图片
function down(){ var imgUrl = document.getElementById("img").src; var xmlhttp; xmlhttp = n ...
- C++ STL 六大组件的交互关系
简介 阅读 STL源码剖析 STL6大组件的交互关系 Container 通过 Allocator 取得数据存储空间, Algorithm 通过 Iterator 存取 Container 的内容, ...
- C++ 标准函数 。abort & typeid
简介 abort() 使程序直接报core dump错误 typeid() 判断对象是否是同一个对象的时候使用,感觉类似js里面的type什么鬼来着 比如 dynamic_cast强制类型转换指针 i ...
- iga 入门之 强解表达式和 弱解表达式
简介 摘自 流体力学数值方法 弱解几分表达式 对Galerkin几分表达式(1-76)式进行分布几分,然后将自然边界条件带入表达式中,由此所获得的几分表达式,将作为Galerkin法求解的出发点.此时 ...
- lingo 影子价格
简介 经常会 遇到 lingo 影子价格 一开始不是特别清楚今天把它弄清楚 code lingo程序 MODEL: MAX=72*x1+64*x2; x1+x2<=50; 12*x1+8*x2& ...
- 矩阵与 dp 与线性递推
矩阵的实质与线性代数有关,但用处并不大感兴趣的可以看看这里. 这里我们重点探讨矩阵乘法,\(n \times m\) 阶的矩阵 \(A\) 乘以 \(m \times k\) 阶的矩阵 \(B\) 得 ...