沈煜佳,陈夕松,夏 峰,姜 磊
(1.东南大学自动化学院,江苏南京 210096;2.南京富岛信息工程有限公司,江苏南京 210061)
在采油工程领域,抽油机是机械采油时代最主要的开采设备,开发抽油机井工况检测诊断系统对于管控油田采油作业的安全高效进行、提高油田产量具有重要意义。在目前大数据背景下,通过深度学习网络提取示功图特征并建立诊断模型,实现示功图的工况监测、异常识别与自动诊断已逐渐成为抽油机故障诊断技术研究的重要方向[1]。
由于地质情况等条件的影响,大部分抽油机示功图都难以接近工程原理中标准工况下的示功图。以典型示功图为分类标准进行故障诊断往往会导致多数识别结果为异常,误报率较高。出于工程适用性考虑,目前业内通常以抽油机长期平稳运行时的示功图作为该设备的标准示功图,只有出现与之不相似的示功图时才判定检测到故障。常用的重叠面积法[2]、统计分析法等相似识别方法虽能实现故障检测,但仍需工艺专家进行标定或通过进一步训练来诊断故障类型。为解决上述问题,本文研究了基于深度学习相似识别的抽油机井故障检测与诊断一体化方法,能通过识别示功图变化检测故障,并检索出故障特征库进行诊断,指导油田科学稳定生产。同时,通过数据融合的方式提高相似匹配模型准确率,具有较好的应用价值。
采用深度学习网络提取示功图特征进行训练,首先需要对示功图原始二维数据进行预处理,然后依据图形相似性对示功图样本集进行分类,建立二分类和三元组模型的训练集和验证集,分别输入对应网络训练,获得二分类和三元组相似识别模型。最后建立抽油机的标准库与故障库,应用训练好的模型进行实时故障检测,并在故障库中检索故障类型以实现诊断。
对示功图原始数据进行数据预处理、坐标归一化并映射到网格中,采用OpenCV 将示功图二维原始数据转化为图像输入。主要步骤如下:
(1)由于传感器等不稳定因素,抽油机的示功图原始二维数据可能存在部分异常数据,因此需要进行异常数据过滤处理,主要包括位移或载荷数据为空、全为零或近似为零、位移与载荷数据采样点数不一致、位移超出最大冲程或载荷超出最大载荷、生产设备故障五类。
(3)新建的m×n 二维网格,将坐标归一化后的二维数据映射到网格并向下取整,得到网格化后位移、载荷数据对应的二维像素点数据和:
式中:m 表示每个示功图原始样本数据集中位移x和载荷f 的采样点数,j 表示样本数据的第j 个数据点,在相似识别这类细粒度分类的问题中,为兼顾图像特征量和计算量,一般设置n=224,作为深度学习神经网络的输入层大小。
(4)将示功图二维坐标点两两相连至最后一点,最后将首尾相接形成示功图封闭曲线。
本文方法融合了二分类和基于三元组损失的相似识别模型。其中,二分类模型建立过程主要包括如下步骤:
(1)以示功图图形相似性为依据,将示功图样本集分为不同类别的子样本集,各子样本集互不相交且并集为整个集合,类别内的示功图彼此相似,类别间的示功图彼此不相似,并采用增加随机扰动的方法进行数据增强[3],均衡样本数量较少的类别。
(2)在每个类别内确定由工艺专家标定的标准示功图,即锚点。
(3)以对第1 类示功图为例,对类内除锚点外的示功图进行无放回抽样,用两种颜色将锚点和随机选取的示功图叠加绘制成同一张图像,重复此步骤得到二分类正样本集,标签τbinary为1;相反地,将任一类示功图锚点与对类外任意样本类别进行无放回抽样所得的示功图叠加绘制成同一张图像,重复此步骤得到二分类负样本集,标签τbinary为0。
(4)采用留出法将总样本集划分成训练集和验证集,采用Caffe 下的ResNet50 网络为基础进行数据训练和验证。激活函数为ReLu,池化方法为Max pooling、Global Average pooling,优化算法为SGD,损失函数采用SoftmaxWithLoss 函数,其余训练参数(见表1)。
(5)将训练好的二分类模型部署到各台抽油机的边缘计算网关。
表1 二分类网络训练参数
基于三元组损失的相似识别模型建立过程主要包括如下步骤:
(1)采用留出法将前述分类后的相似性样本集划分训练集和验证集,采用Caffe 下的ResNet50 网络为基础进行训练和验证,激活函数为ReLu,池化方法为Max pooling、Global Average pooling,优化算法为SGD,batch_size 为24。
(2)在全连接层后得到特征向量[4],引入L2NORM层求出L2 归一化的单位特征向量。
(3)在L2NORM 层后引入三元组选择层,从分类后的相似性样本集中随机选取类别p 并从中随机选取l 个图像作为原始示功图锚点集合A,对A 内的每一个锚点,随机选择类别p 内的样本作为正样本,随机选择除p 类外任意类别并从中随机选取负样本,得到三元组(),重复上述步骤得到三元组集合T=。
(4)在三元组选择层之后引入三元组损失[5]层,损失函数为:
式中:α 表示三元组损失边距值,+表示[]内的值大于零的时候,取该值为损失,否则取损失为零。计算参数梯度并进行反向传播,更新网络参数。
(5)将训练好的三元组相似识别模型部署到各台抽油机的边缘计算网关。
使用训练好的相似识别模型进行抽油机故障检测,采用数据融合的方式分析检测结果,并由工艺专家标定抽油机设备的标准库与故障库,对故障示功图进行实时诊断,流程(见图1)步骤如下:
(1)对任一抽油机设备,由工艺专家标定其标准示功图库与故障示功图库,输入三元组相似识别模型转换为标准与故障示功图特征库,并将故障信息记录在油井信息库中。
(2)实时采集抽油机示功图数据,过滤异常数据并进行预处理生成示功图。
(3)根据设备生产参数进行预检测,若出现示功图最大、最小载荷变化超过基准值,或是示功图面积小于基准面积的情况,直接判断检测到故障,计算特征向量并转入步骤(5)。
(4)将实时示功图与标准示功图以叠加绘制样本与样本对的形式分别输入二分类模型和三元组相似识别模型,得到分类标签τbinary和余弦相似度ξ+,ξ+超过标定阈值Th 时对应不相似标签τtriplet=0,否则对应相似标签τtriplet=1,若τtriplet=τbinary=0 则判定检测到故障。
(5)对检测到故障的示功图进行故障检索:查询计算实时示功图特征与各故障示功图特征之间相似度ξ-,若ξ-均超过标定阈值Th,表示检测到新故障,需要标定并更新故障库,否则返回相似度最高的故障示功图对应的故障信息,进行报警并通知现场人员采取措施。
本文选取某原油开采企业20 台抽油机的示功图原始数据进行实验,该企业油田环境复杂,抽油机出现供液不足、平衡块过重等故障的概率较高。以2019 年6 月至2020 年7 月的数据构建训练集、验证集及对照测试集,分析本文方法对抽油机故障的检测与诊断作用。
选取2019 年6 月至2020 年6 月之间的示功图数据进行预处理,以示功图图形相似性为依据,将示功图样本集划分为42 个不同类别,选取其中34 个类别并采用增加随机扰动的方法均衡样本数量较少的类别,总样本数为174 398 个。
采用前述方法选取样本对进行叠加绘制,构建二分类样本集,共计112 342 个,其中正样本集58 659个,负样本集53 683 个。划分出10 000 张样本作为验证集,其余作为训练集,输入二分类网络进行训练,训练集和验证集损失率(见图2(a))。在34 个类别的样本中划分出6 008 个作为验证集,其余168 390 个作为训练集,输入基于三元组损失的相似识别网络进行训练,训练集和验证集损失率(见图2(b))。
图2 训练结果
图3 对照测试集示例
表2 融合二分类和三元组的测试结果
以2020 年7 月的示功原始数据作为测试数据并进行示功图预处理,为验证模型的泛化能力,引入未用于训练的8 个图形类别的示功图样本加入测试数据,由工艺专家标定各台设备的标准示功图库与故障示功图库,生成基于三元组和二分类模型的对照测试集。两个测试集样本均为8 833 个,图3(a)、图3(b)为对照测试集示例。
标定生产参数预检测的基准值为标准值的65%,三元组相似识别阈值为0.95,输入本文模型进行测试,故障检测准确率及诊断结果示例(见表2、表3)。
由表2、表3 可知,本文方法能够对抽油机井故障起到较好的检测作用,并能在检测到异常时检索故障库实现故障类型检索与更新,可以帮助油田现场人员及时发现设备故障并采取措施,这对管控生产、稳定产量具有十分重要的意义。
本文提出了一种基于相似识别的抽油机井故障检测与诊断方法,融合二分类网络和基于三元组损失的相似识别网络,检测出与平稳工况下的示功图不相似的故障示功图,减少了故障误报与漏报。同时,通过建立故障特征库,在检测到异常工况时能够检索故障特征库实现故障类型诊断。实验结果表明,该方法能够有效识别示功图趋势变化,检测抽油机故障并诊断出故障类别,提供了一种抽油机井故障检测与诊断的解决方案。