嵌入物理(PINN)还是基于物理(AD)?

news2024/11/13 10:26:42

文章目录

    • 1. 传统"反演问题"
      • 1.1 反演问题是什么
      • 1.2 常见反演问题
      • 1.3 传统反演问题的困境
    • 2. 深度学习优势
    • 3. AD + inversion 例子
      • 3.1 ADsurf
      • 3.2 ADseismic

在这里插入图片描述
关于PINN的内容大家可以直接google PINN (Physical-informed neural network),其主要的目的是用一个神经网络拟合物理过程,通过融入物理方程达到模型驱动的目的。但是对于很多问题,一味使用端到端的神经网络映射并不是最好的方法。如果我们已经有了非常清晰的正演表示,根据深度学习计算图的概念,梯度是可以通过自动微分(Automatic Differentiation)自动求解得到的;同时由于深度学习框架(Pytorch/tensorflow)给我们提供了大量的优化更新算法(e.g. Adam、LBFGS、SGD),我们可以将这些优化算法和更新策略(e.g. StepLR)融合到反演问题自重;其最核心的优势在于:

  1. 自动微分求解的梯度完全基于链式法则(Chain rule),所以得到的梯度是解析解,不存在任何的近似。
  2. 深度学习框架提供的便捷的GPU加速,使得反演问题变得非常高效。利用Montecarlo等方法可以非常简单地进行反演结果的不确定性估计

墙裂~推荐

[1] 基于Pytorch 自动微分框架实现的地震面波反演工具(相对于全波形反演更加简单一点点) ADsurf

[2] 基于julia和tensorflow的地震全波形反演工具ADseismic

1. 传统"反演问题"

首先,需要说明一点,以下介绍都是个人理解。

1.1 反演问题是什么

反演问题-baidubaike:反演问题是指由结果及某些一般原理(或模型)出发去确定表征问题特征的参数(或模型参数)。在工程应用中,反演问题广泛出现在地球物理、生物、医疗及建筑等领域。反演问题相对于正演问题而存在,其一般的工作程序为数据-正演模型-模型参数的估算值。因此,正演计算模型是反演问题的基础。只有得到了正演问题的数值解,才能考虑去求解反演问题

反演问题-ChatGPT:
在这里插入图片描述

1.2 常见反演问题

  1. 地震波速度反演:使用地震波数据来估计地球内部的速度结构,以了解地球内部的物质组成和构造。

  2. 医学成像反演:使用X射线、CT扫描或MRI等成像技术来创建人体内部的图像,以了解器官、骨骼和其他结构的位置和形态。

  3. 非破坏性测试反演:使用声波、电磁波或光学技术来测量物质的特定性质(如密度、电导率或折射率),以了解材料内部的组成和结构。

  4. 大气遥感反演:使用卫星或飞机上的传感器来测量大气参数(如温度、湿度和气压),以了解大气中的化学和物理过程。

  5. 电力系统反演:使用电力网络的电流和电压数据来估计网络中的未知参数(如线路阻抗和发电机容量),以了解电力系统的运行状态和稳定性。

  6. 重力反演:使用重力数据来估计地球内部的密度结构,以了解地球内部的物质分布和构造。

  7. 磁力反演:使用磁力数据来估计地球内部的磁性结构,以了解地球内部的物质分布和构造。

  8. 水文地质反演:使用地下水位、地下水流速和地下水化学数据来估计地下水储层的性质和分布,以了解地下水资源的利用和管理。

  9. 岩石物理反演:使用地震、电磁、重力和磁力数据来估计岩石的物理属性(如密度、速度、电导率和磁化率),以了解地质结构和勘探矿藏。

  10. 气象反演:使用气象数据来估计大气中的温度、湿度、气压和风速等参数,以了解天气和气候变化。

1.3 传统反演问题的困境

  1. 模型不准确:传统的反演方法通常依赖于建立一个数学模型来描述观测数据和系统属性之间的关系。然而,模型往往是简化的,忽略了一些复杂的物理现象,因此可能不准确。

  2. 数据不完整:有时,我们只能获得一部分观测数据,而且数据可能存在噪声或误差。这使得反演过程更加困难,因为我们需要在缺乏完整信息的情况下推断未知的参数。

  3. 反演过程计算复杂度高:反演问题通常涉及对大量数据进行处理和计算。传统的反演方法可能需要数小时或数天的计算时间,因此限制了反演问题的应用范围。

  4. 结果不稳定(不唯一性):有时,反演问题可能存在多个可能的解决方案,这使得结果不稳定。此外,反演问题的结果也可能对初始猜测值或正则化参数等选择敏感。

  5. 过度拟合:在某些情况下,反演过程可能会过度拟合数据,导致估计的参数值不准确。

  6. 难以处理非线性问题:许多反演问题都涉及到非线性方程组,这使得传统的线性反演方法难以处理这些问题。

