Python机器学习算法KNN、MLP、NB、LR助力油气钻井大数据提速参数优选及模型构建研究...

news2024/12/20 11:39:44

全文链接:https://tecdat.cn/?p=38601

分析师:Huayan Mu

随着机器学习和大数据分析技术的发展,帮助客户进行油气行业数字化转型势在必行,钻井提速参数优选呈现由经验驱动、逻辑驱动向数据驱动转变的趋势。机械钻速最大化、机械比能最小化是钻井过程中常考虑的双目标,有利于提高钻头破岩能量利用率、降低非生产时间和钻井成本,而提速预测模型与钻井参数的优选是核心痛点点击文末“阅读原文”获取完整代码数据)。

一、任务/目标

评估主流分类算法,确定适用于实例井的最佳提速预测模型;构建提速评价函数,按地层优选关键参数取值范围。

  • 数据清洗与特征选择

2.1数据整体清洗

原始数据来源于某油田A井,共154810条钻井数据、55列特征项。数据预处理包括删除空值及无效值、删除冗余特征项、重复值检测、极端值处理,处理后共保留114973条非空数据、19列特征项。

经归一化处理后使用箱型图检测数据整体异常值,对部分存在异常值的特征项进行四次中位数迭代修正。数据整体异常值处理对比如图2.1和图2.2。

5508be3708d27ba11957fd42acaeb760.png

图2.1数据整体异常值检测箱型图

a5c1d5a0378ea854adf4085595b9e22a.png

图2.2 数据整体清洗后箱型图

2.2特征选择

使用清洗后的数据计算出两两变量间的互信息值并可视化为热力图(图2.3),根据机械钻速与各特征变量之间的互信息值大小,最终选择井深(0.75)、转盘转速(0.54)、钻压(0.52)、入口流量(0.47)、立管压力(0.31)、扭矩(0.22)、大钩负荷(0.21)共7个钻井参数作为后续模型的特征变量。

2d239e43ad18d8da546594f5f715bbf3.png

2.3机械钻速异常值剔除

使用孤立森林算法检测并剔除每个地层中的机械钻速异常值,T2k1地层数据从5971行筛选出5374行,T1b3地层数据从4516行筛选出4069行,T1b2地层数据从6470行筛选出5825行,T1b1地层数据从98016行筛选出88222行。对比分析剔除前后数据集中机械钻速(ROP)的取值范围、均值、标准差如表2.1,可知各地层机械钻速的标准差均减小,数据离散程度减小,有利于提高后续模型的精确度。

32ca80ecb63f7b042a433a79e0106670.png

  • 提速预测模型优选

3.1模型构造及评价指标

为进行提速效果评价,将常见的钻速回归按照给定的地层和钻头尺寸转换为二分类问题,即判断当前ROP是否高于历史ROP均值(若高于均值表示可提速),在剔除ROP异常值后的数据集中添加Class分类列,Class为1表示能提速,Class为0表示不能提速。

二分类模型的预测效果优劣通常用ROC(Receiver Operating Characteristic)曲线和AUC(Area Under the Curve)值来评价,ROC曲线以真正类率为纵坐标、假正类率为横坐标,是反映模型敏感性和特异性的综合指标,曲线下面积AUC值用于评价模型预测真实度(AUC值越大分类结果越符合实际)。

3.2建模预测与优选

对各地层使用K最近邻(KNN)、多层感知机(MLP)、朴素贝叶斯(NB)、逻辑回归(LR)等分类算法模型预测判断在指定钻井参数输入下是否能够达到提速效果,各模型的ROC曲线对比如图3.1。由图可知在A井4个地层中,K最近邻(KNN)模型的AUC值分别为0.91、0.90、0.96、0.97,多层感知机(MLP)模型的AUC值分别为0.73、0.45、0.77、0.68,朴素贝叶斯(NB)模型的AUC值分别为0.71、0.68、0.81、0.71,逻辑回归(LR)模型的AUC值分别为0.74、0.64、0.80、0.65。量化指标表明KNN模型在A井中性能最佳,因此本项目选用KNN模型预测提速效果。

a3623484d0cf553f2927900f50effebd.png

81c82ebeaf53b7c02296c8da3926be28.png

1c65ccbc058be92bed57897178393e53.png

1ed3c921647853835bf84912a7a76000.png


点击标题查阅往期内容

ec91eaa577389eeda65833e5f22e0eb8.jpeg

数据分享|R语言逻辑回归、Naive Bayes贝叶斯、决策树、随机森林算法预测心脏病

outside_default.png

左右滑动查看更多

outside_default.png

01

eced6454b45bd4740adde267e8a2de1e.png

02

984fa3bbb4abfe5f1cc42d4ba912e901.png

03

7c8d285595f31fe93bfd42890d468b92.png

04

