论文学习记录之Deep-learning seismic full-waveform inversion for realistic structuralmodels

一、ABSTRACT—摘要

        标题:Deep-learning seismic full-waveform inversion for realistic structural
models(用于真实结构模型的深度学习地震全波形反演)

        作者:Bin Liu1, Senlin Yang2, Yuxiao Ren2, Xinji Xu3, Peng Jiang2, and Yangkang Chen4(和SeisInvNet有共同作者,应该是同一个实验团队)

        编辑于2019年7月1日收到手稿;于2020年8月27日收到修订稿;于2020年10月4日提前出版;于2021年1月4日在线出版。

        速度模型反演是地震勘探的重要任务之一。在传统的速度反演方法中,全波形反演(FWI)可以获得最高的分辨率,但它严重依赖于初始模型,计算量大。近年来,已经提出了大量基于深度学习(DL)的速度模型反演方法。这些基于DL的方法中的一个关键组成部分是包含不同速度模型的大型训练集。我们已经开发了一种方法来构建一个现实的结构模型的DL网络。我们用于创建致密层/断层/盐体模型的压缩波速度建模方法可以自动构建大量的模型,而无需花费太多的人力,这对于深度学习网络非常有意义。此外,为了提高对这些实际构造模型的反演效果,我们不仅使用共炮点道集,还从共接收点道集中提取特征。通过大量的真实结构模型、合理的数据采集方法和适当的网络设置,我们提出的反演框架可以得到更普遍的结果,并在独立的测试数据集上证明了其有效性。通过对密层模型、断层模型和盐体模型的对比分析,验证了该方法的可靠性,并为实际情况下选择最优反演策略提供了指导。