2. 深度学习优势

使用自动微分技术可以带来以下一些优势,可以将其应用于传统反演方法中:

  1. 精度高:自动微分技术能够精确地计算梯度,因此可以提高反演结果的精度和准确性。

  2. 计算效率高:与传统的数值微分方法相比,自动微分技术具有更高的计算效率,因为它可以自动计算梯度,避免了重复计算和存储导数的问题。

  3. 反演过程更稳定:自动微分技术可以避免传统反演方法中存在的过度拟合问题和结果不稳定问题,从而提高反演结果的稳定性。

  4. 对非线性问题更具有鲁棒性:自动微分技术能够有效处理非线性问题,因为它可以自动计算高阶导数,并且不需要对解析函数进行求导。

  5. 易于实现和应用:自动微分技术已经在许多科学领域得到了广泛应用,并且有许多成熟的软件库可以方便地集成到反演算法中。

总的来说,使用自动微分技术可以提高反演算法的效率和精度,从而帮助我们更好地理解和解决复杂的反演问题。

3. AD + inversion 例子

3.1 ADsurf

    ADsurf 是基于Pytorch构建的地震面波反演工具,根据Hermann,2002的Fortrun程序修改得到。其通过自动微分(Automatic Differentiation)框架自动计算损失函数关于输入参数的梯度,然后利用深度学习框架中自带的优化算法如Adam等进行自动模型优化,同时利用GPU加速和矩阵计算提高了反演的效率,可以用于高效地下横波波速反演和反演结果不确定性估计。该程序已在Github中开源: https://github.com/liufeng2317/ADsurf。

3.2 ADseismic

    ADseismic是一种用于地震成像中全波形反演(FWI)的工具。它使用自动微分技术高效地计算地震波形对地下模型参数的灵敏度,然后迭代更新模型参数以使观测波形与模拟波形之间的差异最小化。FWI的目标是获得地下结构的高分辨率图像,这可以用于识别地质特征,例如断层、裂缝和油气藏等。ADseismic已被证明是一种强大的FWI工具,并已在各种地震成像研究中得到应用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/359995.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

K8S 部署 Jenkins

本文使用 bitnami 镜像部署 Jenkins 官方文档:https://github.com/bitnami/charts/tree/main/bitnami/jenkins 添加 bitnami 仓库 helm repo add bitnami https://charts.bitnami.com/bitnami自定义 values.yaml storageClass:集群的存储类&#xff…

(考研湖科大教书匠计算机网络)第五章传输层-第八节1:TCP连接管理理论部分(三次握手与四次挥手)

获取pdf:密码7281专栏目录首页:【专栏必读】考研湖科大教书匠计算机网络笔记导航此部分内容借鉴博主【小林coding】 ,其对计算机网络内容的图解可以说是深入浅出,尤其是三次握手和四次挥手这一部分,堪称全网最佳。所这…

OpenEuler安装软件方法

在树莓派上烧录好OpenEuler后上面是什么软件都没有的,像一些gcc的环境都需要自己进行配置。官方提供的安装命令是yum,但是执行yum是找不到命令的:   这个其实是因为OpenEuler中默认的安装软件使用了dnf而不是yum,所以软件的安装…

智能小车红外跟随原理

红外跟随电路红外跟随电路由电位器R17,R28;发光二极管D8,D9;红外发射管 D2,D4和红外接收管D3,D5和芯片LM324等组成,LM234用于信号的比较,并产生比较结果输出给单片机进行处理。智能小车红外跟随…

OpenGL学习日志之纹理

引言 为了使我们渲染的模型拥有更多细节,我们可以添加足够多的顶点,然后给每一个顶点都添加顶点颜色。但是这样就会产生很多额外的开销,因此就出现了纹理映射技术,我们通过纹理采样为物体的表面添加更多的细节。 纹理定义 通俗…

超25亿全球月活,字节依然没有流量

(图片来源于网络,侵删) 文|螳螂观察 作者| 搁浅虎鲸 注意看,这个男人叫梁汝波,是字节跳动的联合创始人,也是接棒张一鸣的新任CEO。 在字节跳动十周年之际,他发表了激情昂扬的演讲。“激发创…

【Datawhale图机器学习】图嵌入表示学习

图嵌入表示学习 学习视频:https://www.bilibili.com/video/BV1AP4y1r7Pz/ 如何把节点映射成D维向量? 人工特征工程:节点重要度、集群系数、Graphlet图表示学习:通过随机游走构造自监督学习任务。DeepWalk、Node2Vec矩阵分解深度…

win10字体模糊怎么办?看下面4种宝藏解决方法

最近很多用户反映电脑安装了Win10系统后出现字体发虚,模糊不清的问题,这看起来让人非常难受。win10字体模糊怎么办?来看下面4种宝藏解决方法!下面的方法适用于各类台式电脑以及笔记本电脑哦! 操作环境: 演示…

ESP开发环境搭建

一、windows中搭建 esp-idf tool(可选),下载连接如下:https://dl.espressif.com/dl/esp-idf/?idf4.4 下载安装tools后进入vscode进行插件安装(未离线下载idf工具也可以通过第二步通过插件下载安装) 1. vscode安装编译环境 ESP-IDF 需要安装一些必备工…

高并发系统设计之负载均衡

本文已收录至Github,推荐阅读 👉 Java随想录 文章目录DNS负载均衡Nginx负载均衡负载均衡算法负载均衡配置超时配置被动健康检查与主动健康检查LVS/F5Nginx当我们的应用单实例不能支撑用户请求时,此时就需要扩容,从一台服务器扩容到…

【matplotlib】可视化解决方案——如何设置轴标签的透明度和大小

概述 Axes 标签对于读者理解图表非常重要,它描述了图表中展现的数据内容。通过向 axes 对象添加标签,可以有效理解图表所表达的内容。首先来了解一下 matplotlib 是如何组织图表的。最上层是一个 Figure 实例,包含绘图中所有可见和不可见的内…

北斗导航 | 2023 PTTI会议论文 2023 ITM会议论文 2022 ION GNSS+ 会议论文下载:ION 美国导航学会

===================================================== github:https://github.com/MichaelBeechan CSDN:https://blog.csdn.net/u011344545 ===================================================== 2023 PTTI会议论文 2023 ITM会议论文 2022 ION GNSS+ 论文下载百度云链…

Teradata当年数据仓库的“一哥”为何突然退出中国市场:苦撑了3年,员工早有预料

2月15日,Teradata天睿公司官宣即将撤离中国市场。 又是一个艰难的决定,听着似乎很熟悉。Teradata为什么突然宣布结束在中国的直营?其实,回顾Teradata在中国市场的发展状况,一点也不突然。 多年前,我曾经与…

Excel表格自动转Json数据

Excel表格转JSON格式在实际工作中,我们常常使用Excel记录各种数据,但在各种应用系统传输数据却使用JSON格式,这就需要把Excel转为JSON。如果能把数据转换传输过程自动化就更完美了。Excel转JsonXX公司生产日报表为例,生产工人用Ex…

JSR303基本使用以及整合springboot统一异常处理

目录 一、前言 什么是JSR303 二、JSR303基本使用(普通使用) 1)、引入jar包 2)、实体类对需要校验的数据进行校验 3)、对前端传递过来的参数进行限制 三、JSR303基本使用(分组校验) 1)、创建分组 2)…

leaflet 根据两个坐标值,设置arc弧线和Marker(079)

第069个 点击查看专栏目录 本示例的目的是介绍演示如何在vue+leaflet中根据提供的两个点,绘制出marker,同时将两点间绘制出一条弧线。 直接复制下面的 vue+openlayers源代码,操作2分钟即可运行实现效果. 文章目录 示例效果配置方式示例源代码(共88行)安装插件相关API参考…

最全面的SpringBoot教程(六)——SpringBoot运行原理分析

前言 本文为 最全面的SpringBoot教程(六)——SpringBoot运行原理分析 相关知识,下边将对SpringBoot运行原理以及自动配置原理进行详尽的分析介绍~ 📌博主主页:小新要变强 的主页 👉Java全栈学习路线可参考…

计算机网络 物理层

1,物理层的基本概念 物理层考虑的是怎样才能在连接各种计算机的传输媒体上传输数据比特流,而不是指具体的传输媒体。现有的计算机网络中的硬件设备和传输媒体的种类非常繁多,而通信手段也有许多不同方式。物理层的作用正是要尽可能地屏蔽掉这…

【ts + webpack】贪吃蛇小游戏

目录 一、项目搭建 1.1 初始化项目 二、项目界面布局 三、完成Food类 四、完成记分牌类 五、初步完成snake类 六、创建游戏控制器类 - 键盘事件 七、GameControl - 使蛇移动 八、蛇撞墙和吃食检测 一、项目搭建 1.1 初始化项目 1.使用init命令生成package.json文件 …

日期时间控件my97初步探索

因为要写period entry 的项目,需要Report StartDate 和 Report EndDate,于是乎咨询前端同学,推荐my97 官方网站 http://www.my97.net/ 确实有点看起来古老的网站 点击下载能够下载包的资源,以及示例文件 demo示例、Api等 http…