6672f38709e047a1157f6e5e863390a8.png

  • 提速评价函数构建与参数优选

4.1提速评价函数构建

结合机械比能理论,假设在提速效果评价中钻压(WOB)权重为ω1ef9e2d8d7cfc941187377abd41e75dcb.png,转速(RPM)权重为ω2d5bb17b2516b355d1760faa831c47ec2.png,扭矩(TOR)权重为ω3e4ca5decdc5f3cc84d5f99316a089bb9.png,不同钻头直径(Db0a63cb6102ffacc0421cfd66c475351c.png)权重为ω487c31a0eba4960d89555bfdda554de64.png,构造目标为ROP最大化、MSE最小化的评价函数如下:2230137d35f6d000c8c338b14335c29a.png

化简得:

cdaaad668deb70d3d971aa60b257104c.png

随机森林模型训练过程中约有1/3的袋外数据没被利用,对袋外数据中所有样本特征随机加入噪声干扰能说明各特征对模型预测结果的重要性程度,因此式中各项权重依据随机森林回归模型的特征重要性确定。

4.2提速参数优选

以井深、转速、钻压、入口流量、扭矩、立管压力、大钩负荷作为随机森林回归模型的输入变量,输出变量为机械钻速,对A井4个地层分别预测提速评价函数中各参数权重。

表4.1给出了模型中特征变量权重值,对应各特征的重要性

2518c4f88f13a700c7d85fe69b78f3d3.png

在按地层划分的实钻数据表中添加评价函数列,并基于评价函数U从小到大排序,由预设优选率(假设为5%,若计算结果为小数则向上取整)进行筛选,各地层优选参数钻压(WOB,KN·m)、转速(RPM,r/min)、排量(Flow In,L/s)、立管压力(SPP,MPa)、扭矩(TOR,KN·m)、大钩负荷(Hook Load,KN)的取值范围如表4.2。

表4.2 提速关键参数优选范围

d43cf48a2d22e5d40301bb990dfad464.png

五、提速预测模型优选结果分析

基于A井的4个地层数据分别建立KNN模型,训练集和验证集按7:3划分,通过10折交叉验证设定超参数k的最佳取值为3。KNN模型对正类(Class=1,能提速)预测的性能评价汇总如表5.1,验证集中模型准确度为0.86~0.94、f1-score为0.81~0.94、加权f1-score为0.85~0.94,模型预测提速效果表现良好。在钻井施工前,可使用该模型预测判断钻井参数组合能否提速,有利于科学决策、规避风险。

表5.1 A井提速预测性能评价(KNN模型)

6b4805a5f4274a715685684ec13ec40a.png

六、 提速评价函数应用结果分析

优选前后各地层机械钻速(ROP)和机械比能(MSE)均值对比分析可视化如图6.1,可知优选后T2k1地层的ROP均值同比提高48.6%、MSE均值同比降低26.6%,T1b3地层的ROP均值同比提高89.9%、MSE均值同比降低33.8%,T1b2地层的ROP均值同比提高41.3%、MSE均值同比降低39.0%,T1b1地层的ROP均值同比提高29.2%、MSE均值同比降低37.3%,满足机械钻速最大化、机械比能最小化的双目标。

b07004556c506791428dee2767e9d063.png

图6.1 优选前后各地层ROP和MSE均值对比

关于分析师

2a81c36861ce4cbea8a4f9c46ae3437f.png 

在此对 Huayan Mu 对本文所作的贡献表示诚挚感谢,她在西南石油大学完成了材料与化工专业(研究方向:钻井提速大数据分析)的硕士学位,专注于机器学习预测分析领域。擅长 Python(Anaconda)、数据分析 。


资料获取

在公众号后台回复“领资料”,可免费获取数据分析、机器学习、深度学习等学习资料。

a2914242757d456d8fd15af7d5582b0b.jpeg

点击文末“阅读原文”

了解定制服务。

本文选自《Python机器学习算法KNN、MLP、NB、LR助力油气钻井大数据提速参数优选及模型构建研究》。

点击标题查阅往期内容

数据分享|R语言逻辑回归、Naive Bayes贝叶斯、决策树、随机森林算法预测心脏病

R语言逻辑回归logistic模型分析泰坦尼克titanic数据集预测生还情况

R语言是否对二分连续变量执行逻辑回归

R语言用lme4多层次(混合效应)广义线性模型(GLM),逻辑回归分析教育留级调查数据

R语言随机森林RandomForest、逻辑回归Logisitc预测心脏病数据和可视化分析

R语言基于Bagging分类的逻辑回归(Logistic Regression)、决策树、森林分析心脏病患者

R语言逻辑回归(Logistic回归)模型分类预测病人冠心病风险

R语言用局部加权回归(Lowess)对logistic逻辑回归诊断和残差分析

