【学习笔记】Day 1

一、进度概述

1、配置相关环境------注:暂未完成,还有部分依赖没有补充完整

2、试运行

3、《地震数据全波形反演的深度学习方法》PPT知识梳理方法地震数据全波形反演的深度学

二、详情

1、配置相关环境

深度学习环境配置参考文章如下:

(1)CUDA,cuDNN安装及环境配置:(优先看这两个,其他作为补充辅助)window11系统CUDA、cuDNN 安装以及环境变量配置_cuda环境变量-CSDN博客
深度学习 | CUDA环境配置教程 (zhihu.com)

(2) Python及PyCharm安装及环境配置:
Python安装教程(新手)_python安装不成功-CSDN博客
pycharm安装教程,超详细-CSDN博客

(3) PyTorch安装:
【超详细教程】2024最新Pytorch安装教程(同时讲解安装CPU和GPU版本)-CSDN博客
2023最新pytorch安装(超详细版)-CSDN博客

其中涉及Anaconda的安装可参考以下文章:
最新Anaconda3的安装配置及使用教程(详细过程)-CSDN博客

获取PyTorch:Start Locally | PyTorch

在最后的PyTorch安装过程中,出现了以下问题:

输入 "pip list" 查询,发现torch是已经安装成功了的

但运行检测代码会出现以下报错

经过排查,发现是因为缺少了一个运行库:即windows程序员在visual studio新增了对openmp的支持,但是没把这个dll推送给所有用户,需要手动补充。可以通过安装vs能得到完整运行库。

2、关于inversionNet基础代码的运行及解读

数据集下载:Open FWI | A collection of benchmark datasets for Seismic FWI with Machine Learning

初运行结果会产生如下报错:

这则是因为缺少了相关依赖,需要自己按需(查报错信息,缺啥补啥)补充。

具体操作为:可以先找到Anaconda所在的存储路径,在路径下输入"cmd"进入命令提示符,然后输入命令相关下载命令。

**需要注意的是,**在pycharm中要有环境的概念,pycharm可以配置不同的环境,每次运行前要有意识的检查解释器是否对应自己所需要的环境。同时在补充相关依赖时,注意要在自己选择的环境内补充,不要一股脑补充进默认环境(默认环境甚至没有torc)。

当然,还是遇到点问题的,通过查阅,发现参考以下文章可解决相关问题:
Windows python pip换源不生效(window11系统),以及pip下载库包报错 because normal site-packages is not writeable_defaulting to user installation because normal sit-CSDN博客

考虑到目前所用电脑的存储,内存及显存性能较低,所以这一次只是运行一个轻量级代码(轻量指数据集只加载500组)。

运行结果如下:

2024.08.02

暂未完成,还有部分依赖没有补充完整,结果展示后移。

3、《地震数据全波形反演的深度学习方法》PPT知识梳理

学习目的 :宏观上初步认识 "通过全波形反演探测地震数据" 这一系统。
内容摘要

(1)什么是 "地震勘探"?,为什么要 "地震勘探"?------回答项目的社会意义

(2)如何勘探?引出 "全波形反演" 这一传统方法。如何优化?深度学习。------解释项目的创新点

(3)简单介绍 "全波形反演的深度学习方法" 基本概念,需要攻克的难点。------说明项目阶段性目标
笔记记录:

(一)"地震勘探" 概述

为什么:获取地下的地质构造,进行石油、天然气、矿藏的探测。

优势:不需要通过打井(高额费用)即可获取信息。

如何做:震源产生地震波、检波器接收地震波------给地球打CT

常规地震资料处理的流程:(解释则交给相关方面的专家)

(二)传统"全波形反演" 概述------这部分可结合信号与系统来理解,比较容易搞懂。

1、基本概念:

(1)利用所有的波(直达波、反射波、折线波)等进行反演

(2)直接构造观测数据到地质模型(如速度模型)的映射

(3)将反演(seismic inversion)看成正演(forward modeling)的反函数

2、优点:

(1)反演方法可分为 走时/相位反演, 振幅反演和全波形反演三大类

(2)全波形反演相比于其他反演:

  • 使用完整的波形信息, 包括了所有频域和相位信息, 利用了更多波形物理学, 解决了完全非线性问题

  • 覆盖了波形各种频率, 因此理论上是可以提供卓越的反演精度和分辨率

3、缺点:

(1)强烈依赖于初始模型,不合适将使结果存在大量伪影

(2)计算开销大,正演计算偏微分方程很慢,而且需要迭代

(3)病态, 许多不同的地下配置可以产生相同的表面测量结果

(4)周期跳跃, 错误的模型更新, 导致局部最小

补充几个点用于理解:

杨文采向记者解释了"反演"这个艰深的数学概念,他说:"人类对自然事件发生、发展和演变的观察在时空上是非常局限的。例如,人类社会只有几百万年的历史,而地球存在了至少46亿年,没有人能看到青藏高原的隆起或白垩纪恐龙的灭绝。在空间上,地球表面为坚硬的岩石所覆盖,没有人能看到15公里以下的岩石在原位是什么样子。即使在地面上,人们也不可能清楚地观察到炼钢炉内部发生的冶炼或烧制过程的细节,而只能在局限的时空内观察到这些不可及过程的一些信息。通过这些受局限的观察信息推演相关过程发生的原因或机制,就称为'反演'。由于事件或过程发生在先,而结果或信息接收在后,对自然事件或过程发生的描述和预测被称为'正演',而根据结果或信息反推事件发生的过程或机制称为'反演'。总之,反演是一门关于扩大人类知识领域、指导人们正确地逆向思维的学问。"