二、INTRODUCTION—介绍

        从地震数据中精确地反演地震速度模型是地震勘探中的一项重要任务。速度模型在高质量、高分辨率地震勘探中起着至关重要的作用,准确的速度模型可以为逆时偏移提供更好的研究基础(Baysal et al.,1983),叠前深度偏移(Mittet等人,1995)和其它成像方法(Bunks等人,1995年)。随着地震勘探条件和要求的日益复杂,对速度估计的精度要求也越来越高。为了获得真实速度模型的良好预测,已经从不同的角度开发了许多方法,例如基于正动校正的速度分析(Dunkin和Levin,1973; Alkhalifah和Tsvankin,1995)、波动方程层析成像(Woodward,1992)和全波形反演(FWI)(Lailly和Bednar,1983; Tarantola,1984)方法。近年来,随着机器学习技术的发展,越来越多的数据驱动方法被用于速度模型反演。

        鉴于速度模型在地震勘探中的重要性,研究人员在速度反演方法上投入了大量的精力(Cohen和Bleistein,1979)。Lailly和Bednar(1983)和Tarantola(1984)首先提出了基于广义最小二乘准则的地震FWI的思想,为地震速度反演提供了一个总体框架。与传统的层析成像方法不同,FWI要求对波的传播进行高精度的建模,以便充分利用叠前地震波场的运动学和动力学信息。此外,由于FWI的高度非线性特性,它对初始模型的依赖性很强,容易陷入局部极小值。为了解决局部最小值问题,Bunks等人(1995)提出了时间域的密集尺度FWI,其中在不同频率处使用地震数据信息以改善反演效果。之后,频域中的FWI方法(Pratt和Worthington,1990; Pratt,1999; Pratt和Shipp,1999; Hu等人,2009 b)和拉普拉斯域(Shin和Cha,2008; Shin和Ho Cha,2009)已经被提出,并取得了令人满意的结果。此外,最近已经引入了方向总变分方法来解决局部最小值问题(Qu等人,2019年)。随着深入的研究,FWI方法在各个方面得到了进一步的扩展,包括粘弹性介质(Yang等人,2009)和联合反演(Hu等人,2009 a;Khan等人,2010),并且它们逐渐被应用于现场数据(Sirgue等人,2010年)。然而,FWI方法的局限性,例如初始模型的影响,仍然存在,并且需要新的方法来解决这些问题(Chen等人,2016年)。

        随着机器学习技术的不断发展,数据驱动方法为速度模型反演提供了新的思路。其中,深度学习(DL)成为最重要的研究课题之一,越来越多的领域开始引入DL方法来解决相关问题。经过几十年的发展,神经网络已经从最初的神经元形式发展到最近的深度神经网络架构。神经网络的概念可以追溯到McCulloch和Pitts(1943)的研究,其重点是神经计算方法。Rosenblatt(1958)创造性地提出了感知器的概念,开辟了神经网络算法的研究。Rumelhart等人(1988)提出了反向传播神经网络。但是由于对计算资源的巨大需求,神经网络的研究大多停留在理论阶段。随着世纪计算能力的极大提高,神经网络算法通过一系列论文的发表(欣顿et al.,2006,2012 a; Lecun等人,2015年)。随着DL的发展和相关技术的爆发,更多的领域开始使用这种方法来解决问题(Deng and Yu,2014),比如计算机视觉(Eschlodimos et al.2018),医学诊断(Esteva et al.,2017)和语音识别(欣顿等人,2012年a)。

        在地震勘探界,研究使用DL方法,并取得了比传统方法更好的效果。Röth和Tarantola(1994)首次将神经网络方法应用于地震资料一维速度模型的反演,证实了神经网络在速度模型反演中的适用性。莫斯利等人(2018)应用WaveNet进行基于深时转换数据的一维速度模型反演。Araya-Polo等人(2018)通过卷积神经网络(CNN)实现速度模型重建,用于从叠前数据计算的速度谱立方体。对于层模型和断层模型,Wu和Lin(2018)使用带有编码器-解码器的CNN(称为InversionNet)来实现相应的速度模型构建。Yang和Ma(2019)使用完全卷积神经网络从具有高斯噪声的叠前数据中重建速度模型,特别是盐模型。特别是,他们通过使用迁移学习方法进一步训练SEG数据集,结果优于FWI。上述深度神经网络基于现有网络方法的应用,并应用于地震数据集。在深入分析地震数据特征的基础上,Li等人(2020)进一步设计和优化了CNN和全连接网络,然后他们提出了SeisInvNet,取得了比InversionNet更好的效果。一些利用神经网络改进FWI的方法被提出,计算效率和反演结果都有显著提高(Ren et al.,2020年; Sun等人,2020年)。而且,在地震数据处理的研究中,DL已经成功应用,例如地震数据去噪(Yu et al.,2018年; Chen等人,2019; Saad和Chen,2020),故障识别(Wu等人,2019),岩性预测(Zhang et al.,2018; Shi等人,2019)、地质结构分类(Li,2018)和到达拾取(Tsai等人,2018年; Yuan等人,2019年; Zhang等人,2020年)。预计未来将有更多的DL程序应用于地球物理勘探,例如矿产勘探(Malehmir等人,2012),隧道中的正演地质勘探(Li et al.,2017)和四维数据监测(Liu等人,2020年b)。除了地震勘探,其他勘探方法也应用DL来实现数据处理和解释(乔治和Huerta,2018; Nurindrawati和Sun,2019; Puzyrev,2019; Liu等人,2020年a)。

       在这项研究中,我们开发了一种方法来建立现实的结构模型,即,致密层模型、断层模型和盐体模型,以及使用深层神经网络进行纵波(P波)速度模型反演的完整框架。本研究主要包括两个方面。首先,为了获得尽可能多的复杂模型,设计了模型建立过程。共采集密层/断层/盐体模型18,000个,为网络训练提供了充足的数据。选择SeisInvNet并针对更复杂的模型进行改进。基于生成的速度模型和相应的密集炮数据,训练一个新的深度神经网络来近似从数据到模型的非线性映射。通过训练好的网络,直接输入地震数据即可得到速度模型。与传统方法相比,该方法在计算效率和精度上都取得了较好的效果,并具有一定的推广性。最后,为了与原始SeisInvNet进行比较,我们通过四个评价标准来分析结果,包括平均绝对误差(MAE),均方误差(MSE),结构相似性(SSIM)和多尺度结构相似性(MSSIM)。从分析来看,该方法与原始SeisInvNet相比具有一致的优越性。此外,对故障模型的预测结果进行了仔细的研究,并讨论了未来的研究计划。

三、METHOD—方法

3.1 Problem definition—问题定义

        为了获得地下地质信息,我们通常放置人工震源激发地震波场,并使用地面接收器记录地震波。在本文中,基于时域中的声波方程对合成数据进行建模:

\frac{\partial^{2}u}{​{\partial _{t}}^{2}}=a^{2}(\frac{\partial^{2}u}{​{\partial _{x}}^{2}}+\frac{\partial^{2}u}{​{\partial _{y}}^{2}})+f(x,y,t)        (1)

        其中a表示波速,u表示压力,即,声波场字母x和y表示空间坐标,t是时间,f(x,y,t)是源的函数。

        对于速度模型反演,速度模型V由相应的观测数据D推断,这是一个反演问题,可以描述为:

V=L^{-1}(D)        (2)

        对于FWI方法,通过从目标函数导出的梯度迭代地优化速度模型。速度模型通常收敛到局部最小值。相比之下,DL方法通过优化网络参数来学习非线性映射,并且通常需要大量的数据模型对来训练网络。DL方法的性能在很大程度上取决于训练数据集和网络设计。根据最新的研究(Choromanska et al.,2014;川口,2016),DL方法可以达到的收敛点更接近全局最小值。给定输入数据D,深度神经网络可以预测相应的模型V,因此可以计算预测\bar{V}和模型V之间的拟合误差;然后导出梯度以更新网络参数。通过这种方式,获得训练的网络,即,从时间序列数据到模型的非线性映射F建立为:

V=F(D,\theta )        (3)

        其中θ表示网络参数。

        图1显示了基于DL的速度模型反演的工作流程,其中尺寸为[H ×W]的速度模型V作为输出目标(也称为标签),相应的地震数据D作为输入。输入数据的大小为[S × R × T]式中,S、R和T分别表示记录的激发次数、接收器数量和时间步长。在训练过程中,我们可以计算网络输出\bar{V}和标签V之间的失配误差,并通过梯度反向传播来更新网络参数。经过多次迭代,误差将收敛到一个足够小的值,并可以确定网络参数。在推理过程中,给定地震资料,通过网络可以预测速度模型。

图1.基于DL的速度模型反演算法的工作流程。通过提出的速度模型和设计方法,提供了多种模型。在确定了观测系统后,通过波场模拟得到了地震资料。以地震数据为输入,以速度模型为标号,对所设计的网络进行训练。训练后,给定输入的地震数据,就可以直接得到网络的预测模型。

3.2 Constructing dense-layer, fault, and salt body models—构造致密层、断层和盐体模型

        一般而言,大多数关于DL速度模型反演的研究都遵循有监督学习的范式,其中需要大量带有目标标签的数据。由于数据驱动的特性,DL方法的性能在很大程度上取决于训练过程中使用的数据。因此,对于DL速度模型反演,检验模型的设计是发挥神经网络非线性映射能力的关键。具体而言,合理的模型设计可以帮助训练的神经网络更有可能应用于现实情况。一些研究(Wu和Lin,2018; Yang和Ma,2019; Li等人,2020年)已经收集了自己的数据集,包括断层,盐体和分层地下模型。然而,这些作品中的大多数设计模型只遵循一些简单的规则,这使得模型既不真实也不够复杂。为了获得更符合实际的构造速度模型,我们进一步提出了一种新的设计致密层、断层和盐体模型的方案。

        在构造致密层模型时,首先生成致密层构造模型,然后在其上随机添加断裂构造,从而设计出含一个或两个断层或盐体的致密层模型。对于密层模型,难点在于如何在有限的深度和勘探分辨率下,保证各层的连续性和变异性,增加地下介质的数量。我们按照以下步骤生成致密层模型:

  • 1)随机生成一条曲线作为模型的第一个界面。
  • 2)通过根据上界面进行一些调整来迭代生成曲线,以确保两个相邻界面之间没有剧烈变化并保持真实感。
  • 3)将P波速度值填入相邻两界面之间的介质中,以介质越深对应的速度值越大为准则。

        本文的目标反演模型尺寸设定为100 × 100。在模型周围,在左侧、右侧和底部有一个额外的20网格吸收边界。我们定义了一个由多个三角和线性方程组成的函数,以生成连续的,波动的和复杂的曲线。函数和单独的方程如下所示:

y=y_{1}+y_{2}+y_{3},

y_{1}=a_{1}\sin (\frac{x}{2\Pi T_{1}}+\theta_{1})+a_{2}(\sin (\frac{x}{2\Pi T_{2}}+\theta_{2}))^{2},

y_{2}=a_{3}(\sin (\frac{x}{2\Pi T_{3}}+\theta_{3}))^{i},i=1,2,3,

y_{3}=r\times x+c_{0}         (4)

        其中,a_{j}T_{j}\theta _{j}j=1,2,3是不同三角方程的参数,rc分别是控制界面倾斜和深度的常数。我们让a_{1}>a_{2}>a_{3}T_{1}<T_{2}<T_{3},而\theta_{s}是随机给定的,所以y_{1}是曲线的主要部分。为了使两个相邻层之间的趋势相似,与前一个界面相比,每个界面的y_{1}都应进行调整。y_{2}项的周期和幅值在每个界面上分别指定。最后,对于y_{3}cr被分配以分别控制当前界面的深度和倾斜。通过以上定义,我们可以得到多个具有相同趋势的接口,如图2所示。

图2 由y组成的多个接口

         为了进一步削弱函数4中三角项对曲线的光滑性的影响,使模型更加真实,我们从每条曲线中选取一些离散点,通过重新连接这些点来形成新的曲线。这样,界面的随机性也增加了。该过程如图3所示。

图3 曲线和相应的模型以不同的构造方式 

        所有界面确定后,我们自上而下设置各层的纵波速度值,取值范围为[1500, 4000] m/s。 同时,根据真实的土介质的固结效应,将各层的速度值设定为随层深增加而增加。在我们的实现中,我们将相邻层之间的速度差设置为大于200 m/s。根据所需的最大波速v_{max}、前一层介质的波速v_{upper}、下一层介质的数量ln和随机项r,选择各层介质的波速范围。速度范围如下:

[200,r\times\frac{(v_{max}-v_{upper})}{ln}]        (5)

        在图4中,我们对不同类型的层模型(5到9层)的速度值变化进行了统计分析。两种模型的速度值随深度的增加而增加,这一趋势是一致的。通过以上曲线设计、界面设置、速度分配等过程,可以构建出真实的结构模型。我们最终生成五到九层的密集层模型,每层有1000个模型。

 图4 训练集中稠密层模型各深度处的平均波速。

        在密层模型设计的基础上,进一步研究了故障设置问题。我们使用密集层模型和故障线l(x)作为输入,并且我们生成在随机位置的故障模型。项l(x)可以定义为对角线,也可以设置为曲线,例如抛物线。其步骤如下:

  • 1)随机生成断层起始位置P和垂直方向移动量\Delta h
  • 2)随机选择运动部分,即,上层或下层以及移动距离。

        随机性保证了故障出现在任意位置的可能性,提高了模型的复杂性。但在某些情况下,断层反射波信息难以接收,影响了预测结果。模型中的故障对反演结果的影响将在“讨论”部分进行讨论。因此,对于移动部分的每个点[h_{0},w_{0}],更新后的位置[h_{*},w_{*}]可以通过以下公式计算:

[h_{*},w_{*}]=[h_{0}+\Delta h,w_{0}\pm((h_{0}+\Delta h)-l(h_{0}))]        (6)

        值得注意的是,有时,边界位置处的速度值会丢失,需要填充。故障设置的工作流程如图5所示。为了进一步丰富我们的模型并提高模型的复杂性,我们按照类似的步骤设计了多个故障。

图5 (a)前面使用的分层模型;(b)模型按照断层线平移;(c)获得了故障模型

        在密层模型的基础上设计了盐体模型。盐体可以看作是一个从底部向上上升的致密地层,而盐体在流入上部地层时会发生波动。我们使用高斯函数来模拟渐进波动:

f(x)=ae^{-(x-b)^2/2c^{2}}        (7)

        其中abc分别是幅度、中心和标准偏差。为了模拟盐体对致密层的影响,其中较深的层将具有较大的变形,随机生成一组高斯曲线,如图6所示。原始的层状模型按照这组高斯曲线起伏,模拟盐体的侵入影响。最后,通过具有随机参数的抛物线设计一个新的岩体,并给出范围为[4400, 4500]m/s的波速。盐体的建造过程如图6所示。

图6 (a)高斯曲线的集合,模拟盐体的侵入影响。(b)盐体曲线。(c-e)分别建立了层状介质速度模型、考虑上隆作用的速度模型和盐体速度模型。

        根据我们提出的密层、断层和盐体模型的设计方法,我们已经批量生成了18,000组模型(每种类型包含6000个模型),用于下一步的网络训练。其中一些如图7所示。

图7 设计了密层、断层、盐体速度模型样本

3.3 Deep-learning network framework—深度学习网络框架

        本文的另一个研究重点是地震反演的网络设计。对于在这项工作中生成的更复杂的速度模型,需要一个稳定和高分辨率的深度神经网络。在这里,我们选择SeisInvNet(Li等人,2020年)作为我们的骨干,我们进一步修改和调整,以满足我们的需求。我们首先介绍网络的四个部分,并解释如何实现将数据映射到相应模型的端到端反演过程。然后,我们的改进仔细介绍和讨论。网络架构和修改如下:

        1)编码器:对于地震数据,考虑到地震数据与速度模型之间的弱对应关系,使用CNN或全连接网络时存在一些麻烦。SeisInvNet的主要优点之一是分析和提取地震数据的特征,特别是在编码器方面。该方法采用卷积方法从共炮点道集中提取全局信息和域信息,并采用One-Hot编码(单位为1,其余为0)标记道,增加了单道信息,为引入全连通网络提供了可能。对于尺寸为[S × R × T]的地震数据,通过两组S共炮剖面的卷积[R × T],得到全局信息和邻域信息,其大小分别为[ R × C]和[ R × T]分别表示。此外,源和接收器的位置信息也被编码的一个One-hot编码的长度为R + S。通过这种方式,每个轨迹可以被编码以获得大小为T+R+S+C的数据,其包含比先前单个轨迹更多的信息。

         改进:为了尽可能多地提取数据的有效特征,本文进一步考虑了R共接收道集的[S × T]。也就是说,我们从两个方面获得数据信息,公共炮点和公共接收点。相应地,全局信息将具有来自两个配置文件的源。具体地,对两种地震数据道集(即,共炮点道集和共接收器道集),并且获得长度为C的两个向量。同样,相邻信息也来自两个轮廓的相邻道,然后线性加权作为最终的长度为R的相邻信息。

        通过编码器,每条地震道的大小增加到T+S+R+C+C,比原始SeisInvNet中的地震道稍大。这样,每条轨迹都包含了更多的有效信息,为全连接网络提供了更多的优势。图8a和8b分别显示了SeisInvNet和我们提出的编码器部分方法之间的差异。

图8 在编码器部分比较了以前的SeisInvNet和我们提出的方法。(a)SeisInvNet,它只对来自共炮点道集的信息进行编码。(b)我们的方法,它编码的信息,从共炮集和共接收器收集。

        2)生成器:给定编码的S × R轨迹,这部分的主要目的是通过一个全连接网络获得S × R特征图。对于时间序列到空间序列的映射问题,全连通网络被认为是最直接、最有效的方法。我们提取每个编码轨迹的特征,其大小为[w × d]用于模型构建。

        3)解码器:在这一部分中,生成的S × R特征被解码以获得速度模型V,类似于许多网络的解码器部分(Simonyan和Zisserman,2014)。The drop-out(Hinton等人,2012b)用于确保网络不依赖于特定功能。通过从某个通道随机丢弃一些特征,结果将不会严重依赖于某些特征。通过这种方式,即使在丢失某些数据之后,也可以实现良好的反演结果,这将在稍后讨论。

        4)损失函数:损失函数决定向速度模型逼近的方向。均方误差在速度反演文献中被广泛使用。在网络中,计算预测模型和实际模型之间的失配以导出梯度并更新网络参数。MSE损失函数定义如下:

L_{MSE}(\bar{V}^{i},V_{i})=\frac{1}{H\times W}\sum_{k=1}^{H\times W}(\bar{V_{k}^{i}}-V_{k}^{i})^{2}        (8)

        其中,\bar{V^{i}}V^{i}是第ith个模型的预测和相应的地面实况。

        MSSIM:SSIM和MSSIM比MSE能更好地表示两个图形之间的结构相似性,已被广泛应用于许多计算机视觉任务中。为了更好地优化预测模型的结构特性,本文还采用了MSSIM作为损失函数。在以前的工作中(Li等人,2020年),这种损失函数的优势得到了证明。SSIM的方程表示如下:

SSIM(x,y)=\frac{(2\mu_{x}\mu_{y}+C_{1})(2\sigma_{xy}+C_{2})}{(\mu_{x}^{2}+\mu_{y}^{2}+C_{1})(\sigma_{x}^{2}+\sigma_{y}^{2}+C_{2})}        (9)

        其中x和y分别表示两个图像中的两个对应窗口。项μx和μy是x和y的平均值,σx和σy是x和y的方差,而σxy是x和y的协方差。该度量两个图像窗口的相似性。该值的范围从0到1,值越接近零,相似度越低。利用SSIM,本文中的损耗项L_{MSSIM}定义为:

L_{MSSIM}(\bar{V^{i}},V^{i})=1-\frac{1}{H\times W}\sum_{r\in R}^{}\sum_{k=1}^{H\times W}\lambda_{r}\cdot SSIM(\bar{V}^{i}_{x(k,r)},{V}^{i}_{y(k,r)})        (10)

        其中V是模型(图像),V_{y(k,r)}V的窗口,以k为中心,宽度为r;定义与\bar{V}相似。因此,该等式通过对所有位置和宽度的窗口上的SSIM求和来计算相似性。项\lambda _{r}是宽度为r的窗口的SSIM的权重。具体的MSSIM参数细节参见Wang等人(2003)。图9显示了网络的架构。

图9 我们提出的方法用于模型预测。

        通过对上述两个损失函数的计算,我们将它们相加,得到最终的损失函数:

L_{SUM}(\bar{V}^{i},V^{i})=L_{MSE}(\bar{V}^{i},V^{i})+L_{MSSIM}(\bar{V}^{i},V^{i})        (11)

四、EXPERIMENT AND RESULTS—实验及结果

4.1 Data set setting—数据集设置

        通过上述模型构建方法,共获得18,000个致密层、断层和盐体模型(尺寸为140 × 140)。每个模型有五到九层。在声波场的数值模拟中,每个网格的大小被定义为10 m × 10 m。也就是说,在去除吸收边界之后,对于100 × 100的模型尺寸,反转区域为1 km × 1 km。在观测系统中,20个震源和32个接收器分别均匀对称地布置在地面上。每个源之间的间隔为50 m(5个网格点),每个接收器之间的间隔为30 m(3个网格点)。

        伪谱方法(Kosloff和Baysal,1982; Furumura等人,1998; Virieux等人,2011)被用于模拟地震波传播。激发主频为20 Hz的Ricker子波作为震源。采样间隔为1 ms,记录前1000个时间步长的数据。我们在图10中给出了一些有代表性的地震数据和相应的速度模型。最后,将18,000个模型数据对以10:1:1的比例分为训练集、验证集和测试集。它们分别用于训练网络、验证性能以保存最优参数以及测试网络精度。

 图10.速度模型及其相应的模拟数据。(a)速度模型;(b-d)分别来自第1次、第10次和第20次激发的记录数据。

4.2 Network parameter setting—网络参数设置

        网络超参数的设置也是实现良好反演效果的关键。特别是对于地震数据与速度模型之间的映射,由于参数数量多,映射关系弱,需要一种有利的方法来防止梯度消失和过拟合。根据我们以前的研究和经验,我们选择了适当的网络参数,以利用网络。我们选择Adam optimizer(Kingma and Ba,2014),批量大小为36,初始学习率为5 × 10−5,以优化我们的网络和SeisInvNet。对于网络的每一层,包括卷积层和全连接层,应用了整流线性单元(ReLU)激活和批量归一化(BN),这是DL中最常用的技术之一。ReLU激活函数公式如下:

f(x)=max(x,0)        (12)

        该激活函数计算简单、速度快。同样,这个导数也很简单:当x的值大于零时,它是1,可以有效避免梯度消失和梯度爆炸的问题。BN被证明有助于网络优化过程,提高可预测性和稳定性,达到使网络训练过程更快的目的(Santurkar et al.,2018年)。

        解码器中使用的丢弃比为0.2。网络的所有超参数如表1所示。我们总共训练网络200个epoch。在每个训练时期之后,对验证集执行一个验证过程。保存验证集上性能最佳的参数以供推断。

表1 数值模型的详细介质参数。

4.3 Result analysis—结果分析

        在本小节中,我们评估和比较了两个网络在不同配置下的结果,包括视觉比较和不同指标的定量比较,如MAE,MSE,SSIM和MSSIM。所有的分数都是在速度模型归一化后计算的。

        训练集和验证集上关于epoch迭代的损失曲线如图11所示。LMSE和LMSSIM的损失曲线单调下降,并在训练集和验证集上收敛到一个非常小的值。然而,我们的网络在验证集上比原始的SeisInvNet更稳定和可靠。这些曲线的最小值如表2所示,这证明了我们网络的优越性。考虑到现实构造模型中包含盐体等多种模型,这可能是验证集上损失函数曲线波动较大的主要原因。

表2 验证集预测结果的损失。

 图11 训练过程中训练集和验证集上的损失曲线。其中,红线是由我们提出的方法得到的,蓝线是由SeisInvNet得到的。(a)训练集中的模拟速度反演的MSE,(b)训练集中的模拟速度反演的MSSIM,(c)验证集中的模拟速度反演的MSE,以及(d)验证集中的模拟速度反演的MSSIM。

        图12-14显示了一些基础事实和预测结果。我们观察到,对于相对简单的致密层模型,预测结果非常准确,即,与实际情况几乎相同,而故障模型的结果稍差;有时故障位置不清楚。特别是对于具有多个故障的新模型,较高的模型复杂度会影响数据中收集的有效信息量。数据的缺乏导致多故障模型的协议差。此外,我们在表3中提供了测试集上的致密层模型、断层模型和盐体模型的统计数据。我们选择四个指标来获得这些统计数据:MAE,MSE,SSIM和MSSIM(更好的网络将具有较小的MAE和MSE以及较大的SSIM和MSSIM)。从这些统计数据中,我们观察到与以前类似的现象;即,我们的网络在密集层模型上表现得更好。因此,我们得出结论,故障模型具有更复杂的功能,这对网络提出了更多的挑战。

图12 (a和b)两个代表性七层模型;(c)一个代表性九层模型。 

图13 (a、b和c)分别为第6、8和9层的断层模型。

图14 地面实况,我们提出的方法的预测结果,和SeisInvNet的预测结果与测试集中的盐体模型的速度曲线之间的比较。

表3 测试集中的预测结果损失

        选取密层模型、断层模型、盐体模型三组进行直观对比,见图12-14。我们在这些图中绘制速度曲线以帮助比较差异。可以看出,对于简单的层模型,速度基本上是拟合的,但仍然有一些误差,特别是对于大起伏的模型。此外,由于地震数据只有有限的记录时间,对于较深的层可以获得较少的反射信息,这导致在这些层中的反演效果差,如图12 c所示。对于断层模型,由于断层处的速度变化较为复杂,并不是随深度单调增加,因此网络对断层模型的预测能力明显退化,但仍能反映断层的发展趋势。如图13 b所示,多故障模型从多个故障中获取信息尤其困难。对于盐体模型,两种方法都可以得到盐体的精确位置、波速和形状,而其他层的反演结果仍然是准确的。然而,我们的方法在盐体的位置和形状方面优于SeisInvNet,如图14所示。从表3中可以很容易地得出同样的结论。三种模型中,致密层模型最好,断层模型最差。

        为了进一步证明我们的方法与SeisInvNet相比的优势,在鲁棒性方面,我们评估了一些炮点丢失时的预测结果,如图15所示。在这里,我们显示了反演结果的数据与零缺失炮,两个缺失炮,四个缺失炮,和八个缺失炮,分别。图15 a显示了地面实况,图15 b-15 e显示了我们提出的方法的结果,图15 f-15 i显示了SeisInvNet的预测结果。虽然有几次预测失误,但这两种方法仍然可以很好地发挥作用。随着缺失数据的增加,SeisInvNet的预测结果,特别是盐体,变得越来越不准确。然而,我们改进的SeisInvNet的反演质量仍然可以在一定程度上保持。准确地获得了盐体和界面,炮孔缺失不会影响盐体位置和形态的预测。本次试验的意义在于,在地表采集地震数据的过程中,考虑到地形条件的恶劣,往往很难实现所有计划位置的炮点激发。我们的方法在存在缺失的痕迹仍然可以获得可接受的预测结果。

图15 反演结果分别来自具有零个缺失炮、两个缺失炮、四个缺失炮和八个缺失炮的数据。(a)地面真相。(b-e)我们方法的结果。(f-i)SeisInvNet的预测结果。 

五、DISCUSSION—讨论

        在这项研究中,开发了一种新的方法,在设计致密层,断层和盐体模型,同时SeisInvNet的适用性和通用性也被证明了。与以前基于DL的反演方法的模型不同,我们提出的速度模型构建工作流程可以自动生成包含致密层、断层和盐体的各种模型,从而提供逼真的模型数据对来训练DL网络。我们考虑了地层波动、层厚和速度的变化,提出了一种基于密层模型设计流程的体系结构。同样,对于断层模型,选择断层位置、倾角和移动方向的范围,完成断层设置功能,从而可以将断层构造添加到层模型中。最后,构建了多达15个速度类别的18000个模型,并为DL提供了良好的数据-模型对。对于SeisInvNet,由于其通用性和适用性,断层速度模型数据的有效信息也可以通过编码器和生成器提取,速度模型由解码器重构。

        在分析结果时,我们发现,对于具有陡倾角或位于观测系统边缘的断层模型,预测不佳的原因是反射波数据难以记录。从图16中可以看出,速度值和界面位置都得到了很好的预测,但没有得到断层。这表明,由于接收器没有记录故障的反射波信息,因此很难预测故障。虽然使用了全波形信息,但网络更多地依赖于强第一反射波进行预测。像衍射这样的信息很难被网络有效地利用。在未来的研究中,我们将进一步考虑反演断层模型的问题,其中长偏移距/衍射数据可以提取,以提高反演性能。

图16(a和e)断层靠近模型边界的速度模型。(c和g)具有大倾角的速度断层模型。(b,d,f,h)它们相应的预测结果。 

        为了验证我们的训练网络的泛化能力,我们测试了10层和12层模型(不包括在训练集中)。如图17 a和17 b所示,对于10层模型,训练后的网络仍然可以进行准确的预测,并得到明显的分层结果。对于12层模型,由于层厚较小,部分界面预测不准确,但实现了整体速度预测,如图17 c和17 d所示。