R语言用主成分PCA、 逻辑回归、决策树、随机森林分析心脏病数据并高维可视化

R语言用线性模型进行臭氧预测:加权泊松回归,普通最小二乘,加权负二项式模型,多重插补缺失值

R语言Bootstrap的岭回归和自适应LASSO回归可视化

R语言中回归和分类模型选择的性能指标

R语言多元时间序列滚动预测:ARIMA、回归、ARIMAX模型分析

R语言用lme4多层次(混合效应)广义线性模型(GLM),逻辑回归分析教育留级调查数据

R语言计量经济学:虚拟变量(哑变量)在线性回归模型中的应用

R语言 线性混合效应模型实战案例

R语言混合效应逻辑回归(mixed effects logistic)模型分析肺癌数据

R语言如何用潜类别混合效应模型(LCMM)分析抑郁症状

R语言基于copula的贝叶斯分层混合模型的诊断准确性研究

R语言建立和可视化混合效应模型mixed effect model

R语言LME4混合效应模型研究教师的受欢迎程度

R语言 线性混合效应模型实战案例

R语言用Rshiny探索lme4广义线性混合模型(GLMM)和线性混合模型(LMM)

R语言基于copula的贝叶斯分层混合模型的诊断准确性研究

R语言如何解决线性混合模型中畸形拟合(Singular fit)的问题

基于R语言的lmer混合线性回归模型

R语言用WinBUGS 软件对学术能力测验建立层次(分层)贝叶斯模型

R语言分层线性模型案例

R语言用WinBUGS 软件对学术能力测验(SAT)建立分层模型

使用SAS,Stata,HLM,R,SPSS和Mplus的分层线性模型HLM

R语言用WinBUGS 软件对学术能力测验建立层次(分层)贝叶斯模型

SPSS中的多层(等级)线性模型Multilevel linear models研究整容手术数据

用SPSS估计HLM多层(层次)线性模型模型

20bb4ca4b411f3aed2b3d000a0ada428.jpeg

3def48a969a709e6e8fd0ff07822df79.png

d522e6f9c2320e8ae4f2e8c0013677b8.png

2ab5541fceeebb185373fc05a2da1985.jpeg

24a6c2c476065bd07490b524099de8d7.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2262684.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【尚硅谷 - SSM+SpringBoot+SpringSecurity框架整合项目 】项目打包并且本地部署

前后端分离开发:把一个项目拆成两部分进行开发,所以在打包的时候,需要使用不同的打包方式。 后端 – SpringBoot – jar包 前端 – Vue: 因为使用了vue-admin-template框架:所以先使用框架进行打包使用Nginx部署,通…

练13:二分法

欢迎大家订阅【蓝桥杯Python每日一练】 专栏,开启你的 Python数据结构与算法 学习之旅! 文章目录 1 二分查找2 例题分析 1 二分查找 ①定义 在计算机科学中,二分算法(Binary Search)是一种高效的查找算法,…

Android Studio更改项目使用的JDK

一、吐槽 过去,在安卓项目中配置JDK和Gradle的过程非常直观,只需要进入Android Studio的File菜单中的Project Structure即可进行设置,十分方便。 原本可以在这修改JDK: 但大家都知道,Android Studio的狗屎性能,再加…

基于ST STM32MP257FAK3的MP2控制器之工业PLC 方案

简介 1.可编程逻辑控制器(PLC)是种专门为在工业环境下应用而设计的数字运算操作电子系统。它采用一种可编程的存储器,在其内部存储执行逻辑运算、顺序控制、定时、计数和算术运算等操作的指令,通过数字式或模拟式的输入输出来控制…

唯品会Android面试题及参考答案

HTTP 和 HTTPS 的区别是什么?你的项目使用的是 HTTP 还是 HTTPS? HTTP 和 HTTPS 主要有以下区别。 首先是安全性。HTTP 是超文本传输协议,数据传输是明文的,这意味着在数据传输过程中,信息很容易被窃取或者篡改。比如,在一个不安全的网络环境下,黑客可以通过网络嗅探工具…

黑马Java面试教程_P2_Redis

系列博客目录 文章目录 系列博客目录1前言2 使用场景面试官提问1:我看你做的项目中,都用到了redis,你在最近的项目中哪些场景使用了redis呢?面试官会接着问你1.1:如果发生了缓存穿透、击穿、雪崩,该如何解决?2.1缓存…

Python如何正确解决reCaptcha验证码(9)

前言 本文是该专栏的第73篇,后面会持续分享python爬虫干货知识,记得关注。 我们在处理某些国内外平台项目的时候,相信很多同学或多或少都见过,如下图所示的reCaptcha验证码。 而本文,笔者将重点来介绍在实战项目中,遇到上述中的“reCaptcha验证码”,如何正确去处理并解…

