Python机器学习算法KNN、MLP、NB、LR助力油气钻井大数据提速参数优选及模型构建研究...
全文链接:https://tecdat.cn/?p=38601
分析师:Huayan Mu
随着机器学习和大数据分析技术的发展,帮助客户进行油气行业数字化转型势在必行,钻井提速参数优选呈现由经验驱动、逻辑驱动向数据驱动转变的趋势。机械钻速最大化、机械比能最小化是钻井过程中常考虑的双目标,有利于提高钻头破岩能量利用率、降低非生产时间和钻井成本,而提速预测模型与钻井参数的优选是核心痛点(点击文末“阅读原文”获取完整代码数据)。
一、任务/目标
评估主流分类算法,确定适用于实例井的最佳提速预测模型;构建提速评价函数,按地层优选关键参数取值范围。
数据清洗与特征选择
2.1数据整体清洗
原始数据来源于某油田A井,共154810条钻井数据、55列特征项。数据预处理包括删除空值及无效值、删除冗余特征项、重复值检测、极端值处理,处理后共保留114973条非空数据、19列特征项。
经归一化处理后使用箱型图检测数据整体异常值,对部分存在异常值的特征项进行四次中位数迭代修正。数据整体异常值处理对比如图2.1和图2.2。
图2.1数据整体异常值检测箱型图
图2.2 数据整体清洗后箱型图
2.2特征选择
使用清洗后的数据计算出两两变量间的互信息值并可视化为热力图(图2.3),根据机械钻速与各特征变量之间的互信息值大小,最终选择井深(0.75)、转盘转速(0.54)、钻压(0.52)、入口流量(0.47)、立管压力(0.31)、扭矩(0.22)、大钩负荷(0.21)共7个钻井参数作为后续模型的特征变量。
2.3机械钻速异常值剔除
使用孤立森林算法检测并剔除每个地层中的机械钻速异常值,T2k1地层数据从5971行筛选出5374行,T1b3地层数据从4516行筛选出4069行,T1b2地层数据从6470行筛选出5825行,T1b1地层数据从98016行筛选出88222行。对比分析剔除前后数据集中机械钻速(ROP)的取值范围、均值、标准差如表2.1,可知各地层机械钻速的标准差均减小,数据离散程度减小,有利于提高后续模型的精确度。
提速预测模型优选
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模型预测提速效果。
点击标题查阅往期内容
数据分享|R语言逻辑回归、Naive Bayes贝叶斯、决策树、随机森林算法预测心脏病
左右滑动查看更多
01
02
03
04
提速评价函数构建与参数优选
4.1提速评价函数构建
结合机械比能理论,假设在提速效果评价中钻压(WOB)权重为ω1,转速(RPM)权重为ω2,扭矩(TOR)权重为ω3,不同钻头直径(Db)权重为ω4,构造目标为ROP最大化、MSE最小化的评价函数如下:
化简得:
随机森林模型训练过程中约有1/3的袋外数据没被利用,对袋外数据中所有样本特征随机加入噪声干扰能说明各特征对模型预测结果的重要性程度,因此式中各项权重依据随机森林回归模型的特征重要性确定。
4.2提速参数优选
以井深、转速、钻压、入口流量、扭矩、立管压力、大钩负荷作为随机森林回归模型的输入变量,输出变量为机械钻速,对A井4个地层分别预测提速评价函数中各参数权重。
表4.1给出了模型中特征变量权重值,对应各特征的重要性
在按地层划分的实钻数据表中添加评价函数列,并基于评价函数U从小到大排序,由预设优选率(假设为5%,若计算结果为小数则向上取整)进行筛选,各地层优选参数钻压(WOB,KN·m)、转速(RPM,r/min)、排量(Flow In,L/s)、立管压力(SPP,MPa)、扭矩(TOR,KN·m)、大钩负荷(Hook Load,KN)的取值范围如表4.2。
表4.2 提速关键参数优选范围
五、提速预测模型优选结果分析
基于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模型)
六、 提速评价函数应用结果分析
优选前后各地层机械钻速(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%,满足机械钻速最大化、机械比能最小化的双目标。
图6.1 优选前后各地层ROP和MSE均值对比
关于分析师
在此对 Huayan Mu 对本文所作的贡献表示诚挚感谢,她在西南石油大学完成了材料与化工专业(研究方向:钻井提速大数据分析)的硕士学位,专注于机器学习预测分析领域。擅长 Python(Anaconda)、数据分析 。
资料获取
在公众号后台回复“领资料”,可免费获取数据分析、机器学习、深度学习等学习资料。
点击文末“阅读原文”
了解定制服务。
本文选自《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多层(层次)线性模型模型