图17 网络泛化能力测试。(a)10层和12层速度模型,(b)本文方法的预测结果。 

         此外,我们与FWI进行了简单的比较(如图18所示)。在较好的初始模式下,浅层FWI的分辨率仍然较好。然而,建立初始模型和陷入局部最小值的趋势仍然是FWI的问题。该方法不依赖于初始模型,能够准确地反演各层速度,计算效率高。因此,我们认为DL反演和FWI可能不是完全对立的,但可能是互补的,这也将是我们下一步的研究重点。

图18.与FWI方法的比较。(a)真实速度模型,(B)FWI的初始模型,(c)FWI结果,和(d)我们的方法的预测结果。 

        此外,我们稍微调整了网络,并在一个小的弹性波数据集上进行测试。如图19所示,P波和剪切波(S波)速度模型由网络预测。虽然弹性波数据比声波数据复杂,训练数据少,但改进的SeisInvNet也取得了可观的效果。考虑到训练数据的缺乏以及网络结构尚未针对弹性波数据进行优化,未来将对弹性波数据进行更深入的研究。

 图19 弹性数据反演问题的初步试验结果。(a-c)第1次、第10次和第20次激发的接收数据,(d和e)分别是纵波速度模型和横波速度模型,(f和g)我们的方法相应的初步预测结果。

六、CONCLUSION—结论

        在这项研究中,我们开发了一种模型设计方法,并提出了一个适用的地震反演网络的基础上SeisInvNet。在模型设计方案中,我们考虑了地层波动的变化、层厚、致密层速度的变化、断层位置的范围、断层的运动方向、盐体的侵入等控制因素。最终,构建了18,000个真实的结构和复杂模型。通过这些模型的模拟数据,我们收集了大量的数据模型数据集,用于训练、验证和测试深度神经网络。我们通过引入更多来自共接收器道集的信息来改进SeisInvNet,并进一步增强嵌入向量。相应地,可以重建更精确的速度模型。对于预测结果,分别对密层模型、断层模型和盐体模型进行了分析。我们发现,我们提出的方法可以成功地工作的致密层和盐体模型和合理的断层模型。断层模型的反演结果还有待于通过优化数据记录系统来提高,这是我们今后的研究方向。

  • 20
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
f-k 偏移是一种常用的地震数据处理方法,用于纠正地震记录中的叠加和偏移问题。它的基本思想是根据地震数据的频率和波数信息,将数据在时间和空间上进行偏移,以实现地下构造的正确成像。下面详细介绍在 MATLAB 中实现 f-k 偏移的步骤: 1. 首先,加载原始地震数据。这通常是一个二维矩阵,其中每一列代表一个接收器(或道集),每一行代表一个时间样点。例如,假设原始数据存储在名为 `seismic_data` 的矩阵中,大小为 [Nt, Nr],其中 Nt 是时间样点数,Nr 是接收器数。 ```matlab seismic_data = load('seismic_data.mat'); % 加载原始地震数据 ``` 2. 对原始地震数据进行快速傅里叶变换(FFT)以转换到 f-k 域。这将得到一个复数矩阵,表示频率-波数域的数据。 ```matlab fk_data = fft2(seismic_data); ``` 3. 根据波数和频率的关系,计算每个点的时间偏移量。偏移量可以通过以下公式计算: ```matlab dx = 1; % x 轴采样间隔 dt = 0.001; % t 轴采样间隔 v = 1500; % 假设声波速度为 1500 m/s k = (-Nr/2 : Nr/2 - 1) * (1/(Nr*dx)); % 波数轴 f = (0 : Nt/2) * (1/(Nt*dt)); % 频率轴 [K, F] = meshgrid(k, f); % 构造波数-频率矩阵 t_offset = 2 * K * v ./ F; % 计算时间偏移量 ``` 4. 根据计算得到的时间偏移量,对 f-k 域数据进行插值或者采样来进行偏移。这里可以使用 MATLAB 的插值函数 `interp2` 或者 `interp1`。 ```matlab migrated_data = zeros(Nt, Nr); % 初始化偏移结果矩阵 for i = 1:Nr migrated_data(:, i) = interp2(0:Nr-1, 0:Nt-1, fk_data, 0:Nr-1, 0:Nt-1-t_offset(:, i)/dt); end ``` 注意,这里对每个接收器的数据进行了偏移,所以需要在循环中逐个处理。 5. 最后,可以将偏移后的数据进行反变换(逆FFT)以返回到时间域。 ```matlab migrated_seismic_data = ifft2(migrated_data); ``` 这样就完成了 f-k 偏移的过程。需要注意的是,上述代码仅提供了一个基本的 f-k 偏移实现示例,具体的实现可能会有所不同,具体取决于数据的形式和处理过程的要求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值