APP下载

基于残差网络与迁移学习的断层自动识别

2020-10-17顾汉明

石油地球物理勘探 2020年5期
关键词:残差断层卷积

张 政 严 哲 顾汉明

(中国地质大学(武汉)地球物理与空间信息学院,湖北武汉430074)

0 引言

断层是地下常见的地质构造,它对于油气勘探、工程施工、天然地震研究等具有重要意义,因此断层识别在地震资料解释中十分重要。当前已有很多断层识别和解释的方法,如相干体分析技术[1-3]、边缘增强属性分析技术[4]、蚂蚁追踪算法[5-6]、相似性传播聚类与主成分分析法[7]、构造导向滤波法[8]、基于熵的各向异性扩散保边滤波法[9]等。但是,这些方法都存在一定的局限性,如断层相关属性提取中存在噪声问题,不同工区存在参数优化与适应性问题等。

随着机器学习技术的快速发展与广泛应用,机器学习算法已经用于地震资料的断层识别。董守华等[10]、崔若飞[11]利用浅层全连接神经网络,通过学习断层的地震反射特征参数,实现了简单的断层识别。

随着Lecun等[12]提出卷积神经网络概念,多种基于卷积神经网络算法开始用于断层识别。Huang等[13]将卷积神经网络、传统机器学习算法与地震属性相结合实现了断层识别。Guitton[14]利用三维地震数据训练卷积神经网络实现了断层的三维识别。Wu等[15]利用人工合成的断层地震图像训练卷积神经网络实现了断层识别;Liu 等[16]利用Smooth-Grad技术直观解释了卷积神经网络识别断层的过程;Xiong等[17]、Ma等[18]和Guo等[19]利用 卷积神经网络实现了断层识别。Wu 等[20]利用U-Net图像分割网络实现了断层识别。

Liu等[16]认为神经网络识别结果不如人工解释准确。Xiong等[17]和Ma等[18]认为神经网络识别结果优于相干体技术。尽管利用卷积神经网络可以实现断层识别,但是目前方法仍存在一定的局限性。地球物理领域没有大量可靠的实际断层样本用于训练,而人工合成断层地震图像虽然解决了训练样本问题,但合成的断层与实际断层仍存在较大的差异,并且无法包含所有的实际断层类型,导致断层识别结果不理想。因此,训练的断层识别网络模型仅在信噪比较高的测试数据上表现良好,应用于发育复杂、多样断层的实际地震数据时表现不佳,存在较多断层漏识别或错误识别。

针对上述问题,本文提出一种基于深度残差网络与迁移学习的断层识别改进方法。其中,深度残差网络是He等[21]提出的一种深度卷积神经网络,它解决了深度网络难以训练的问题[22],提升了网络性能,能更好地学习目标特征;迁移学习是运用已有知识对相关问题进行求解的一种新的机器学习方法[23],目的是迁移已有的知识以解决目标领域中仅有少量标签样本数据的学习问题[24]。本文利用深度残差网络增加网络复杂度,利用迁移学习增强网络的泛化能力,使网络能够学习更多的断层特征,更好地适应实际地震数据。

1 深度残差网络识别断层

1.1 训练样本构建

神经网络识别断层本质是构建一个神经网络分类器,利用大量的断层样本训练网络,使网络能够将输入的断层准确分类。本文基于Wu等[15]提出的合成断层地震图像的方法,生成25万个训练样本,包括16万个断层样本与9万个非断层样本。样本共分为17类,其中断层样本16类,包括正角度断层(断层面向左倾斜)8类、负角度断层(断层面向右倾斜)8类,角度范围为[-85°,-64°]、[64°,85°],每隔3°分为一类(图1);非断层样本1类,分为“无断层”(图1i、图1j)和“断层不经过样本中心”(图1k、图1l)两种情况。每个样本大小均为48×32像素,所有样本的具体特征各不相同。

获得训练样本后,构建一个34层的深度残差网络,使用合成断层样本训练网络,达到目标条件后完成训练并保存网络参数。最后利用实际测试样本与实际地震数据进行测试。

图1 部分合成样本

1.2 残差学习模块构建

增加神经网络的深度可以增加网络的参数种类,以便更好地学习目标特征。但是,简单地增加网络层数会出现梯度消失、梯度爆炸、过拟合等问题,造成网络退化。其具体表现为训练精度与测试精度的下降。

为了解决深层网络的退化问题,He等[21]提出了残差学习模块,如图2所示。模块的输入为x,期望输出为H(x),实际输出为F(x),每个模块右侧都有捷径将输入值x直接传到输出处,输出时需要先使用激活函数激活。由于捷径的存在,残差学习模块的输出变为F(x)+x,学习目标变为F(x)=H(x)-x,即网络学习的内容变为残差。He等[21]指出,如果网络层数超过最佳层数,残差网络会将多余层训练为F(x)=0,即这些层的输入与输出相同,变为恒等映射,这样网络层数加深就不会造成网络退化。

