logo
专注油气领域
与独立思考者同行

基于机器学习的油气资产评估方法研究

W-首图

利用机器学习帮助工程师识别目标和描述状态。

编辑 | 大安

在表面状态评价中,经验丰富的人员能够快速识别缺陷或损伤,因此视觉检测是一种较好的无损检测方法(NDE)。然而,该方法的缺点在于缺乏对缺陷的目标量化及描述。通过利用机器学习(ML)、图像识别和目标检测的最新发展成果,作者探究了在识别目标与描述状态的算法上应用ML的可行性。

理论和定义

通过使用Tensorflow框架(Tensorflow是谷歌基于DistBelief进行研发的第二代人工智能学习系统,其命名来源于本身的运行原理。TensorFlow是将复杂的数据结构传输至人工智能神经网中进行分析和处理过程的系统,还是一个开源的机器学习平台[www.tensorflow.org])作为卷积神经网络(CNN)的ML工具来进行对象检测,无需改变原始代码。目的是提出一种带有图像的算法,进而使它通过ML检测目标对象。Tensorflow能帮助用户在ML过程中完成所有的数据管理与编程任务,进而执行算法优化。研究发现,多种算法均能达到目的,但CNN算法的效率值是最高的。

本文的版本被称为构建Inception ResNet v2网络结构的Faster R-CNN算法。该算法是为了提高检测速度而开发的,但是它也具备很高的准确性。该模型算法主要包括四个步骤。

  • 当检测目标时,算法输入整张图像作为卷积层(conv layers)来提取图片特征,输出为提取出的特征称为feature maps;
  • 图像被分解成多个目标区域。在这些区域中,最多可插入2000个边界框。算法可以预测目标可能的位置。
  • 边界框内的区域用作CNN的输入项,从而识别对象的不同特征。每个边框内的像素将转换成一个数值。
  • 分类和回归。输出是已知对象类的概率分布。呈现最高概率值的对象类会分配给相对应的边界框。

为了实现步骤2的预期结果,该算法可能需要在每张图像上都插入数百个边界框。为了优化步骤3和步骤4,需要为CNN算法给出它将学习检测的对象类的示例,这是通过在要检测的对象周围的边框标记数千个感兴趣的图像区域来实现的。这个手动给定的边界框称为ground truth(即有效的正确数据)。这些标记的图像存储在一个数据库中,并构成ML过程的基础,这将允许CNN算法学习每个对象类。然后,通过向CNN展示未标记图像,评估其在检测未标记图像上的目标时的表现来验证算法的有效性。

在训练CNN算法的过程中,使用的是手动标记的图像。CNN将执行第2步,并在图像上自主放置边界框。每个预测边界框内的图像像素被转换成数值并用作输入项。

基于这些通过CNN组合连接在一起的数百万个方程,CNN可以利用数百万个参数进行调整。当通过CNN处理源于预测边界框的值时,将输出概率和确定的对象类与训练图像中手动标记的ground-truth边界框进行比较。该方法利用预测偏差和ground-truth来修正方程的权值,从而提高了预测正确对象类的概率。这个过程需要重复数十万次,直到CNN开始收敛。这是对CNN机器学习算法过程的概述,在实际应用中,它能高效地完成运算过程。

为了评估CNN算法的性能,必须给定两项参数,即总损失函数(total loss function)和平均精度(AP)。如果CNN表现良好,那么总损失函数应该收敛到零。训练CNN算法即与该参数有关系,通过调整方程权重来实现总损失函数的最小化。AP表示一个对象类的所有预测与成功预测的数量之比,较高的AP值意味着CNN在预测给定的训练数据集上的对象方面表现良好。在训练过程中,如果CNN自主放置的边界框与人工给定的ground truth之一有50%的重叠,则表明该算法是可以进行成功预测的。

数据和结果

从前面描述的数据集中,CNN使用每个对象类90%的数据进行训练,余下10%用于验证。这项工作的主要目的是验证CNN能否根据油气工艺设备的相关类定义进行目标检测。主要结果是CNN根据定义的类,在相关对象周围给定出带有边界框的图像。此外,还进行了一项测试,以调查数据集大小造成的影响。在数据集减少50%的基础上进行训练,直到总损失函数收敛到一个稳定的值。

当用更大的数据集对CNN进行训练时,预期通过AP值可看到性能的提升。但在这项研究中,情况并非如此,CNN在若干项对象类的结果预测中表现较差。目前还未能调查清楚造成这种异常结果的原因是数据集的质量或大小问题,还是因为算法训练不够充分。通常,若干项对象类的数据集仍被认为过小,结果显示总损失函数不收敛,而是出现不断增大的峰值,并在调整CNN参数时产生噪波。

在图1和图2中,CNN预测的边界框为白色,人工插入的ground-truth边界框为黑色。

W1

表1  CNN显示多类检测结果,未能检测到图像中所有给定的对象类。

W2

表2  CNN显示在良好的视觉条件下检测焊缝。它不能对所有焊缝进行100%的检测,但对选定的区域提供了准确的定义。

结论

如果油气行业希望在未来引进用于设备检测与维护的智能机器人,就有必要使这些机器了解它们周围的环境。为此,在评估图像和AP值所示结果的基础上,对CNN算法和ML框架进行了训练,以识别与油气工艺设备检测相关的目标类。AP值和总损失函数表明,应当增大数据集的规模,从而提升算法的性能。ML和CNNs可用于改善工艺设备检测效率,但算法的性能表现还有待进一步强化。利用自动化系统,缺陷识别率仅为10%,这显然不能令人满意,检测精度必须提高。

未经允许,不得转载本站任何文章: