刘宝军
(中国石化股份有限公司胜利油田分公司 信息化管理中心,山东 东营 257001)
抽油机因其结构简单、管理维护简便、运行成本相对较低而在国内应用广泛,一直占据着有杆泵采油的主导地位,确保抽油机井正常平稳生产运行是确保油田产量和经济效益的重中之重[1]。目前抽油机井示功图诊断方面绝大多数采用功图灰度特征、位移/载荷特征、几何不变矩等方法,在进行计算时需要引入工程修正系数或业务专家经验,降低了特征的敏感性,对于功图之间细微的差异性表征不明显,存在进一步提升的空间。
在目前大数据背景下,卷积神经网络在图像的分类识别领域取得成功,尤其是在手写体识别、人脸识别等图形识别领域具有良好的识别效果[2]。作为神经网络领域的一个重要分支,卷积神经网络的特点在于其每一层的特征都由上一层的局部区域通过共享权值的卷积核激励取得。这一特点使得卷积神经网络相比于其他神经网络方法更适合应用于图像特征的学习与表达[3]。结合目前主流的CNN卷积神经网络技术,通过将油井生产参数图形化,并结合地面、井下功图散点图形,建立示功图诊断模型,实现单井功图自动诊断、异常报警,能够更加准确高效地识别油井工况问题,更有针对性地采取优化措施。
抽油机井地面示功图是由悬点载荷与位移构成的图形,其中掺杂着油杆与井筒的摩擦及震动等干扰信号,不能准确描述抽油泵的工作状态。功图图形特征抽取时需要同时考虑到地面功图和井下泵功图的工作状态及图形,以便充分表征各类特征。
1.1.1 井下泵功图仿真方法
S.G.Gibbs于1963年提出有杆抽油系统的行为预测模型,并于1977年对该法进行了总结归纳。根据Gibbs方程可将悬点示功图转化为泵功图[4]。应力波在抽油杆柱中的传播过程可用带阻尼的波动方程
进行描述。
由于引起示功图形状对称变化的相同强度的2种或2种以上设备故障同时发生的几率很小,所以可以用差分曲线描述抽油泵示功图[5],采用有限差分数值解法精细求解波动方程,实现井下泵功图仿真,如图1所示。
图1 井下泵功图仿真Fig.1 Simulation of pump indicator diagram
1.1.2 功图图形特征抽取方法
对井下泵功图和地面示功图采用灰度网格技术将功图散点围成的封闭曲线映射到40*30的网格内,转化为向量输入。主要过程如下:
1)将原始功图散点分别按照位移、载荷整理为2个数组;
2)对每个数组分别进行归一化处理,将数值范围规范到(0,1)之间;
3)合并上述2个一维数组到二维数组xy;
4)新建一个40*30的二维数组,将上述数组xy按照坐标值点,映射到此40*30的网格内。对于通过网格点的数据点填充1,其他非通过网格点的数据填充0;
5)遍历上述网格数据,参照灰度共生矩阵的方式将0和1组成的矩阵数据转为特征数据,以表征出功图散点之间细微的差异;
6)重复步骤1,将泵功图也做同样处理。
映射完成后的数据如图2所示。
其中灰度共生矩阵的求解方法为:在图像中任意一点(x,y)及偏离它的一点(x+a,y+b)(其中a,b为整数)构成点对。设该点对的灰度值为(f1,f2),假设图像的最大灰度级为L,则f1与f2的组合共有L*L种。对于整个图像,统计每一种(f1,f2)值出现的次数,然后排列成一个方阵,再用(f1,f2)出现的总次数将其归一化为出现的概率P(f1,f2),取上述方阵中出现的次数作为网格输出。
1.1.3 生产参数图形化方法
单纯用示功图图形进行油井工况诊断时,对于功图形状接近的工况无法进行有效区分,例如供液不足与气体影响工况,其图像十分接近,如图3所示。此时就需要根据单井产液量、动液面、油套压等参数,对这2种工况进行区分。
图2 功图特征数据Fig.2 Schematic diagram for feature data of pump indicator diagram
图3 供液不足与气体影响示功图Fig.3 Indicator diagrams influenced by insufficient liquid supply and gas
选取油井产液量、含水率、油压、套压、冲次、井口温度、耗电量7个生产现场容易获取的参数用于工况诊断,为配合CNN卷积神经网络的输入数据要求,进行图形化处理,主要过程如下:
1)抽取当前油井历史上3个月的生产资料,从中获取7个一维数组;
2)为保证输入样本的量纲和数值范围一致,按以下范围将生产数据进行归一化:产量120,含水100,油压2,套压2,冲次10,井口温度50,耗电量300;对于超过数值范围的参数,取为1;
3)以时间为横轴、参数为纵轴形成二维数组,并映射到50*30的网格内,映射方法与功图图形特征抽取方法一致;
4)重复步骤2以便将7个所需参数都转为矩阵数据。
1.2.1 卷积神经网络技术原理
在机器学习中,卷积神经网络是一种深度前馈人工神经网络。一般地,CNN的基本结构包括2层,其一为特征提取层,每个神经元的输入与前一层的局部接受域相连,并提取该局部的特征。一旦该局部特征被提取后,它与其他特征间的位置关系也随之确定下来;其二是特征映射层,网络的每个计算层由多个特征映射组成,每个特征映射是一个平面,平面上所有神经元的权值相等。特征映射结构采用影响函数核小的sigmoid函数作为卷积网络的激活函数,使得特征映射具有位移不变性。此外,由于一个映射面上的神经元共享权值,因而减少了网络自由参数的个数。卷积神经网络中的每一个卷积层都紧跟着一个用来求局部平均与二次提取的计算层,这种特有的两次特征提取结构减小了特征分辨率。典型的卷积和池化过程如图4和图5所示。
通过卷积-池化过程完成图形特征抽取后,最后使用全链接的神经网络进行样本的学习,将知识以权值和阈值的形式存储在网络中,网络的输入是被诊断对象的征兆即特征值, 输出则表示发生故障类型的概率值,通过训练逐层修改权值和阈值获得均衡收敛,使网络的分类性能收敛到最佳点[6]。
1.2.2 CNN工况诊断模型
根据示功图形状和油井生产情况,可将油井工况分为以下几类:正常、供液不足、气体影响、杆柱断脱、偏磨、抽喷、泵漏、出砂、气锁等,如图6所示。
利用计算机程序进行功图识别和诊断的核心是得到抽油杆的各个截面示功图和泵功图,通过示功图的形状特点,选择和提取最能反映示功图形状信息的特征量,从而实现快速、准确地识别示功图以对整个油井生产系统的工作状况进行分析和判断[7]。采用CNN卷积神经网络图形识别技术,建立示功图诊断样本库, 利用油井功图和生产参数对油井工况进行诊断分析。
图4 卷积过程Fig.4 Schematic diagram of convolution process
图5 池化过程Fig.5 Schematic diagram of pooling process
图6 典型工况Fig.6 Indicator diagrams of typical working conditions
相较于传统的图形识别方法,卷积神经网络通过多层网络结构可以学习到原始图像的最高层的特征,这些特征对于数据本身是更本质的表达[8]。当前常见的卷积神经网络模型包含输入层、卷积层、激活层、池化层、全链接层和最后的输出层。应用于功图诊断的卷积部分的网络结构如图7所示。
一般情况下,卷积神经网络以原始图像为输入,在卷积层中将前一层的特征图与一个卷积核进行卷积运算,卷积的结果经过激活函数映射后形成下一层的特征图。
池化层经常周期性地插入在连续的卷积层之间,池化单元计算特征图中的一个区域的值,相邻的池化单元通过移动一行或者一列从一小块区域上读取数据。这样就可以对特征图进行降维,在一定程度上保持了数据的平移不变性,减少了网络中的参数数量和计算量。
图7 卷积过程架构 Fig.7 Convolution process architecture for indicator diagram diagnosis
最后,卷积神经网络依靠全链接层对提取的特征运用回归模型进行分类识别[8]。
以典型的LeNet5模型为基础,将原始示功图数据进行归一化处理,随后转换为灰度图形并进行数字化输出,输出结果中功图线段所在的网格为1,空白网格为0,组成了高度30*长度30的网格数据。随后采用tensorflow的CNN模型进行数据处理、训练和验证工作,训练参数如下:
激活函数 ReLu;
池化方法 Max Pooling、Mean Pooling;
优化算法SGD,batch_size= 64,momentum= 0.9,lrate= 1e-4;
损失函数cross-entropy;
Dropout 0.5。
训练完成后,将基于图形卷积的CNN模型的诊断结果转化为业务上由专家定义的工况类型,再根据现场经验进行部分工况的修正与剔除。例如,若模型的输出为“下偏磨”和“出砂”,则根据业务规则识别下载荷线的震动频率,若频率小于专家经验界定的某个常数,则剔除“出砂”工况,保留“下偏磨”工况。
利用计算机程序对抽油机井示功图进行诊断识别的过程:
1) 首先判断图形形状是否正常,将由于传感器采集错误或传输错误的功图剔除掉;
2)对生产参数进行归一化处理,转换为能够被卷积神经网络识别的标准化图元;
3)对图形进行归一化处理,转换为能够被卷积神经网络识别的标准化图元;
4)将样本导入基于图形卷积的CNN模型进行训练,获取训练结果;
5)将待诊断功图特征量导入训练好的CNN网络进行运算,获取输出数值;
6)根据专家经验处理神经网络的输出结果,并输出最后确定的工况类型。
基于上述模型和诊断流程进行软件编制工作,软件包括数据处理、泵功图仿真、特征抽取、样本库训练、工况诊断等功能。基本结构如图8所示。
图8 工况诊断软件基本架构Fig.8 Basic framework of working condition diagnosis software
1)数据处理模块:负责处理油井工况诊断和建立样本库所需的数据,包括基础、生产、管杆、井斜、物性、功图数据包等共30余项参数;
2)泵功图仿真模块:基于油井数据和三维波动方程,采用有限差分数值解法实现井下逐深度处的示功图计算,送入特征抽取模块进行抽取后再送入样本库训练模块;
3)特征抽取模块:综合油井生产数据、地面示功图及泵示功图,采用卷积-池化方法进行特征抽取;
4)样本训练模块:建立结构化数据库,存储各类工况的典型样本,并导入CNN网络进行特征学习训练;
5)工况诊断模块:实现抽油机井示功图在线诊断功能,结合专家经验可对16种常见油井工况进行诊断识别。
考虑生产现场的实际情况,在保证神经网络训练的可靠性和样本的均衡性的基础上,挑选了200口典型的抽油机井示功图作为训练样本,构建示功图诊断样本库,使用CNN功图诊断模型进行样本特征学习和训练。
应用训练完成的模型对某井进行泵功图仿真和工况诊断,结果如图9所示:功图工况诊断为供液不足(99.92%几率)。
图9 某井1工况诊断结果Fig.9 Diagnosis result of working conditions of well 1
对另一口井进行特征抽取和工况诊断,结果如下:功图工况诊断为上偏磨(99.98%几率)和下偏磨(99.94%几率)。
图10 某井2工况诊断结果Fig.10 Diagnosis result of working conditions of well 2
多个月连续跟踪该井的示功图均显示上下偏磨工况,且偏磨程度逐渐加剧。继续生产一段时间后由于腐蚀作用杆断躺井上作业。现场起出管柱后发现原井第38根油杆腐蚀断,第46~87根油杆偏磨1~2 mm,实际情况与模型诊断结果完全一致。
本模型调优后在现场进行规模化综合诊断与验证, 将模型诊断结果与专家人工诊断结果进行对比, 诊断的准确率有了较大的提高, 能够有效地对供液不足、漏失、偏磨等常见油井工况进行分析诊断。
利用CNN神经网络模式识别技术建立抽油机井示功图诊断模型,开发软件系统实现功图自动识别和诊断,是智能油田信息化发展的重要内容。与传统功图诊断方法相比,本模型将特征抽取交由成熟的卷积-池化技术进行处理,能够提高或改善特征细节;同时采用图形化的方法与生产参数相结合,尽可能地挖掘出更多工况判别依据,提高工况识别精度。随着模型在应用过程中的迭代完善,将有效提高抽油机井预警诊断及时率、准确率与工况管理水平。