李昌华,张学龄,杜小芸,郭志阳
(1.长江大学石油工程学院,武汉 430100;2.中石化石油工程设计有限公司,山东东营 257026;3.油气钻采工程湖北省重点实验室,武汉 430100)
井漏一直是钻井研究的主题,事故一旦发生,不仅影响勘探开发的进程,还可能导致井眼报废,甚至造成严重的人员伤亡事故,处理井漏的最好办法就是人为抑制发生,但目前预测方法仍不成熟。
常规判断井漏的测井技术有自然伽马测井、自然电位测井、井径测井、井温测井、成像测井等。井漏位置计算的主要方法有正反循环测试法、井漏前后泵压变化测试法、注低密度钻井液找漏层位置、循环时差法等。分析井漏发生的条件可以归纳为:钻井液性能、漏失压差和漏失通道的性质。范翔宇等[1]对DN气田的漏失层位进行确定时发现,在钻井液性能发生变化时,仅依靠钻井不能准确确定漏失层段,还需要依靠测井手段来解决问题。陈钢花等[2]利用改进立压变化法计算井漏层位。改进的方法需要钻井液以及井眼的相关参数,达到较高的准确率,但钻井液参数测量分辨率较低,使得计算结果误差很大,难以在现场推广应用。昌犇[3]利用电阻率、井温等多条测井曲线以及成像测井法对红河油田进行分析,可判断正在漏失和漏失时间不长的层位,确定漏失层段;成像测井在此基础上可确定漏层的特征和漏失通道的性质。传统确定漏失层位的方法依赖专家经验,技术可复制性差,难以避免地造成钻井液的损失和油层的污染。同时,分析过程所需数据资料多,计算复杂,难以及时有效地确定漏失层位,无法满足深井复杂地层的钻探安全需求[4-5]。
随着机器学习在油气领域的进一步发展,信息化、智能化成为油田企业新的建设方向。深度学习作为机器学习中最重要的一个分支,对数据处理具有独特的优势,从业者已在油气各领域展开了研究[6-8]。涂曦予等[9]以录井观测日志为数据支撑,利用自然语言处理方法,基于Xgbost 算法建立了井漏事故预警模型;王雷雯[10]选用生物地理算法结合BP神经网络建立漏失层预测模型,通过该算法得到网络初始权重和阈值来训练神经网络,得到了较为准确的预测结果。Arehart[11]利用神经网络开展钻头故障的研究,Ben等[12]利用随机森林算法等混合模型实现钻井状态的实时识别。卷积神经网络是受生物视觉机制启发而来的一种高效信息识别模式,具有局部区域连接、权值共享、降采样等特点,在一些领域已经开展了丰富的应用,但运用该方法预测井漏问题的案例较少。
本文建立卷积神经网络预测井漏模型,利用图像识别对数据进行分析;对数据进行预处理,增加有效数据;将特征物理数值转化为数字图片,直观了解漏失图像;结合现场数据将传统思路与本文方法进行对比,表明本模型的合理性与可靠性。
本数据来自某油田A 区块,该油田为奥陶系碳酸盐裂缝-洞穴型油藏,储层埋藏深度超7 km。该地区地质结构复杂,受断裂运动影响,易发生垮塌漏失事故,部分井甚至还发生过严重的连续漏失事故。通过对测井数据进行统计,本文选取解释井漏所需的特征值,同时所有井中共有的特征量制作数据集。包括伽马值、自然电位、泥浆电阻率、声波时差、钻时、井温、井径等特征量。漏失记录中,详细记录的有效数据有57处。通过研究井史资料,现场平均每天钻深30 m,因此统计漏失前30 m数据作为预警数据,综合分析下方地层的漏失风险,共计54 处有效样本,其余视为正常数据。数据处理过程如下:
(1)归一化。为消除原始数据中量纲和取值范围对结果的影响,使网络能正常响应不同的输入信号,为便于综合分析,利用线性函数对输入数据进行归一化处理,将其转换到[0,1]的范围。此外,归一化还能加快网络的学习速度。选用最小-最大归一化函数
式中:X为原始数据;Xnorm、Xmin和Xmax分别为归一化后的数据、数据集中的最小和最大值。
(2)数据增广。根据统计,有54 处漏失前的有效样本,不利于神经网络训练出足够好的参数。为增加有效数据,通过对数据进行翻转处理增加伪样本数量。其他则为测井数据中筛选得到的正常数据。按照3.5∶1合理划分训练集与测试集的数据量,共计900 例。数据集制作结果见表1。
表1 数据集组成
(3)数字图像化。为方便观察井漏特征,将特征量转化为数字图像。图像在计算机中是由矩阵排列的多个像素点组成,每个像素点有一对应的数值表示该像素点的亮度,这些像素点阵的数值构成了一个离散函数:
式中:i取值范围为[1,N];j为[1,M]。
以该区块中A-1 井为例,该井有效数据深度910~9 396 m,多次发生漏失,将归一化后的测井数据转化为数字图像如图1 所示。该井漏失图像与预警图像如图1(a)所示,由于漏失3、4,漏失6、7 处深度相距较近,将包含两处漏失的前30 m数据区间并为一处。每个小图片对应300 ×7 的数据段,逐个把数据段转化为单个图片后,拼接得到单井数字图像如图1(b)所示。
图1 测井数字图像
卷积神经网络中,卷积核参数被输入层数据共享,大大减少了权重的数量,降低了网络的复杂度。卷积核类似于窗口,以固定的大小、步幅按照数据的轴向顺序依次滑动,持续计算。利用数据间的局部相关性,卷积核不断提取数据的有效信息。测井数据的卷积过程如图2、3 所示。
图2 数字图像卷积过程
1.2.1 CNN结构
卷积神经网络中卷积层拥有多个小型滤波器,它们在加深网络的同时,分析邻近及相距较远的数据之间的关联,更好地利用数据的隐藏信息,得到输入数据或图像的多个特征,池化层进一步提取图像重要信息。原本复杂的曲线数据通过CNN处理,避免了人工提取特征的过程。卷积过程扩大了神经元处理数据的范围,提高模型的容错性。建立的卷积神经网络构成如图3、4 所示。
图3 卷积计算图
图4 卷积神经网络
全连接层(Affine)对输入数据进行了抽象处理,通过特征数据的线性组合去判断提取到的信息是否正确;神经网络计算得到的数值,相当于对特征关系强弱的描述,即数据间的相对联系。根据传入数据的形状,将相邻神经元连接在一起,决定模型输出的格式:
式中:wij(l)为该神经元的权重;xj(l-1)为上一层神经元的输出;bi(l)为偏置。
全连接层中隐藏层节点数为
式中:mi为输入层节点数;mj为输出层节点数。经分析与尝试,本次隐藏层取55 层。
损失函数选择交叉熵误差函数,N个数据的交叉熵误差[13](损失函数总和),即
式中:ti,k为正确解标签;yi,k为神经网络的输出。
1.2.2 参数的优化
(1)参数优选。由于损失函数复杂,参数空间庞大,为同时保证模型准确率和加速模型的收敛速度,需要得到最优参数搭配。为使梯度下降到全局最优,优化器使用由动量梯度下降法和RMS算法结合的Adam优化算法。
卷积层激活函数使用ReLU 函数,权重初始值使用He初始值分布,即标准差为0.01 的高斯分布。通过构建多个神经网络模型发现,增加神经元层数要比增加神经元数量可得到更快的收敛速度,最终参数取值见表2。
表2 网络参数表
(2)抑制过拟合以提高模型的泛化能力。很多情况下权重参数取值过大导致过拟合的发生,在本模型中,为损失函数加权重的平方范数(L2范数)来抑制权重过大,防止过拟合的发生。则L2范数
式中,wi为权重值。
随着网络的复杂度增加,仅用权值衰减难以达到理想的训练结果。Dropout可有效地加快训练进程,初步训练趋势如图5 所示。图中横坐标为全部数据集完成一次前向和后向传播的次数,纵坐标为准确率。随着训练次数的增加,训练集和测试集的准确率持续上升且无过拟合情况。经过300 次迭代的初步学习,训练集和测试集的准确率如图5 所示,分别达到60%、50%以上。
图5 正则化后训练过程
测井记录每0.1 或0.125 m 采样一次,最终每口井均包含数万行的记录数据。井漏的发生,都有一些与之响应的先兆,利用现代工程技术实时监测采集这些信息,可归纳为:泥浆池液面下降;钻井液密度增大;钻时明显减小等。分析图6 发现,在左图测井曲线中:自然电位、声波时差等数据变化异常,电阻率、钻时出现增大趋势,通过数据分析、专家研判后得到漏失深度位于4 169 m处。传统方法只能在漏失发生后进行研判,费时且工程损失较大。
图6 漏失段数据图
卷积核在降低数据维度的过程中,对区间井深的特征数据进行了综合计算。本模型以30 m 深度数据量作为单个输入数据对漏失事故进行预测,相比单行数据,神经网络提取到关于该区域内更综合的工程信息,同时使模型的预测结果具有更高的容错力。以测试集中A08 井2 次漏失,A14、A19 井各一次漏失(均未参与训练)为例,在施工过程中,模型实时根据当前深度至上方30 m 区间测井数据分析下方地层状态。在到达事故地层前,模型发出警告信息。
由测井数据转换为图像后,从另一角度体现特征量的变化情况,将测试集中的部分发出预警的数据段可视化后得到预警图像见表3。预测对比测井曲线与对应预警图像发现,不同深度所对应的图像中主色彩存在差异。漏失前30 m 所处的深度区间中的特征量数值波动时,预警图片在对应高度上的色彩出现了分层渐变的现象。针对这类数据,卷积神经网络可快速地分析特征变化,通过模型的前向与反向传播,在训练过程中逐步强化对特征值的响应,从而识别到正确的漏前特征。
表3 测井曲线与预警图像对比
如图7 所示,训练过程中,对训练集全部数据迭代一轮后,利用测试集数据计算模型的准确率。经过多轮训练,模型对下方地层情况的判别能力逐步提升,训练集准确率达到90%以上。将未参与训练的测试集传入训练好的模型发现,测试集的平均准确率达到了91.5%。
图7 CNN模型训练结果图
最终识别情况见表4。训练结果表明,模型可根据当前30 m特征数据对下方地层及时发出预警信息,对漏失情况进行准确判断。
表4 模型对不同工况识别准确率
(1)设计了一套适合神经网络的数据处理方法,选取预测所需的地质、工程、流体相关的7 个特征量,对数据进行增广后解决了样本偏少的问题,模型的表现说明了参数选取与处理方法的可靠性。
(2)使用图像处理的方法,将测井数据可视化,以图片形式理解数据的变化,了解数据处理情况和卷积核的特征计算流程。图像特征与数据变化相对应,对数据分析增加了新的角度。
(3)使用多口不同深度的井漏失数据对模型进行训练,模型可对不同情况下的风险识别具有较好的泛化能力;通过现场数据测试,模型对不同工况下测井数据预测的平均准确率为91.5%,可综合当前30 m的数据信息对下方井漏风险进行实时监测。本方法得到的结果与实际情况基本相符,具有一定的可行性,对工程中应对井漏事故具有一定的辅助决策意义。