NeurIPS 2022

本篇工作对PINN中的物理损失进行了探究,作者认为L2损失并不总是适用于训练PINN。并从PDE解的稳定性角度给出了理论性的说明。读了这篇文章,感觉自己的毕业论文做的十分浅显。顶会文章的质量很不错,有理论支持,实验工作量也丰富。

本文的视角从PDE中稳定性的概念入手,来研究当损失接近0时学习解的渐近行为。证明了对于一般的Lp损失,只有p足够大时,一类宽的HJB方程才是稳定的。因此,使用L2损失并不适合于这类方程,L∞损失才是更合适的选择。作者提出了一种类似对抗训练精神的方法,来解决发现的问题。本文主要考虑高阶HJB方程。

在目前PINN的问题中,当L2损失等于0时,学习到的解就等价于精确解,这是自然的。但是,目前在实践中更常见的,具有小的但是非零损失的学习解的质量,目前仍然没有任何的近似保证。因此作者关心一个基础的问题:能否保证具有较小的物理信息损失的学习解始终对应于精确解的良好近似器?所以作者引出了稳定性,从稳定性的角度分析这个问题。此前的工作在面对PINN训练失败时,将目光集中到复杂的优化域和损失项之间的不可比较性。

文章在PINN的框架下分析PDE的稳定性,稳定性表征当物理信息损失接近0时,学习解和精确解之间的渐近距离。如果PDE在某些损失函数下不稳定,那我们可能就无法通过最小化损失来获得良好的近似解。本文证明了这类方程需要Lp损失中p足够大。L2损失并不适合于这类方程,因为所学习到的解会任意的远离精确解。稳定性从形式上表征了当一个微小扰动改变算子、初始条件、边界条件时,PDE解的行为。方程是稳定的,如果扰动PDE的解在扰动接近零是收敛到精确解。

本文针对的高阶HJB方程,理论结果表明L∞会是更好的选择。受到这一点的启发,作者提出了一种新的算法用来训练PINN,采用最小最大优化进程来最小化L∞损失。具体的方法将在后面介绍。

由于神经网络的能力或者优化过程中的随机性,损失项并不会完全收敛到0。所以我们要考虑具有小损失的解是否是精确解的一个好的近似?这个问题等价于PDE中稳定性的概念。我们了解到:一些高阶HJB方程是稳定的,但不是L2稳定的,也就是L2物理信息损失将会失败于去寻找解。理论结果如下:

更重要的是,理论结果表明,物理信息损失的设计也发挥着重要的作用对于使用PINN求解PDE。

使用对抗训练求解HJB方程

目标函数是:

这个目标项可以看作一个最小最大问题,内循环是寻找损失最大的数据点,分别在域内和边界上,外循环上是最小化问题,寻找u使得总损失最小。

在每次循环中,模型参数和数据点都会更新。为了获得等效的L∞损失(也就是令p足够大),作者使用最大损失的方法。方法如下:

所提出方法的伪代码如下:

通过内循环找到损失最大的点,然后再利用任何的一阶方法进行优化(这就等效于L无穷范数的损失)。

实验结果如下,提升的幅度还是很大的。

[*]Is L2 Physics-Informed Loss Always Suitable for Training Physics-Informed Neural Network?的更多相关文章

  1. A Deep Neural Network’s Loss Surface Contains Every Low-dimensional Pattern

    目录 概 相关工作 主要内容 引理1 定理1 定理2 A Deep Neural Network's Loss Surface Contains Every Low-dimensional Patte ...

  2. [C4] Andrew Ng - Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization

    About this Course This course will teach you the "magic" of getting deep learning to work ...

  3. 《MATLAB Deep Learning:With Machine Learning,Neural Networks and Artificial Intelligence》选记

    一.Training of a Single-Layer Neural Network 1 Delta Rule Consider a single-layer neural network, as ...

  4. TFlearn——(1)notMNIST

    1, 数据集简介    notMNIST, 看名字就知道,跟MNIST脱不了干系,其实就是升级版的MNIST,含有 A-J 10个类别的艺术印刷体字符,字符的形状各异,噪声更多,难度比 MNIST 要 ...

  5. A great tutorial with Jupyter notebook for ML beginners

    An end to end implementation of a Machine Learning pipeline SPANDAN MADAN Visual Computing Group, Ha ...

  6. tflearn 中文汉字识别模型试验汇总

    def get_model(width, height, classes=40): # TODO, modify model # Building 'VGG Network' network = in ...

  7. CNN 文本分类模型优化经验——关键点:加卷积层和FC可以提高精度,在FC前加BN可以加快收敛,有时候可以提高精度,FC后加dropout,conv_1d的input维度加大可以提高精度,但是到256会出现OOM。

    network = tflearn.input_data(shape=[None, max_len], name='input') network = tflearn.embedding(networ ...

  8. 神经网络的结构汇总——tflearn

    一些先进的网络结构: # https://github.com/tflearn/tflearn/blob/master/examples/images/highway_dnn.py # -*- cod ...

  9. tflearn中一些CNN RNN的例子

    lstm.py # -*- coding: utf-8 -*- """ Simple example using LSTM recurrent neural networ ...

  10. 使用神经网络-垃圾邮件检测-LSTM或者CNN(一维卷积)效果都不错【代码有问题,pass】

    from sklearn.feature_extraction.text import CountVectorizer import os from sklearn.naive_bayes impor ...

随机推荐

  1. mysql explain 查看sql语句执行计划概述

    mysql explain 查看sql语句执行计划概述 id:选择标识符select_type:表示查询的类型.table:输出结果集的表partitions:匹配的分区type:表示表的连接类型po ...

  2. react 01基础 样式

    一,react 特点 1. 声明式设计 2.虚拟dom 3.jsx 4.组件化,模块化 5.单向数据流 二,脚手架 Create React App npm i -g create-react-app ...

  3. 【问题】Windows(CR LF)和Unix(LF)

    问题描述: 在获取一张JPG图片的信息数组后, 再将这些信息存入新建JPG文件, 却发现新建图片异常. image.jpg为原图 image1.jpg为新建图片 原因: 在Windows环境下, 使用 ...

  4. 如何删除Word文档中的空白页

    需求 平常我们写 Office 文档的时候,经常会不小心多加几页空白,那么如何删除 word 文档中的空白页呢? 小编结合网友提供的办法和亲身测试的操作经验,给大家提供几个可行的方案. 原文:如何删除 ...

  5. Redis系列目录

    第一章 Redis系列之-redis初识 第二章 Redis系列之-常用命令及API的使用 第三章 Redis系列之-高级用法 第四章 Redis系列之-持久化 第五章 Redis系列之-使用常见问题 ...

  6. 一些excel随笔,瞎记一下

    1 使用sumif函数的时候,如果对于一列0求值返回的时候,显示一个英文中的破折号例 "-" ,是数字格式可能设置为了会计专用,改回数值就行,要逗号的话点其他格式里面的数值,找一下 ...

  7. 【Java】Object

    Object转Map import com.alibaba.fastjson.JSON; import com.runsky.utils.JsonUtils; String objectToJson ...

  8. 微服务笔记之Eureka03(服务注册分析)

    服务注册接口源码分析: com.netflix.eureka.resources.ApplicationResource#addInstance public Response addInstance ...

  9. react项目--redux封装

    index.ts 1 const store = { 2 state: { 3 num: 20, 4 }, 5 actions: { 6 // 放同步的代码 7 add1(newState: { nu ...

  10. clear

    BFC虽然可以达到外部背景由内部内容撑开的效果,但是存在副作用 所以由clear将affter受浮动效果解除,来解决以上问题