Unity3D仿星露谷物语开发5之角色单例模式

1、目的 使用单例模式创建角色对象,保证整个游戏中只有一个角色,并且让游戏对象具有全局可访问性。 2、流程 (1)创建SingletonMonobehaviour脚本 Assets下创建Scripts目录用于存放所有的脚本,再创建Misk子目录&…

控制表格向上滚动距离最佳实践(以Element ui为例)

前言 在web开发中,有些时候使用的组件库的表格不支持滚动的属性或方法。这个时候我们就要自己去实现这一功能。在Element Plus里,组件库已经具备了支持滚动表格的属性或方法,但是在支持vue2的element ui里,Table组件本身不提供直…

ubuntu16.04ros-用海龟机器人仿真循线系统

下载安装sudo apt-get install ros-kinetic-turtlebot ros-kinetic-turtlebot-apps ros-kinetic-turtlebot-interactions ros-kinetic-turtlebot-simulator ros-kinetic-kobuki-ftdi sudo apt-get install ros-kinetic-rocon-*echo "source /opt/ros/kinetic/setup.bash…

6.3 Postman环境变量与全局变量

欢迎大家订阅【软件测试】 专栏,开启你的软件测试学习之旅! 文章目录 前言1 变量类型2 环境变量(Environment Variables)3 全局变量(Global Variables)4 环境变量与全局变量的区别 前言 为了提高测试的灵活…

概率论得学习和整理27:关于离散的数组 随机变量数组的均值,方差的求法3种公式,思考和细节。

目录 1 例子1:最典型的,最简单的数组的均值,方差的求法 2 例子1的问题:例子1只是1个特例,而不是普遍情况。 2.1 例子1各种默认假设,导致了求均值和方差的特殊性,特别简单。 2.2 我觉得 加权…

模型 QFD(质量功能展开/质量屋)

系列文章 分享 模型,了解更多👉 模型_思维模型目录。将客户需求转化为产品设计。 1 模型 QFD(质量功能展开)的应用 1.1 电信服务及网络维护过程质量改进QFD应用案例 背景介绍: 随着中国加入WTO和国家对电信管制的普遍…

ECharts柱状图-柱图38,附视频讲解与代码下载

引言: 在数据可视化的世界里,ECharts凭借其丰富的图表类型和强大的配置能力,成为了众多开发者的首选。今天,我将带大家一起实现一个柱状图图表,通过该图表我们可以直观地展示和分析数据。此外,我还将提供…

Android XR 应用程序开发 | 从 Unity 6 开发准备到应用程序构建的步骤

在本文中 将解释为 Android XR 开发做准备的步骤,从下载 Unity 6 到项目和构建。 (这次我将解释使用 Mac 的设置,但 Windows 的过程通常相同。 ) 如果您的许可证是 Personal,您仍然可以使用 Unity 开发 Android XR 应…

204页PPT金税四期监管要求与最新政策及风险防范-培训课件

这份资料是关于金税四期监管要求、最新政策及风险防范的培训课件,包含204页PPT内容。核心内容涉及金税四期的发展历程、与金税三期的主要变化、指挥决策系统、税务风险预警指标、重点监控行为、税务稽查重点领域、避税方法及处罚、以及企业自查和税务风险管控原理。…

比较器基本玩法

1 红外水龙头 1 比较器的工作特性 2 红外接收二极管的工作原理 1 红外发射二极管和红外接收二极管 2 红外接收二极管接收到,产生的电流是100uA,即电压等于4V 3 自动出水水龙头 4 比较器内部结构 1 有一些比较器需要加上拉电阻(类似开漏输…

基于Qt的登陆界面设计

目标 自由发挥登录界面的应用场景,实现一个登录窗口的界面。 要求:每行代码都要有注释 代码 // 设置窗口大小为600x400像素 this->resize(600,400); // 设置窗口标题为"TheWitcher 巫师3:狂猎" this->setWindowTitle(&qu…

数据库建模工具 PDManer

数据库建模工具 PDManer 1.PDManer简介2.PDManer使用 1.PDManer简介 PDManer(元数建模)是一款功能强大且易于使用的开源数据库建模工具。它不仅支持多种常见数据库,如MySQL、PostgreSQL、Oracle、SQL Server等,还特别支持国产数据…

排序算法深度好文(图解 + 代码解析 + 误区 QA )——学排序看这一篇就够了!!!

排序算法 一、概述 1. 内部排序 (1) 冒泡排序 (2) 选择排序 a. 简单选择排序 b. 堆排序 (3) 插入排序 a. 直接插入排序 b. 希尔排序 (4) 快速排序 快速排序 hoare 版本 快速排序挖坑法 优化一随机化快速排序 优化二中位数三分法 (5) 归并排序 (6) 基数排序 2. …