图2 残差学习模块结构示意图

残差学习模块不仅解决了网络层数增加造成的退化问题,还使得网络的学习目标简化,难度降低,使深度神经网络的训练变得更加容易。

本文使用图3所示的两层残差学习模块构建残差网络。两层残差学习模块中,卷积核的大小均为3×3,通过捷径输入的通道数与残差模块输出的通道数相同。每层卷积操作后的特征都需要使用激活函数激活才能输入到下一层。由于线性整流函数(Rectified Linear Unit,Re LU)相比于Sigmoid 和双曲正切(Tanh)激活函数收敛速度更快,不容易发生梯度消失,更适合深度神经网络[25],因此在每层卷积操作后都使用ReLU[f(x)]=max(0,x)函数进行激活。

图3 两层残差学习模块

1.3 网络构建

将输入层、卷积层、池化层、16个残差模块、池化层、输出层依次连接,构成34 层深度残差网络(图4)。其中,残差学习模块中捷径有实线和虚线两种。实线表示输入与输出通道数相同,可直接相加;虚线表示通道数不同,需要先使用1×1的卷积提升通道数,再相加。

2.1.1 提取温度 35~85℃时随温度升高山竹果皮花青素提取量呈逐渐增加趋势。其中,35~65℃时提取量的增幅较小,65~85℃时提取量的增幅较大。原因在于温度升高,山竹果皮中酶被破坏,从而使溶液中可溶性成分的溶解度和扩散系数增大;但温度过高,也会使不耐热的有效成分受到破坏而失活。长时间高温受热,花青素易发生聚合,当温度≤85℃时花青素提取程度远大于分解程度,但提取的杂质含量增高[15-17],致使提取液变浑浊;且温度过高给后续操作带来困难,因此,正交试验温度水平选用65~75℃较合适。

网络输入层为48×32像素的断层图像,图像输入后,经过一次卷积与最大池化,提取断层图像的特征进一步学习[26]。残差模块的输入输出通道数依次为32、64、128、256。图4中有三层网络出现“/2”标识,表示其卷积步长为2,卷积后会使图像大小变为原来的1/4,最终图像缩小为原来的1/64,压缩了数据特征图像与参数数量。输出前再次进行最大池化,然后对应不同的断层角度,用Softmax函数将输出结果分为17类

式中:σ(Zj)表示不同分类的概率分布,j为分类类别;k为分类数;本文K 取17。

损失函数选用交叉熵(CrossEntropy)函数式中:L为网络损失;yi为网络期望输出;^yi为网络实际输出。

梯度下降选用自适应矩估计(Adaptive Moment Estimation,Adam)梯度最速下降法[27]。

图4 34层深度残差网络结构示意图

1.4 网络训练与测试

本文使用RTX2080Ti GPU 训练网络。学习率设置为1×10-4,训练批次为256,数据循环训练5次,训练完成后保存网络参数并进行测试。网络对合成断层样本的识别准确率为99.56%;对1000个实际断层样本的识别准确率为73.45%。该结果表明合成数据与实际数据之间存在一定差异,由于实际数据含噪及地层产状复杂等原因,即使图像特征十分相似,数据特征也无法完全一致。

使用实际的二维地震剖面对该网络进一步测试。根据实际数据的大小,选择合适的窗口对数据滑动扫描并逐一识别,识别过程如图5所示。数据扫描完成后,得到断层识别结果(图6)。经过训练的深度残差网络能够准确识别出大多数断层,但也存在一定的漏识别与不准确识别,图6中黑色箭头指示的位置为错误识别,红色箭头指示的位置为漏识别。

图5 断层识别与标记过程

图6 a测线34层的残差网络断层识别结果

为了解决上述问题,改进识别结果,本文引入迁移学习。

2 迁移学习

迁移学习是利用数据、任务或网络模型之间的相似性,将在旧领域学习的网络模型应用于新领域的一种学习过程。迁移学习解决了大数据与少标注、普适化网络模型与个性化需求之间的矛盾[28]。

2.1 数据实验

通过人工合成25万个断层样本训练断层识别网络模型,只需少量实际断层训练样本即可进行迁移学习。手动提取4000个实际断层训练样本,实际样本中的断层与非断层的比例无需严格遵照合成样本的比例。实验发现:提取实际样本时,若提高其中断层样本的比例,则会提升网络对断层的识别能力,减少漏识别;若提高非断层的比例,则会提升网络对非断层的识别能力,减少错误识别。本文提取的实际训练样本中,断层与非断层的比例约为1∶1。实际断层样本如图7所示。

