基于VNet深度学习架构的低序级断层智能识别方法
2022-12-09路鹏飞杜文龙程丹华郭爱华
路鹏飞 杜文龙 李 丽 程丹华 郭爱华
(①东华理工大学信息工程学院,江西南昌 330013;②山东省煤田地质局第三勘探队,山东泰安 271000;③中国石油青海油田分公司勘探开发研究院,甘肃敦煌 736202;④中国石油冀东油田分公司勘探开发研究院,河北唐山 063004)
0 引言
在含油气盆地中,高、低序级断层[1-3]之间有密切的成因联系,高序级断层决定着含油断块的产状、形状和构造趋势,低序级断层则进一步控制局部微幅度构造,分割含油断块并使其中油水关系复杂化。对于油田的勘探开发以及水平井的部署、钻探而言,低序级断层的准确识别尤为重要。
目前,断层识别方法和技术主要有相干体[4-5]、边缘检测[6-7]、曲率[8-9]、谱分解[10-12]、蚂蚁体[13-14]、分频处理[15]、多属性融合[16-18]等,这些技术极大地提高了断层识别的效果和精度。然而,上述方法对地震资料品质要求较高,并且对低序级断层不甚敏感,因此对断距较小的低序级断层识别效果不佳。
基于卷积神经网络(Convolutional Neural Network,CNN)深度学习方法的人工智能技术为地震断层识别特别是低序级断层识别提供了新的途径。Ronneberger等[19]在挖掘医学图像信息时,结合CNN提出了UNet网络结构。Huang等[20]根据现有地震数据具有的大数据特点,提出了一种应用地震属性(特别是断层概率体属性)识别断层的CNN方法。Guo 等[21]、Xiong等[22]、任雄风等[23]、王紫蕊等[24-25]分别提出基于CNN的断层识别方法。Araya-Polo等[26]利用深度神经网络(Deep Neural Network,DNN)把地震数据映射到断层数据空间进行断层识别。Chang等[27]提出利用UNet识别断层的方法。Wu 等[28]利用UNet网络进行断层智能识别。Zhou等[29]利用迭代深度学习方法识别断层。张政等[30]将深度残差网络与迁移学习结合并应用于断层识别。吴吉忠等[31]提出基于全卷积神经网络(Fully Convolutional Neural Network,FCN)结构的低序级断层识别方法。常德宽等[32]在UNet网络结构的基础上结合ResNet的思想,提出了SeisFault-Net结构。杨午阳等[33]提出一种基于UNet深度学习网络的地震数据断层检测方法,在网络结构中结合UNet和残差模块ResNet50,构建了新的ResUNet网络。王作乾等[34]尝试将基于特征压缩激活UNet的卷积网络结构用于识别断层。
Milletari等[35]处理医学图像信息时,在UNet的基础上提出了VNet结构的思想。通过调研发现,UNet网络结构在下采样过程中丢失了信号的部分细节信息,而VNet网络结构可以在下采样过程中增大信号的感受野,尽量保留信号细节信息。
本文根据低序级断层的地震地质特征,编制了基于VNet网络深度学习架构的低序级断层识别程序,通过模型数据训练、验证,并应用到油田实际地震数据中。断层识别结果显示,相对以往方法,提取的信息更加丰富,表明本文方法在识别低序级断层方面有效。
1 低序级断层地震特征
高序级断层指用常规地球物理方法能够识别的断层;低序级断层是由高序级断层派生的且用常规地球物理方法难以识别的小断层,具有较强的隐蔽性。低序级断层在地震剖面上可以断开标准反射层,或者标准反射层有明显错动;也可能在地震剖面上表现为标准反射层稍微扭曲或者仅在非标准反射层中有所错动,此种轻微错动常与岩性变化引起的反射层同相轴变化相混淆。
在常规勘探地震资料中,低序级断层具有以下特点:
(1)利用通常的断层识别标准难以发现,在经过严格常规处理后的地震剖面上,表现为地震同相轴轻微错断、不连续,同相轴轻微挠曲、分叉或合并,同相轴出现空白带等形式,断层识别难度大;
(2)低序级断层是局部构造应力场的产物,断层的断距、延伸长度和规模都比较小,通常浅层断距小于10m、中深层小于25m,断开层位较少,伸展长度小;
(3)平面延伸较短,横向延伸长度多半不超过500m,可以输导油气。
图1展示了高(蓝线)、低(红线)序级断层的地震响应特征。低序级断层在地震剖面上表现的微小错动、同相轴扭曲或者振幅变弱等特征,常易与地层岩性变化引起的同相轴变化相混淆。一般来说,常规方法中的高、低序级断层识别方法不通用,利用DNN模型可以区分由断层或岩性改变引发的变化特征。对于深度学习而言,选择合适的网络结构能同时提取高、低序级断层特征,这是深度学习在断层识别方面的优势之一。
图1 高、低序级断层地震响应特征
2 方法原理
2.1 UNet网络结构
UNet结构由下采样的收缩路经和上采样的扩展路径组成(图2)。收缩路径是典型的重复结构卷积网络架构,由两个3×3×3尺寸的卷积层、一个激活函数和一个步长为2、尺寸为2×2×2的最大池化层构成。每次下采样操作都将特征图通道数增加2倍,同时将图像尺寸缩小为原来的1/2。上采样扩展路径中的每一步都首先进行一次反卷积操作,将特征图通道数减半,然后拼接对应收缩路径裁剪得到的特征图,再采用2个2×2×2尺寸的卷积层进行特征提取,并重复使用这一结构。网络的最后一层是一个尺寸1×1×1的卷积层,通过这一层操作可以将64通道的特征向量转换为所需要的分类结果的数量。卷积层后的ReLU激活函数应用在UNet的每个阶段的计算中。
图2 UNet网络结构
2.2 VNet网络结构
VNet网络结构如图3所示,分为编码部分和解码部分。VNet在UNet基础上添加了ResBlock残差模块,并采用ResNet的短链接方式,使用的激活函数是PReLU。上采样和下采样的每一阶段包含1~3个卷积层,增加了信号的感受野,能够更好地保留和提取信号的细节信息。同时,VNet采取在压缩路径叠加特征图的方法补充损失信息。通过将每个阶段下采样的特征图与对应层次的上采样相连接,以收集在下采样过程中丢失的信息。与UNet不同,VNet在下采样过程中使用卷积层替换池化函数,因而占用的网络结构内存更小。另外,VNet结构在每个阶段的卷积次数不一样,其在第一个阶段短路部分只进行一次卷积操作,然后在第二个阶段、第三个阶段依次递增,这样有利于充分挖掘目标信息。每一阶段的特征通道数都会增加一倍,使VNet在下采样过程中减小输入信号的大小并增加信号的感受野,这样特别有利于小断层信息的提取,并在后续网络计算中呈现想要提取的特征。与UNet相比,VNet可以在提取大尺度断层的同时,保留和提取小尺度断层信息。
图3 VNet网络结构图
非饱和激活函数ReLU和PReLU的应用能够解决梯度消失问题,同时加快函数收敛速度。
2.3 损失函数
使用Wu等[28]讨论的平衡交叉熵损失函数
(1)
(2)
式中:N为地震数据样点数;i代表地震数据中第i个样点;pi为断层预测概率;yi为第i个断层标签;β表示非断层数据与总数据的比率,则1-β表示总数据中断层数据的比率。
增加β可以使模型在训练过程中更侧重于对较少标签样本的学习,适合正、负样本不均衡的情况。在数据训练集中,非断层点(标签为0)远大于断层点(标签为1)的数量,因而应用L能够增加模型对断层点的学习能力,以便更好地识别断层。
2.4 模型训练
模型训练采用的数据集共有240个三维合成地震记录以及与之对应的标签集,每个数据的大小为128×128×128。其中,200个作为训练集,20个作为验证集,其余20个作为测试集。图4展示了训练数据集中的主测线(Inline)剖面、联络线(Xline)剖面、时间切片以及对应的断层标签。在训练之前,首先对样本标签数据体进行预处理。考虑到不同地震剖面的振幅值之间可能存在很大差异,因而对所有训练集数据剖面振幅进行归一化处理,每幅图像用平均值减去标准差。通过模型遍历训练数据集,发现数据集中同时具有高序级断层和低序级断层的特征,所以用这些数据集进行模型训练后可以预测高、低序级断层。
图4 训练数据集中的地震数据与对应的断层标签
在测试集中选取一条地震剖面进行断层识别验证。断层验证结果如图5~图7所示。由图5可见,Xline测线1~40之间、60ms以上浅层发育两条低序级断层,地震剖面上表现为微小错动、同相轴扭曲、振幅变弱等,断层特征不明显。UNet和VNet网络模型预测结果基本一致,均可以从地震剖面中识别断层,与断层标签也比较吻合,但在一些细节方面,VNet好于UNet。如图5c紫色和绿色椭圆框中,VNet识别出两条与断层标签数据一致的低序级断层,而UNet结果没有分开;在红色椭圆框中,VNet识别的断层为一条,与断层标签数据一致,而UNet结果中断层断为两条,这条断层在小于1600ms的浅层为低序级断层。又如图7c红色椭圆框中,VNet结果识别出的断层连在一起,与断层标签一致,而UNet识别的结果中断层断为两条,与标签不符。因此,VNet模型可以更好地学习断层特别是低序级断层特征。
图5 测试数据集中的主测线剖面(a)、断层标签(b)、VNet(c)和UNet(d)识别结果
图6 测试数据集中的联络测线剖面(a)、断层标签(b)、VNet(c)和UNet(d)识别结果
图7 测试数据集中的时间切片(a)、断层标签(b)及VNet(c)、UNet(d)识别结果
进一步选择发育有低序级断层及河道的训练集和验证集数据进行测试,验证本文方法区分真正的低序级断层和伪断层(如岩性变化)的效果。图8、图9分别为训练集和验证集数据时间切片、谱分解切片、断层标签数据和用本文方法识别的结果。图中紫色虚线指示河道,由图8d、图9d识别结果可以看出,本文方法能有效区分低序级断层和岩性体边界。说明即使原始地震数据中包含岩性体变化,应用本文方法仍然能够较准确地将低序级断层与非断层因素区分开。
图8 训练集数据中发育低序级断层、河道的识别结果
图9 验证集数据中发育低序级断层、河道的识别结果
表1对比统计了VNet与UNet网络模型的训练参数。
表1 VNet和UNet网络训练参数统计
3 实际应用
受伸展—走滑应力场的影响,研究区内发育众多“花”状构造,且断层破碎、构造复杂,低序级断层较为发育。为了提高钻探成功率,需要理清低序级断层分布及断层组合情况,确定构造特征,为后续井位部署提供重要依据。
图10a为研究区内Inline2400地震剖面,剖面上可见发育有复杂的“花”状构造。图10b~图10d分别为采用相干体、边缘检测及蚂蚁体属性的断层检测结果,这些方法识别出的断层剖面噪声重,干扰信息较多,效果很不理想。图10e、图10f分别为应用UNet和VNet方法的识别结果,两种深度学习方法得到的结果均明显优于传统断层识别方法,仔细对比后发现,VNet识别结果看到的“花状”构造中心断层细节刻画得更丰富。如图10e、图10f中的红色椭圆区,通过分析地震数据认为在“花状”构造中心发育有低序级断层,断距较小,断层特征不明显,UNet方法对该部位低序级断层特征的识别不清楚,而VNet方法识别的低序级断层相对清晰且更符合地质规律。图10g为地震剖面与VNet断层识别结果叠合显示,可以看出,VNet识别出的断层符合地质情况。
图10 实际地震数据及不同方法识别断层结果对比(Inline2400)
图11分别为实际地震数据、相干体、边缘检测、蚂蚁体、UNet和VNet断层识别结果在1500ms处的时间切片。同样可以看出,UNet和VNet断层识别效果明显优于相干体、边缘检测、蚂蚁体属性。仔细对比UNet(图11e)、VNet(图11f)切片,特别是图中红色椭圆区域,可以看出两者对大断层的识别相对一致,但VNet针对小断层(低序级断层)的识别结果好于UNet。
图11 实际地震数据及不同方法识别断层结果对比(切片时间1500ms)
4 结束语
(1)受断裂系统复杂性影响和地震资料品质的限制,复杂断块地区的低序级断层识别难度较大,地震解释多解性强,传统相干体、边缘检测技术对低序级断层的检测效果不好;蚂蚁体检测断层结果存在较多干扰信息,需要仔细甄别对待。
(2)本文根据低序级断层的地震地质特征,将VNet深度学习网络结构应用到断层检测特别是低序级断层识别中。通过选择合适的损失函数、迭代次数,优选合适模型权重参数进行模型训练,并应用到模型数据和油田实际地震数据中。与传统断层检测方法及UNet方法识别结果对比,本文方法提取的断层信息更丰富,对低序级断层的刻画更清楚;同时,能有效剔除伪断层(如岩性变化)的影响。表明本文方法在识别低序级断层方面更有效。