他进一步解释说:"在经典的数理科学中,正演一般是通过实验确定本构方程,通过简约关联因素建立模型,它包括初始条件、边界条件和约束变量关系的数学物理方程三部分。对于大多数已知的数学物理方程来说,一旦初始和边界条件给定,事件的发展就可以通过方程准确地预测出来。当然,事情的发展也常常发生例外,如果方程是非线性的,而初始条件又有一点点误差,事情的发展也许会难以预测,就像预报七天后会下暴雨,并不需要现在就停止售机票那样,人们对长期预测的可信度是心中有数的。总之,有了数学物理方程的理论与方法,科学家可以对许多事件的发展有把握,即有较高的预测准确度。"

"由于观测时空的局限性,反演的困难比正演大多了。举例来说,如果放一小瓶香水到小房间中央,从扩散方程知,一天之后小房间内将布满大致均匀分布的香水分子。反演的问题是,已知屋子四周的香水分布,要问何时放的香水?或放香水的瓶子是什么形状的?我们不禁要问:这些反过来问的问题,在数学上有没有解答?解答是否可以很多?如果解不唯一,哪个解才是真实可靠的?这些问题,就构成了反演理论的主要研究对象。"

在认识地球的过程中,地球物理反演起到了关键的作用。人们在地球表面观测地球的物理场(如引力场,磁场,电磁场等)和地震诱发的弹性波场,然后根据观测数据推测地球内部的岩性与构造,这就是地球物理反演。

------摘自专访中国大陆科学钻探工程副总指挥、中国科学院院士杨文采

(三)"全波形反演的深度学习方法" 概述------6个问题
注意:以下部分开始涉及相关专业知识,第一遍几乎没有能看懂了,按需做相关补足!!!

1、用深度学习做全波形反演是否可行?
数据驱动

-使用大量数据训练网络,预测效率非常高
图像处理的观点

-建立图片(地震数据)到图片(速度模型)的映射,可以看作为图像的风格迁移(如从现实图片变换到卡通图片)
Q :什么是深度学习?
A :参考这边的相关学习资料

2、深度网络是否具有从地震数据到速度模型的拟合能力?

具有编码器-解码器结构的卷积神经网络InversionNet.

Q :什么是卷积神经网络?
A卷积神经网络的简单理解_卷积神经网络通俗理解-CSDN博客
深度网络在一些简单的模拟地下结构图中具有较好的预测效果. 这很好回答了我们提出的疑问.

3、如何提升拟合能力?

Q :什么是U-Net
AU-Net详解-CSDN博客

FCNVMB是首个尝试融合U-Net结构全波形反演深度网络,其特点有:(1)跳跃连接(2)保留一定空间结构的编码

Q :什么是FCNVMB
A网络架构学习之FCNVMB(基于U-Net架构)_fcn和unet跳跃连接-CSDN博客

实际的效果也证实了FCNVMB具有不错的拟合能力, 能正确估算出盐体的方位和大致的轮廓范围

4、如何提升网络的泛化性?

5、如何提升反演网络的稳定性?(这部分目前只能够比较抽象的理解,还需要补足)

多尺度网络

课程学习:从易到难

6、如何使得提升网络的可解释性?

Deep prior: 预训练模块

PINN: 将数值方法的PDE组件与深度网络融合于一体, 且一并求导

注:这两个经查询,初步判断需要足够的基础知识,这里暂不做解释,后面补足。

Deep prior:暂时没看到比较合适的

PINN:物理信息神经网络(PINN): 将物理知识融合到深度学习中-CSDN博客

7、如何减少训练数据量的需求?

VelocityGAN: 造数据

这部分的相关知识能从论文中补足。

(四)当前面临的主要挑战

1、现场数据很难获取,对应的标签几乎没有

-多数研究工作使用人造数据集,即正演模拟生成的数据,如:OpenFWI, SEGSalt, Marmousi

2、正演模拟生成的数据质量不高,与真实数据分布差距大

-人造的速度模型不够逼真

-正演模拟方法的假设条件比较苛刻

-难于获得比较真实的噪声

3、测井数据可靠,如何有效利用?

-评估反演的效果

-生成更好的速度模型

4、如何处理三维地震数据?

-数据体太大


后记

相关推荐
优思学院32 分钟前
优思学院|如何从零开始自己学习六西格玛?
大数据·运维·服务器·学习·六西格玛黑带·cssbb
LN花开富贵1 小时前
stm32g431rbt6芯片中VREF+是什么?在电路中怎么设计?
笔记·stm32·单片机·嵌入式硬件·学习
怀九日1 小时前
C++(学习)2024.9.18
开发语言·c++·学习·面向对象·引用·
一道秘制的小菜1 小时前
C++第七节课 运算符重载
服务器·开发语言·c++·学习·算法
qq21084629531 小时前
【stm32笔记】使用rtt-studio与stm32CubeMx联合创建项目
笔记·stm32·嵌入式硬件
极术社区1 小时前
ResNeXt学习
开发语言·学习·计算机视觉·php
liangbm32 小时前
MATLAB系列07:输入/输入函数
开发语言·数据库·笔记·matlab·函数·自定义函数·matlab函数
徳一3 小时前
【pytorch学习笔记,利用Anaconda安装pytorch和paddle深度学习环境+pycharm安装---免额外安装CUDA和cudnn】
pytorch·深度学习·学习
酒饮微醉-3 小时前
论文阅读--Planning-oriented Autonomous Driving(一)
论文阅读·笔记·学习·自动驾驶
GoppViper3 小时前
golang学习笔记28——golang中实现多态与面向对象
笔记·后端·学习·golang·多态·面向对象