② 嘉兴市佳安燃气技术服务有限公司, 浙江嘉兴 314000;
③ 中国石化胜利油田分公司勘探开发研究院, 山东东营 257015;
④ 中国石油集团测井有限公司华北分公司, 河北任丘 062550
② Jiaxing Jia'an Gas Technology Service Limited, Jiaxing, Zhejiang 314000, China;
③ Research Institute of Exploration and Development, Shengli Oilfield Branch Co., SINOPEC, Dongying, Shandong 257015, China;
④ North China Branch, Logging Co., Ltd., CNPC, Renqiu, Hebei 062550, China
利用常规测井曲线难以准确识别复杂砂砾岩储层[1]中的流体类型,并且效率较低,主要是因为常规测井资料受岩性影响大,岩石骨架对测井响应特征的影响大于流体。另外,地层水矿化度低、岩石矿物成分多样等因素也会造成油、水层差异不明显,利用常规测井曲线判断流体时误差较大[2]。核磁共振测井技术的应用提高了复杂储层的识别精度,但是限于成本尚不能广泛应用于生产[3]。常规测井技术成本低、应用数据量大,利用机器学习研究常规测井资料在流体识别中的应用具有重要意义。
机器学习是利用计算机、概率论、统计学等通过数据输入,让计算机学会新知识,从而实现人工智能。机器学习的过程就是通过训练数据寻找目标函数,常用算法主要有决策树[4]、随机森林算法[5]、逻辑回归、支持向量机[6]、神经网络[7]、聚类分析[8]等。近年来,机器学习逐渐成为储层评价研究的热点[9],其以常规测井数据为基础,能大幅度提高流体识别精度。因此,机器学习技术的研究对于油气开发具有重要意义[10]。刘得芳等[11]应用决策树方法提高了利用单一信息判别的准确性。张银德等[12]结合测井资料和试采资料,利用支持向量机方法准确识别了油、气、水层。王少龙等[13]实现了BP神经网络在储层流体中的信息自动化识别。陈钢花等[14]构建声—电测井联合流体识别因子应用于川东碳酸盐岩气藏研究中,解释结果与试采结果吻合较好。但是,诸多算法中神经网络算法较为复杂,如果学习样本数量较少,容易出现过拟合问题,导致准确率下降。同时,神经网络“黑盒”过程导致无法观察中间结果,学习时间长,容易陷入局部极小值。在分类较多时,决策树法错误率较高。如果所用测井曲线数量以及标准样本数量不大时,应用聚类算法难以获得较为准确的结果。
针对以上问题,本文将AdaBoost(Adaptive Boosting,自适应增强)算法应用于砂砾岩储层流体识别中,以提高流体识别精度。
1 方法原理Boosting算法也称为提升法或者增强学习,是一类常用的机器学习算法[15]。它是将弱学习器(Weak Learners)集成提升为一个预测(分类)精度高的强学习器(Strong Learner)。AdaBoost算法是Boosting算法族中最有影响的一种迭代算法[16],其预测精准、算法简单,在诸多领域都有着成功应用,尤其在处理分类问题和模式识别领域更为突出,例如人脸识别、语音识别、文本识别、遥感分类等[17]。AdaBoost算法迭代是通过改变训练集中样本数据各自的权重实现的,实现过程如图 1所示:
(1) 对于二分类问题,在初始化时对训练集中的每一个样本数据赋予同样的权重,并训练出一个弱学习器1(图 1a左);
(2) 根据弱学习器1对样本数据的训练误差率更新样本数据的训练权重,使之前弱学习器1分类错误的训练样本点的权重增加,并使错误数据点被下一个弱学习器选中的概率增加(图 1a右);
(3) 基于调整权重后的训练样本训练弱学习器2(图 1b左);
(4) 重复上述(2)和(3)的步骤直至弱学习器数目达到事先指定的数目(图 1b右、图 1c左);
(5) 将各个训练得到的弱学习器组合得到最终的强分类器(图 1c右)。
最初的AdaBoost算法只适用于二分类问题,而在实际中常常会遇到多分类问题。关于二分类问题,要求弱学习器的分类正确率比随机猜测略好,即正确率大于1/2。关于类别数目为K的多分类问题,弱学习器的分类正确率比随机猜测正确率1/K略大这一条件过弱,很难集成出一个精度高的强学习器。而弱学习器的分类正确率大于1/2这一条件又过强,可能导致在实际应用中难以找到足够多个正确率大于1/2的弱学习器[18]。
AdaBoost.M2算法作为AdaBoost算法的推广,适用于解决多分类问题。对于K类多分类问题,AdaBoost.M2算法将其拆解为K-1个二分类问题加以解决。
AdaBoost.M2算法反复调用给定的弱学习器算法,主要是在训练集中维护一套权重分布。在第t轮迭代时,样本(xi, yi)(i为样本编号,xi为样本数据,yi为该样本的标签)的分布权值记为Dt(i)。初始所有样本权重相等,但进行迭代时,每一轮错误分类的样本权重都将会增加。弱学习器的任务就是根据分布Dt(i)找到合适的分类器。对于给定样本数据xi,有正确分类yi和非正确分类y(除yi之外的K-1类)[19]。调用弱学习算法自动得到分类器ht,并假设ht从[0, 1]取值。对于样本(xi, yi),ht会进行K-1次判别,每一次判别都有三种情况:当ht(xi, yi)=1、ht(xi, y)=0时,则分类正确,xi的类别是yi;当ht(xi, yi)=0、ht(xi, y)=1时,则分类错误,xi的类别是y;当ht(xi, yi)=ht(xi, y)时,则xi的类别随机从yi和y中选取一个。
每一次判别错误分类为y的概率为
$ \frac{1}{2}\left[1-h_{t}\left(x_{i}, y_{i}\right)+h_{t}\left(x_{i}, y\right)\right] $ | (1) |
如果K-1次判别同等重要,即其权重都为
$ \frac{1}{K-1} \sum\limits_{y \neq y_{i}} \frac{1}{2}\left[1-h_{t}\left(x_{i}, y_{i}\right)+h_{t}\left(x_{i}, y\right)\right]\\ \;\;\;=\frac{1}{2}\left[1-h_{t}\left(x_{i}, y_{i}\right)+\frac{1}{K-1} \sum\limits_{y \neq y_{i}} h_{t}\left(x_{i}, y\right)\right] $ | (2) |
如果K-1次判别不同等重要,每次判别有不同的权重qt(i, y),且
$ \frac{1}{2}\left[1-h_{t}\left(x_{i}, y_{i}\right)+\sum\limits_{y \neq y_{i}} q_{t}(i, y) h_{t}\left(x_{i}, y\right)\right] $ | (3) |
从而可以得到评估弱学习器好坏的伪损失
$ \begin{aligned} \varepsilon_{t}=& \frac{1}{2} \sum\limits_{i=1}^{N} D_{t(i)}\left[1-h_{t}\left(x_{i}, y_{i}\right)+\right.\\ &\left.\sum\limits_{y \neq y_{i}} q_{t}(i, y) h_{t}\left(x_{i}, y\right)\right] \end{aligned} $ | (4) |
伪损失εt对判别正确率低的弱分类器ht进行惩罚,减少其投票权重。同时,在下一轮迭代中增加错误分类的标签权重,加大对错分样本的训练机会。
AdaBoost.M2算法的实现步骤如下。
(1) 输入样本总数为N的训练集S={(x1, y1), …, (xi, yi), …, (xN, yN)},标签yi∈Y={1, 2, K},其中i为样本编号,K是类别数。
(2) 初始化。样本数据初始分布
$ \omega_{i, y}^{i}=\frac{D_{1}(i)}{K-1} \quad i=1, \cdots, N, y \in \boldsymbol{Y}=\left|\left\{y_{i}\right\}\right| $ | (5) |
(3) 循环迭代t=1, …, T。
① 第t次迭代中样本i的的错误标签的权重之和
② 调用弱学习算法,传递Dit、qt(i, y)给它,返回假设ht:X×Y→[0, 1]。X×Y为类别权重函数。
③ 计算ht的伪损失。
④ 置权重更新系数
⑤ 计算新的权重
$ \omega_{i, y}^{i+1}=\omega_{i, y}^{i} \cdot \beta_{t}^{\frac{1}{2}\left[1+h_{t}\left(x_{i}, y_{i}\right)-h_{t}\left(x_{i}, y\right)\right]} $ | (6) |
式中:i=1, 2, …, N; y∈Y-(yi)。
(4) 输出T次循环后得到的最终组合分类器
$ h_{f(x)}=\arg \max \limits_{y \in {\boldsymbol{Y}}} \sum\limits_{t=1}^{T} \lg \frac{1}{\beta_{t}} h_{t}(x, y) $ | (7) |
A研究区砂砾岩具有近物源、快速堆积、纵向厚度变化大、相变快等特点。砾石成分复杂、孔隙结构多样、非均质性强,存在多油水系统,油水层测井响应特征差异不明显[20]。通常自然电位(SP)异常幅度可以反映储层渗透性、地层水矿化度,电阻率(RT)大小取决于孔隙结构以及孔隙所含流体。但在复杂砂砾岩储层中,地层水矿化度差异大,砂砾岩体岩石骨架对电阻率的的影响远远大于流体,利用常规测井资料难以准确评价油、水层。
由图 2可知,利用密度与电阻率难以识别流体。因而,选取反映储层岩性、物性、流体性质的SP、GR(伽马)、RT、AC(声波时差)、CNL(补偿中子)、DEN(密度)等六种测井资料,运用机器学习算法,提取反映流体的信息,多参数结合实现砂砾岩中的流体识别。
首先在关键井中,根据核磁共振、录井油气显示、试油等结果选取多个井段的储层样本,综合考虑岩性、孔隙结构、地层水矿化度等因素,选取上述六种测井资料作为输入,建立研究区干层、水层、油水同层、油层识别模型。
建模前,对输入参数做归一化处理,消除量纲的影响。图 3为不同流体类型测井数据归一化后的平行坐标系,从左到右分别为DEN、CNL、GR、AC、SP、RT测井类型。每一个样本为一条曲线,不同颜色的曲线代表不同类型的流体。从图中可以看出,不同类型流体测井响应特征不同,同一种流体各测井响应特征也不完全一致。因此,采用单一测井曲线无法对复杂储层流体类型进行划分,需要多个测井参数进行学习分类,获得学习模型,识别油水层。
在AdaBoost.M2算法中,要求弱学习器的输出为一个在[0, 1]内的值。因此,本文采用决策树法作为弱分类器。在建模过程中,将归一化后的数据作为输入,输出为流体类型(判断为该类型响应为1,否则响应为0)。本文以研究区9口井为样本井,将试油、试采资料的层段作为样本层,共选择了反映流体性质的353个样本数据进行训练并建立砂砾岩流体识别模型。其中80%的样本(282个)作为训练数据,20%的样本(71个)作为测试数据,并将测试结果与试油、试采结果做对比分析。
表 1为测试结果与试油、试采资料的对比,可以看出代表判别错误的层共有6个,解释符合率为91.5%,证明了该模型的适用性,可用于研究区流体识别。
研究区X井流体识别测井解释成果如图 4所示。1437~1462m井段储层特征明显,SP值负异常,GR值低,DEN值偏低,AC值和CNL值均较低,RT值高,具有典型的含油气特征。本方法判定该储层为油层,试油结果日产油68.9×104m3。1611~1614m井段和1635~1640m井段的45、49号层SP值负异常,GR值低,DEN值中等,AC值和CNL值均中等,RT值较高,录井含油性为荧光,解释为差油层。本方法判定为干层。试油结果为干层,2个层段无产量。上述结果表明了本文方法的准确性和适用性。
AdaBoost.M2算法很好地利用了弱分类器进行联级,提高了分类准确度。本文将决策树法作为弱分类器用于砂砾岩流体识别,样本回判准确率为95%,测试准确率达91.5%,精度高且效果好。随着油气藏勘探难度的增加,测井数据复杂程度与人工对比识别难度也在增加,机器学习是解决该问题的有利途径,根据不同地区的特点选取测井数据和弱分类器类型、数目,即可提高流体识别精度,指导油气藏生产与开发。
[1] |
昝灵, 王顺华, 张枝焕, 等. 砂砾岩储层研究现状[J]. 长江大学学报(自然科学版), 2011, 8(3): 63-66. ZAN Ling, WANG Shunhua, ZHANG Zhihuan, et al. Research status of glutenite reservoirs[J]. Journal of Yangtze University(Nature Science Edition), 2011, 8(3): 63-66. |
[2] |
赵军龙, 李新胜, 张彬. 基于测井曲线小波分析与希尔伯特变换的流体识别新方法[J]. 石油地球物理勘探, 2010, 45(2): 290-294, 305. ZHAO Junlong, LI Xinsheng, ZHANG Bin. New fluid detection method based on well logging curve wavelet analysis and Hilbert transform[J]. Oil Geophysical Prospecting, 2010, 45(2): 290-294, 305. |
[3] |
孙焕泉, 运华云, 侯庆功, 等. 胜利油区油气层测井响应特征[M]. 北京: 石油工业出版社, 2008. SUN Huanquan, YUN Huayun, HOU Qinggong, et al. Logging Response Characteristics of Oil and Gas Reservoirs in Shengli Oilfield[M]. Beijing: Petroleum Industry Press, 2008. |
[4] |
谭锋奇, 李洪奇, 孟照旭, 等. 数据挖掘方法在石油勘探开发中的应用研究[J]. 石油地球物理勘探, 2010, 45(1): 85-91. TAN Fengqi, LI Hongqi, MENG Zhaoxu, et al. Stu-dies on application of data mining method in oil exploration and development[J]. Oil Geophysical Prospecting, 2010, 45(1): 85-91. |
[5] |
宋建国, 杨璐, 高强山, 等. 强容噪性随机森林算法在地震储层预测中的应用[J]. 石油地球物理勘探, 2018, 53(5): 954-960. SONG Jianguo, YANG Lu, GAO Qiangshan, et al. Strong tolerance random forest algorithm in seismic reservoir prediction[J]. Oil Geophysical Prospecting, 2018, 53(5): 954-960. |
[6] |
殷文, 李援, 郭加树, 等. 基于改进蚁群追踪策略的地震层位自动识别方法[J]. 石油地球物理勘探, 2017, 52(3): 553-561. YIN Wen, LI Yuan, GUO Jiashu, et al. Seismic horizon automatic identification based on ant colony tra-cking strategy[J]. Oil Geophysical Prospecting, 2017, 52(3): 553-561. |
[7] |
刘全稳. 测井神经网络技术综述[J]. 石油地球物理勘探, 1996, 31(增刊1): 64-69. LIU Quanwen. A summary of logging neural network technology[J]. Oil Geophysical Prospecting, 1996, 31(S1): 64-69. |
[8] |
陈雷, 肖创柏, 禹晶, 等. 基于相似性传播聚类与主成分分析的断层识别方法[J]. 石油地球物理勘探, 2017, 52(4): 826-833. CHEN Lei, XIAO Chuangbai, YU Jing, et al. Fault recognition based on affinity propagation clustering and principal component analysis[J]. Oil Geophysical Prospecting, 2017, 52(4): 826-833. |
[9] |
李舟波. 利用测井方法识别复杂油气储层的流体性质[J]. 石油与天然气地质, 2004, 25(4): 356-362. LI Zhoubo. Problem and advance on the fluild typing for complex reservoirs using well log[J]. Oil & Gas Geology, 2004, 25(4): 356-362. DOI:10.3321/j.issn:0253-9985.2004.04.002 |
[10] |
石宁, 李洪奇, 罗伟平. 数据挖掘与测井解释:应用于砾岩储层[J]. 应用地球物理, 2015, 12(2): 263-272. SHI Ning, LI Hongqi, LUO Weiping. Data mining and well logging interpretation:application to a conglo-merate reservoir[J]. Applied Geophysics, 2015, 12(2): 263-272. |
[11] |
刘得芳, 林发武, 梁忠奎, 等. 碳酸盐岩储层流体性质综合判别方法[J]. 特种油气藏, 2015, 22(4): 104-107. LIU Defang, LIN Fawu, LIANG Zhongkui, et al. An integrated method to determine fluid properties in carbonate reservoirs[J]. Special Oil & Gas Reservoirs, 2015, 22(4): 104-107. DOI:10.3969/j.issn.1006-6535.2015.04.027 |
[12] |
张银德, 童凯军, 郑军, 等. 支持向量机方法在低阻油层流体识别中的应用[J]. 石油物探, 2008, 47(3): 306-310. ZHANG Yinde, TONG Kaijun, ZHENG Jun, et al. Application of support vector machine method for identifying fluid in low-resistivity oil layers[J]. Geophysical Prospecting for Petroleum, 2008, 47(3): 306-310. DOI:10.3969/j.issn.1000-1441.2008.03.017 |
[13] |
王少龙, 杨斌, 赵倩, 等. BP神经网络在复杂储层流体识别中的应用[J]. 石油化工应用, 2018, 37(7): 45-48. WANG Shaolong, YANG Bin, ZHAO Qian, et al. Application of BP neural network in complex reservoir fluid identification[J]. Petrochemical Application, 2018, 37(7): 45-48. DOI:10.3969/j.issn.1673-5285.2018.07.011 |
[14] |
陈钢花, 张艳, 毛克宇, 等. 声-电测井联合流体识别因子构建方法及其应用——以川东北碳酸盐岩气藏为例[J]. 石油物探, 2017, 56(2): 295-301. CHEN Ganghua, ZHANG Yan, MAO Keyu, et al. Establishment of fluid identification factor by joint acoustic and resistivity logging and its application:a case study of carbonate gas reservoir in the Northeast Sichuan[J]. Geophysical Prospecting for Petroleum, 2017, 56(2): 295-301. DOI:10.3969/j.issn.1000-1441.2017.02.017 |
[15] |
曹莹, 苗启广, 刘家辰, 等. AdaBoost算法研究进展与展望[J]. 自动化学报, 2013, 39(6): 745-758. CAO Ying, MIAO Qiguang, LIU Jiachen, et al. Advance and prospects of AdaBoost algorithm[J]. Acta Automatica Sinica, 2013, 39(6): 745-758. |
[16] |
Schaping R E, Singer Y. Improved boosting algorithms using confidence rated prediction[J]. Machine Lear-ning, 1999, 37(3): 297-336. DOI:10.1023/A:1007614523901 |
[17] |
吴信东. 数据挖掘十大算法[M]. 北京: 清华大学出版社, 2013. WU Xindong. Ten Algorithms for Data Mining[M]. Beijing: Tsinghua University Press, 2013. |
[18] |
杨新武, 马壮, 袁顺. 基于弱分类器调整的多分类AdaBoost算法[J]. 电子与信息学报, 2016, 38(2): 373-380. YANG Xinwu, MA Zhuang, YUAN Shun. Multi-class AdaBoost algorithm based on the adjusted weak classifier[J]. Journal of Electronics & Information Technology, 2016, 38(2): 373-380. |
[19] |
涂承胜, 刁力力, 鲁明羽, 等. Boosting家族AdaBoost系列代表算法[J]. 计算机科学, 2003, 30(3): 30-34. TU Chengsheng, DIAO Lili, LU Mingyu, et al. The typical algorithm of AdaBoost series in Boosting family[J]. Computer Science, 2003, 30(3): 30-34. DOI:10.3969/j.issn.1002-137X.2003.03.008 |
[20] |
袁红旗, 刘长利, 肖阳, 等. 二连盆地乌兰花凹陷沉积特征研究[J]. 地球物理学进展, 2016, 31(5): 2239-2245. YUAN Hongqi, LIU Changli, XIAO Yang, et al. Sedimentary characteristics of Wulanhua Sag in Erlian Basin[J]. Progress in Geophysics, 2016, 31(5): 2239-2245. |