王维波 官 强 高 明 盛 立
(中国石油大学(华东)控制科学与工程学院,山东青岛266580)
微地震监测技术通常用于油气井压裂效果评价,确定压裂诱发裂缝的形态,是低渗透储层、页岩储层压裂裂缝监测的重要技术手段[1-3]。微地震监测有地面监测和井下监测两种方式。地面监测是在地面部署大量监测站点,通过高灵敏度检波器接收微地震信号[4]。井下监测需要在压裂井附近布设监测井,将检波器串放置到井下进行监测。
微地震事件的震源定位是微地震数据处理的核心问题。震源定位有多种方法[5],包括多道P波时差法[6]、地震发射层析成像(SET)法[7]、逆时偏移方法[8]等。其中,SET法无需提取事件信号初至,对监测信号的信噪比要求低,适用于地面监测的震源定位[9-10],在理论研究和实际应用中都得到了验证。Kugaenko等[11]在地热微地震监测中成功使用SET方法进行震源定位; Chambers等[12]专门实施了井下放炮、地面微地震监测试验,使用SET震源定位方法验证了地面监测的有效性; 王维波等[13]用数值模拟方法研究了SET算法的特点,并根据多口油气井水力压裂地面微地震监测数据实际处理情况,总结出了选择地面微地震监测站点个数的基本原则。
在实际应用SET方法时,需要先对多道时域信号段进行SET计算,得到多张图片,然后通过人为判别图片是否具有明显焦点,推断是否存在有效微地震事件,进而根据图像中的成像最大值确定震源点[11-13]。这种依据人工经验对图像进行抽象判别的处理方式,工作效率低,无法对海量监测数据全部进行SET和批量自动处理,因此无法在时域发现更多被噪声淹没的有效微地震事件信号。
随着Lecun等[14]、Krizhevsky等[15]和Simonyan等[16]分别提出LeNet-5、Alex-net和VGG模型,卷积神经网络逐渐被应用于各个领域,与日益发展的人工智能方法相结合,是突破SET方法应用瓶颈的有效途径。近年来,多种卷积神经网络算法应用于微地震事件自动识别和定位。Huang等[17]将卷积神经网络算法与微地震信号相结合,实现了微地震事件的自动定位。王维波等[18]提出一种基于卷积神经网络的微地震事件检测方法,可以有效地自动识别微地震事件时域信号。
传统的卷积神经网络虽然可以解决SET图片自动识别问题,但是在面对低信噪比成像图片时,容易出现微地震事件误判现象。Szegedy等[19]认为网络深度越大越能提取图像的细微特征,但是随着深度的增加,可能出现梯度消失或梯度爆炸现象,同时特征图包含的图像信息会逐层减少,容易出现网络退化问题[20]。为此,He等[21-22]提出一种深度残差网络,既解决了深度网络难以训练的问题,又提升了网络性能。近年来,张政等[23]将残差网络应用于断层图片的自动识别,与其他模型相比,该模型具有更好的识别能力。Long等[24]将残差网络应用于鱼的行为分类中,也取得了不错效果。
本文利用残差网络对地面微地震监测数据的SET图片进行自动识别,判定SET数据对应的信号段内是否包含有效微地震事件,并确定有效微地震信号的震源坐标。该方法解决了传统处理过程需要依赖人工判别SET图片的问题,可以实现自动批量处理,极大地提高了处理效率。另外,相比传统卷积神经网络特征提取方法,残差网络的性能更佳,能够提取更多的SET图片特征。对不同信噪比的合成信号以及实际油井水力压裂微地震监测信号的处理结果表明,残差网络能够有效识别包含微地震事件信号的SET图片,进而实现微地震事件的检测和震源定位,且具有较强的抗噪能力和泛化能力。
SET方法的基本假设是:地下震源点发射的地震波被地面多个监测站点接收,地面站点接收到的地震波信号虽然有时差和畸变,但是存在相似性。SET方法的基本原理是:将被监测区域划分为网格,根据地层速度模型计算每个网格点到地面监测站点的地震波理论走时; 再据此针对每一个网格点,对一个时间段内的多道信号进行偏移叠加,计算网格的Semblance参数(S参数,计算公式见文献[11]),从而实现SET。地面监测和SET示意图如图1所示[13]。
计算图1中所有网格点的S参数,然后根据S参数值分层绘制伪色图,得到各层的SET图片。图2为某段合成信号第一层SET图片。S参数实质上是一种无量纲的相似性参数,S参数值最大的网格被认为是震源点。因此,对于包含有效微地震事件的信号段,SET方法只需对所有网格点计算S参数,通过查找S参数极大值点就可以确定震源,无需拾取事件信号的初至。
SET方法具有一个显著的优点,即随着地面监测站点的增多,S参数值极大值点会越突出,有利于识别更低信噪比的信号。当监测站点增加到一定数量时,甚至能够对完全被噪声淹没的信号成像[12-13],这也是SET方法适用于地面微地震监测数据处理的主要原因,因为在地面增设监测站点相对容易实现。
图1 地面监测和SET示意图
图2 某段合成信号第一层的SET图片
对任何信号段都可以进行SET,包含微地震信号的SET图片具有明显的焦点,而不包含微地震信号的背景信号或干扰信号则没有,两者的成像图片具有明显差别。以往通过人工识别判断SET图片,这种抽象、耗时的处理过程过分依赖经验,况且人工识别的工作量有限,一般无法完成对海量监测数据的全部处理,因而无法充分发挥SET算法可识别被噪声淹没的有效微地震信号的能力。
利用卷积神经网络提取特征可视为拟合新的数据分布,通常在浅层网络模型中使用数据归一化预处理方法处理数据。该方法在浅层网络应用效果很好,但是随着网络深度的增加,数据经过卷积、池化以及激活运算,其输出结果会出现巨大差异,影响后期新数据特征的分布,导致网络模型整体训练效率低下。
为了解决上述问题,Ioffe等[25]提出了批量归一化方法(Batch Normalization, BN),通过引入两个学习率参数γ和β,对数据进行缩放与数值偏移
(1)
(2)
批量归一化过程会根据特征图像的数量提供同等数量的x、σ进行计算,在训练过程中保存一定范围内的均值和方差,测试时在该范围内滑动选择合适的参数值。
卷积神经网络为图像分类技术带来了一系列突破,网络模型深度是至关重要的因素,模型越深越能提取图像的细微特征,但是随着深度的增加,可能会出现梯度消失或梯度爆炸现象,即网络退化问题。He等[22]提出了深度残差网络模型,在卷积神经网络中加入直接映射,使输出数据包含更多的图像信息。残差块的网络结构如图3所示,其中Relu为线性整流函数。
如图3所示,该残差块跨越两个卷积层,输入数据x经过直接映射与残差函数F(x)相加构成了一个映射层,输出值为y,即
y=F(x)+x
(3)
其作用是使输入的数据信号不会随着网络深度加深而减弱,可以有效地提升网络的效果。
本文使用了两种类型的残差块,分别是卷积块和识别块(图4)。残差部分都使用3个卷积核提取特征,卷积核的尺寸均为3×3。在卷积块中,x与F(x)维数相同,可以直接相加。在识别块中x与F(x)维数不相同,因此需要对x进行填充,本文使用1×1的卷积核提升其维数。另外,两种结构都加入了BN过程,以加快训练速度。
图3 残差块结构示意图
图4 加入BN的典型残差块结构
3.1.1 合成信号数据集的构建
首先采用合成信号进行SET,构建SET图片数据集并对残差网络进行网络模型训练和测试。
假设一口压裂井的射孔段中心深度为2755m,构建合成数据时在垂直方向只划分一层,水平方向划分40×40个网格,网格边长为10m。在地面布设36个监测站点,呈网格状均匀分布(图5)。正演走时计算采用均匀速度模型,设置平均速度为3200m/s。
数据合成采用最小相位子波、零相位子波和Ricker子波三种不同的子波。在实际水力压裂过程中,受地层破裂时能量差异、储层岩石特性等因素影响,会产生不同的微地震子波[26],其SET图片也有所不同,有的聚焦点峰值大、成像焦点附近能量集中,有的聚焦点峰值小、成像焦点附近能量不突出。另外,合成信号中叠加了不同强度的高斯随机噪声,以得到不同信噪比的信号。针对某个震源点,叠加对应子波和高斯随机噪声生成合成信号,定义信号信噪比为
(4)
式中:A(tk)为子波信号序列;N(tk)为噪声序列;M为序列长度。
生成包含子波信号和不同强度噪声的微地震信号1500段,生成背景噪声信号500段,表1列出了合成数据集的详细信息。
图5 地面监测站点分布
表1中标签0代表背景噪声,标签1代表微地震事件。对表中合成信号数据集进行SET,设置时间窗为1200ms,生成图像的像素尺寸为402×402,为3通道图片。在输入网络之前需要对图片进行预处理,以加快网络的运算速度,于是将成像图的像素尺寸缩放为131×131,并按3∶2的比例划分训练、测试数据集。表2列出训练集和测试集的详细划分信息。
表1 合成信号数据集描述
表2 合成训练、测试数据集描述
3.1.2 残差网络模型结构和模型训练
使用残差网络对SET图片进行处理,实现微地震事件自动检测。使用的残差网络模型结构如图6所示,共采用了1个卷积层、2个池化层(分别为最大池化和平均池化)及7个残差块(分别为2个卷积块和5个识别块)。
网络的输入层为131×131像素的SET图片,经过一次卷积与平均池化提取特征后,将得到的输出继续输入到残差块中提取特征。然后进行平均池化操作,再输入到全连接层中,全连接层的输出是最终的分类结果。整个过程各层的参数设置如表3所示。
图6 残差网络模型结构
表3 残差网络结构参数
采用Python语言和Tensorflow架构作为编程环境,训练过程采用Adam梯度下降算法,学习率为0.001。在输入样本的过程中,采用小批量batch训练方式(10个样本)降低运算复杂度。每次训练输入一个小批次样本,循环训练所有批次,将所有数据迭代一遍称为一个epoch。本次实验在配备Intel Core i5-7400 3.0GHz处理器和4GB内存的PC上训练100个epoch(约1400步迭代),之后测试网络模型的性能。经过多次测试,最终得到训练过程检测准确率曲线(图7)。
由图7可以看出,本文所提微地震事件检测方法对合成数据集的检测准确率可达99.9%。
图7 合成信号检测准确率曲线
3.1.3 残差网络模型对微地震事件检测效果测试
使用合成信号的SET数据完成残差网络模型训练并保存参数,再用两组验证数据集测试残差网络的微地震事件检测能力。一组是由不同信噪比、不同站点个数构建的合成信号计算的SET数据集(表4),另一组是由两口油气井水力压裂实际监测信号计算的SET数据集(表5)。
表4 合成信号验证数据集描述
表5 实际监测信号验证数据集描述
使用实际油气井压裂监测的数据集,是为了验证由合成信号训练的残差网络模型是否同样适用于对实际微地震监测信号的处理。实际监测信号使用LG172井、N203井的水力压裂地面微地震监测数据,信号采样间隔为1ms,其中LG172井压裂段射孔中心深度为2755m,使用33个监测站点; N203井压裂段射孔中心深度为2385m,使用20个监测站点。两口井建立了各自的速度模型和网格划分,能根据截取的信号段进行SET计算,成像时间窗长度设置为1200ms。若时域剖面上微地震信号较明显或SET图上存在较明显的能量焦点,则认为该监测段存在微地震信号,反之则认为该监测段为背景噪声。
图8显示了不同信噪比的Ricker子波合成信号及其成像结果,震源点为图像的中心点,地面站点分布与LG172井实际监测点相同。当无噪声(图8a上)或噪声较弱(图8b上)时,各道的子波信号较明显,可直接判定为包含微地震信号。噪声较强时,有效信号几乎完全被噪声淹没,肉眼已很难甄别(图8c上)。对图8中的3段信号分别进行SET,然后由训练好的残差网络判别SET数据中是否包含有效微地震事件。结果表明,不仅判断图8a、图8b的SET结果存在明显能量焦点,残差网络还从强噪声信号SET图中识别出了时域信号上基本看不出的微地震事件(图8c下)。
图9为LG172井的部分监测数据及其SET图片。图9a上为夹杂弱噪声的强微地震信号数据,只有少量监测站点受到强噪声的干扰,SET图片具有明显的能量集中区(图9a下),被残差网络模型判别为包含有效微地震事件。在图9b上和图9c上的监测信号完全被噪声污染,肉眼已很难甄别该监测段是否存在有效微地震事件,但其对应的SET图片(图9b、图9c下)上有较多局部极值点,且存在明显的能量集中区,因此被残差网络模型判别为包含有效事件。可见,利用残差网络模型能够识别出在时域信号上不明显的微地震事件。
图10为N203井压裂的部分微地震监测数据及其SET图片。3个时域信号都包含微地震信号,虽然信号强度、背景干扰强度各有差异,但是其SET图片都具有明显的能量聚集区,都被残差网络判别为包含有效微地震事件信号。
成像图片输入到网络前需要进行预处理,将成像图片的像素尺寸缩放为131×131,以便加快网络的运算速度。预处理结束后,将成像图片输入到网络中。表6统计了该网络模型对所有验证数据集的检测准确率。
图8 不同信噪比合成信号(上)及其成像结果(下)(a)无噪合成信号; (b)弱噪声合成信号; (c)强噪声合成信号
图9 LG172井监测数据(上)及SET结果(下)(a)弱噪声信号; (b)强噪声信号1; (c)强噪声信号2
由统计结果可以看出,该残差网络模型对合成信号的各种数据集都具有较好的检测效果,而对于实际井的监测信号,其检测效果变差。在有强干扰的数据集Q和R中,检测准确率为90%,说明强干扰会影响有效微地震信号的SET特征。而对于完全由背景噪声构成的数据集S和T,检测准确率为85%左右,即有15%左右的背景噪声信号被判别为包含有效微地震信号,也有可能是在时域上看不到明显微地震信号的背景信号,实际上是包含了被噪声淹没的有效信号,类似图8b、图8c和图9b、图9c的情况。
从测试结果看出,用合成信号SET图片训练的网络模型可以检测实际油井压裂监测数据的SET数据中是否包含有效微地震事件,只是对于低信噪比信号或背景信号的检测准确率有所降低,如果将实际微地震监测信号的SET图片加入训练样本,应该会进一步提高检测的准确率。
图10 N203井监测数据(上)及SET结果(下)(a)弱噪声信号; (b)无噪声信号; (c)强噪声信号
表6 模型检测准确率及检测用时统计
3.2.1 数据集的扩充及网络性能
本文筛选了LG172井和N203井微地震实际监测数据扩充模型训练样本,其中LG172井实际监测信号400段,N203井实际监测信号400段,监测信号中强噪声干扰数据段占比50%。经过分组处理后得到含微地震事件的监测段共400个,生成微地震事件成像图400张,背景噪声成像图400张。为了加快网络运算速度,对成像图进行预处理,将402×402像素成像图样本的尺寸缩放为131×131。之后对表2中的数据集进行扩充,按照3∶1的训练、测试比随机挑选400个样本扩充合成训练集,挑选400个样本扩充测试集。扩充后的数据集分布如表7所示。
采用与合成信号相同的网络模型及训练方式,若时域上微地震信号较明显或SET图片上存在较明显的能量焦点,则认为该监测段存在有效微地震信号。将扩充后的数据成像图输入网络,经过多次测试,得到图11所示训练过程的检测准确率曲线。
3.2.2 实际信号检测结果及分析
采用上一步扩充实际监测信号训练的残差网络及参数,输入表5中实际信号验证数据集进行检测。表8统计了该网络模型对实际信号验证数据集的识别准确率和检测时间。
由实验结果可以看出,该网络模型对实际信号均具有较好的检测效果,说明模型具有良好的泛化能力,适用于微地震事件识别与定位方法。
将本文残差网络与CNN(13层)和Inception V3m[27-28]网络模型进行对比。实验测得当CNN网络深度为13层时,其识别SET效果最好,CNN(13层)网络模型参数见表9。Ivanov等[28]提出的Inception V3m网络模型在进行小数据集图片分类方面具有比较好的效果,其网络模型参数见文献。分别对这两种网络进行调参得到优化后的网络模型。采用实际监测数据集对3个网络进行训练,得到对应的准确率曲线(图12)和平均迭代训练时间曲线(图13)。
表7 扩充后的SET数据集
表8 扩充训练后检测准确率和用时统计
图11 扩充数据训练过程检测准确率曲线
训练完毕后保存网络设置,将所有实际信号验证数据集整合到一起并输入三种网络,得到验证数据集的准确率、检测时间统计结果(表10)。
表9 CNN(13层)网络模型参数
图12 三种网络的准确率曲线
表10 三种网络实际信号数据集的检测结果统计
图13 三种网络的迭代训练时间曲线
由表10可以看出,基于残差网络的SET方法具有最快的迭代训练和检测速度,具有很好的识别效果和泛化能力。因此,SET成像与残差神经网络结合的方法可以应用于实际水力压裂过程中检测及定位微地震事件。
传统SET方法在后置处理过程中存在一定的局限性,即需要人工筛选SET结果,难以完成海量数据的微地震事件检测、定位问题。本文提出基于残差网络和SET的微地震事件检测方法,首先对合成信号和实际油井的监测信号进行SET,构建SET样本数据集,包含有效事件信号和无效背景信号及其分类; 然后分别用合成信号和实际微地震监测信号对残差网络训练和测试; 采用训练好的残差网络对不同信噪比的合成数据以及川渝地区两口油气井微地震压裂信号进行事件检测及定位。取得以下几点结论。
(1)在实际监测过程中,由于地层反射、吸收等因素,微地震震源发出的地震波可能会产生复杂畸变。而合成信号采用完全理想的地质模型,因而不会产生畸变。另外,根据检测结果可以看出,实际数据中噪声更复杂,应该扩充背景噪声的数量,使用实际信号训练残差网络。检测结果显示本文所提方法能够检测和定位不同信噪的实际微地震事件。
(2)采用传统卷积神经网络方法识别SET图像时,因其挖掘深层特征的能力不强造成识别效果不佳。引入残差块以及批量归一化方法后,不仅可以有效提高网络的识别效果,而且可以降低训练及检测的时间。另外,LG172井、N203井的检测结果说明本文所提方法可以在实际水力压裂过程中检测、定位微地震事件。
此外,与常规方法相比,文中所提方法无需人工设定阈值,在训练过程中可自动提取特征; 面对海量数据可以利用地震传感器对裂隙进行实时监测,为工程测量提供补充信息。