图7 部分实际样本

2.2 网络迁移

在迁移学习时,直接使用实际数据继续训练原有网络。由于实际断层样本数量较少,因此适当增大学习率至1×10-4、批次减小为128、数据循环次数增至50次,迁移完成后保存网络参数。

使用前述相同的1000个实际断层样本进行测试,迁移后的网络在实际断层样本上识别准确率由73.45%提高至95.54%。该结果表明网络成功由源领域迁移至目标领域,迁移学习效果明显,未发生负迁移[29-30]。

对图6 所示的二维地震剖面进行测试。结果(图8)显示,迁移学习后残差网络减少了漏识别与错误识别,提高了识别准确率。

图8 a测线迁移学习后的残差网络断层识别结果

3 应用效果

为了进一步检验深度残差网络与迁移学习的效果,本文测试了更多的二维、三维实际地震资料。

将改进后的网络应用于另一条测线(图9,与图6地震剖面为同一二维工区),迁移学习后残差网络准确地识别出了断层。相比于迁移前,减少了断层漏识别与错误识别,大断层识别连续性好,尺度较小的断层也能准确识别。这表明经过迁移学习后,网络学习到了实际地震资料中的断层特征。

作为对比,本文训练6层卷积神经网络对图9所示的二维地震测线数据进行识别,结果如图10所示。训练该卷积神经网络时,训练数据、学习率、批次大小、数据循环次数都与训练34层残差网络时保持一致。对比图9、图10可以看出,残差网络与迁移学习结合识别结果明显优于6层卷积神经网络识别结果,断层漏识别明显减少。使用前述1000个实际断层样本进行测试,如表1所示,6层卷积神经网络的识别准确率仅为57.87%,远低于残差网络与迁移学习结合的方法,与图9、图10识别结果相符。

图9 b测线迁移学习后的残差网络断层识别结果

图10 b测线6层卷积神经网络的断层识别结果

表1 不同结构神经网络的识别准确率

将迁移学习后残差网络应用于不同工区的三维地震资料,识别结果如图11~图13所示。

其中,图11 为工区1 的识别结果,该工区共201条测线,每条测线440 道,采样间隔为4ms,采样点数为751;图12为工区2 的识别结果,该工区共441条测线,每条测线441道,采样间隔为4ms,采样点数为501;图13为Kerry三维工区部分数据的识别结果,测试使用了191条测线,每条测线700道,采样间隔为4ms,采样点数为401。

测试结果表明,深度残差网络与迁移学习结合能够有效应用于不同工区的三维地震资料的识别。使用少量实际样本迁移后的网络,准确识别出了三维数据中的断层,并且大尺度断层在切片上也具有一定的连续性,能够直观地显示出三维地震资料上断层发育情况(图11~图13)。此外,这三组实际资料的断层倾角都在网络可识别的范围内,无需手动设置参数,能自动识别出不同倾角的断层。

图11 工区1三维地震资料本文方法断层识别结果

图12 工区2三维地震资料本文方法断层识别结果

图13 Kerry三维工区部分数据本文方法断层识别结果

4 结束语

训练样本是神经网络识别断层的基础。少量的实际训练样本难以训练深度神经网络;人工合成的训练样本虽然数量庞大,但合成数据与实际数据存在特征差异。将合成数据的数量优势与实际数据的复杂特征相结合,可以提高神经网络断层识别准确率。

本文基于深度残差网络首先利用人工合成的大量断层及非断层样本进行训练,然后加上少量的实际断层样本进行迁移学习,提升了网络性能,增强了网络结构的泛化能力,从而提高了实际数据中断层识别的准确率。分析及应用表明,与仅使用合成数据训练的深度残差网络相比,迁移学习后的深度残差网络能够更加准确地识别断层,并且经过一次迁移学习后的网络可以适用于不同地区的实际资料。

本文方法依然存在不足之处,主要有:①断层识别及定位采用的是滑窗方式实现,与目标检测类的算法相比效率较低,对于本文中使用的实际数据,识别时间在1个小时左右;②由于在获取的地震数据中,断层基本都属于同一类型,因此无法检验本文方法对一些更为复杂类型的断层的识别准确率。

猜你喜欢

残差断层卷积
页岩断层滑移量计算模型及影响因素研究*
基于残差-注意力和LSTM的心律失常心拍分类方法研究
如何跨越假分数的思维断层
基于双向GRU与残差拟合的车辆跟驰建模
嘛甸油田喇北西块一区断层修正研究
X油田断裂系统演化及低序级断层刻画研究
基于3D-Winograd的快速卷积算法设计及FPGA实现
基于残差学习的自适应无人机目标跟踪算法
卷积神经网络的分析与设计
基于深度卷积的残差三生网络研究与应用