石油物探  2020, Vol. 59 Issue (4): 616-627  DOI: 10.3969/j.issn.1000-1441.2020.04.012
0
文章快速检索     高级检索

引用本文 

王俊, 曹俊兴, 尤加春, 等. 基于门控循环单元神经网络的储层孔渗饱参数预测[J]. 石油物探, 2020, 59(4): 616-627. DOI: 10.3969/j.issn.1000-1441.2020.04.012.
WANG Jun, CAO Junxing, YOU Jiachun, et al. Prediction of reservoir porosity, permeability, and saturation based on a gated recurrent unit neural network[J]. Geophysical Prospecting for Petroleum, 2020, 59(4): 616-627. DOI: 10.3969/j.issn.1000-1441.2020.04.012.

基金项目

国家自然科学基金重点项目(41430323)和国家重点研发计划深地专项(2016YFC0601100)共同资助

作者简介

王俊(1992—), 男, 硕士在读, 主要从事深度学习算法在油气地球物理勘探中的应用研究工作。Email:1148481903@qq.com

文章历史

收稿日期:2019-09-05
改回日期:2019-11-19
基于门控循环单元神经网络的储层孔渗饱参数预测
王俊 , 曹俊兴 , 尤加春 , 刘杰 , 周欣     
成都理工大学地球物理学院, 四川成都 610059
摘要:孔隙度、渗透率和饱和度等物性参数是表征储层质量的重要参数, 也是储层评价的重要依据。根据测井数据估算岩石的孔隙度、渗透率和饱和度参数, 进而评价储层, 是测井解释的基本内容。作为一种适于解决非线性和时序性问题的新型深度学习算法, 门控循环单元(gated recurrent unit, GRU)神经网络算法能较好地反映出孔渗饱参数与测井数据之间的非线性映射关系以及不同深度历史数据之间的关联。基于GRU神经网络的储层孔渗饱参数预测方法首先采用基于Copula函数的相关性测度法筛选与孔渗饱参数关联度较高的测井参数, 而后利用GRU神经网络建立测井数据与孔渗饱参数之间的非线性映射关系。对四川盆地某探区实际测井数据进行了GRU神经网络储层孔渗饱参数预测的模型训练和预测试验, 最后将预测结果与多元回归分析、循环神经网络等方法的预测结果进行比较, 结果表明, 以均方根误差和Pearson相关系数为评价指标, 基于门控循环单元神经网络的储层孔渗饱参数预测方法效果优于其它方法。
关键词相关性分析    Copula函数    循环神经网络    门控循环单元神经网络    孔隙度    渗透率    饱和度    储层预测    
Prediction of reservoir porosity, permeability, and saturation based on a gated recurrent unit neural network
WANG Jun, CAO Junxing, YOU Jiachun, LIU Jie, ZHOU Xin     
School of Geophysics, Chengdu University of Technology, Chengdu 610059, China
Foundation item: This research is financially supported by the National Natural Science Foundation of China(Grant No.41430323)and the National Key Research and Development Program of China (Grant No.2016YFC0601100)
Abstract: Porosity, permeability, and saturation are important parameters to characterize and evaluate reservoirs.The interpretation of well logging data can be used to evaluate the porosity, permeability, and saturation parameters of the rock, and thus discover reservoirs.A method for predicting reservoir porosity, permeability, and saturation based on a gated recurrent unit(GRU) neural network was proposed in this study.The GRU neural network is a novel deep learning algorithm suitable for solving nonlinear and time-dependent problems.As such, it may also be able to identify the non-linear mapping relationship between porosity, permeability, and saturation parameters and logging data, as well as the correlations among historical data at different depths.First, a correlation measurement method based on a copula function was employed in this work to select the logging parameters that best correlate with the porosity, permeability, and saturation parameters.Then, the GRU neural network was used to identify the non-linear mapping relationship between logging data and porosity, permeability, and saturation parameters.The results of the application to an exploration area in the Sichuan basin showed that the proposed method was superior to multiple regression analysis and recurrent neural network methods with respect to two evaluation indexes, namely the root mean square error and the correlation coefficient.
Keywords: correlation analysis    Copula function    recurrent neural network    gated recurrent unit neural network    porosity    permeability    saturation    reservoir prediction    

孔隙度、渗透率和饱和度(简称孔渗饱)参数作为评价储层质量的重要特征参数, 其准确估计可为储层评价提供可靠的参考依据。目前, 钻井取心后进行岩石物理分析所获得的物性参数最为准确[1], 但这种方法的取样和测试成本高, 故仅限于某些层段, 难以获取整个工区的物性参数。根据地质信息和测井资料之间的关系确定储层岩性及孔渗饱等地层参数, 是实现精确储层预测与评价的关键, 也是油藏描述最基本的内容。前人提出并发展了许多储层孔渗饱参数的预测方法, 如根据理论孔隙度模型定量计算孔隙度[2]、根据SDR模型[3]和TimCoates模型[4]计算储层渗透率、采用线性假设方式计算饱和度[5]等方法。虽然在一定条件下上述方法均取得了不错的预测结果, 但它们是基于统计学的思想或通过简化地质条件建立理论模型来估算储层孔渗饱参数, 未考虑这些参数与测井数据之间复杂的非线性关系及空间的连续性。由于地下地质情况复杂, 不同类型的测井参数响应不同[6], 以及地震信息与测井参数之间存在复杂的非线性关系[7], 故难以建立岩心分析数据与测井响应之间的关系。此外, 上述方法受主观因素的影响较大, 故其预测结果的准确性较差。

近年来机器学习在科学和工程领域取得了突破性的进展, 很多学者对此进行了深入研究, 已将一些常规的浅层机器学习方法应用于储层孔渗饱参数预测, 如人工神经网络(artificial neural network, ANN)[8-10]、支持向量机(support vector machine, SVM)[11-13]等, 在一定条件下, 这些方法取得了较传统方法更好的预测效果。但由于这些浅层机器学习方法网络结构简单, 所以其解决复杂非线性问题的能力有限, 泛化能力在一定程度上受到制约[14]。测井曲线与储层孔渗饱参数之间大都表现出极其复杂的非线性特征, 难以明确其数学关系, 因此将浅层机器学习方法应用于储层孔渗饱参数的预测亦具有一定的局限性。

由HINTON等[15]提出的深度学习方法, 是当前机器学习领域发展最活跃的研究方向之一。其网络结构较浅层的机器学习方法更复杂, 具有多个隐藏层, 其核心思想就是利用各隐藏层之间的连接来挖掘样本数据间的本质关联与规律, 使得计算机可以像人一样具有从大量的信息中不断地学习、挖掘数据间存在的本质联系和深层次特征, 实现解决复杂非线性问题的能力。目前, 常见的深度学习方法主要有卷积神经网络(convolutional neural network, CNN)[16]、循环神经网络(recurrent neural network, RNN)[17]、栈式自编码(stacked auto-encoder, SAE)[18]等, 上述方法已成功应用于图像处理、语音识别等[19]领域。近年来, 很多研究者将深度学习方法应用于油气地震储层预测[20-24]和储层物性参数预测[25-26], 与浅层机器学习方法相比, 深度学习方法的预测准确率更高。测井曲线和孔渗饱参数是不同深度地层特征的响应, 整体而言具有一定的时序渐变性。采用深度学习方法进行物性参数预测容易忽略孔渗饱参数随储层深度变化的趋势及不同地层参数历史数据之间的关联性。

循环神经网络是一类用于处理序列数据的神经网络, 其核心是内部设置的自循环结构。信息在循环神经网络中传递时, 每一次循环都会重新判断, 以在隐藏层细胞中保留部分有用信息, 这些被保留的部分有用信息与新的输入信息一起传递到下一个细胞单元, 与之后的输入信息共同决定输出结果[27]。相较传统层间全连接、层内无连接的神经网络, RNN隐藏层内的细胞单元之间是有连接的, 即当前时刻的输入信息和之前的信息共同作用于下一时刻, 这也符合地质学研究思想以及实际地质分析经验。长短期记忆(long short term memory, LSTM)[28]网络是对RNN的改进, 可有效解决梯度消失及梯度爆炸等问题, 使得网络具有更强的记忆功能, 可记忆更长的历史数据信息, 已有学者将其应用于储层物性参数预测[29]和测井曲线合成[30-31]等。LSTM网格存在结构复杂、训练参数多、且训练过程收敛速度较慢等问题。门控循环单元(gated recurrent unit, GRU)神经网络[32]是对LSTM网络的优化, 与LSTM网络功能相当, 但前者具有更快的收敛速度, 该网络已在电力[33]、交通[34]和金融[35]等领域得到应用, 但目前未见应用于储层孔渗饱参数预测的相关文献。

基于此, 本文使用GRU神经网络对储层孔渗饱参数进行预测。首先通过基于Copula函数的相关性分析(correlation analysis, CA)定量计算各测井曲线与孔渗饱参数之间的非线性相关程度, 筛选出与孔渗饱参数关联度较高的测井参数, 然后利用GRU神经网络建立测井数据与孔渗饱参数之间的非线性映射关系(以下简称CA_GRU)模型, 最后将上述流程应用于实际资料测试以证明预测结果的精度和鲁棒性。

1 相关性分析

测井曲线与孔渗饱参数均反映了不同深度地层的特征, 在一定程度上, 孔渗饱参数与测井曲线存在一定的相关性, 但测试数据往往包含从不同角度反映地层不同信息的多种参数。实际应用中, 如果直接利用所有样本数据建立测井曲线与孔渗饱参数之间的映射关系模型, 不但增加了模型的复杂度, 也可能丢失部分有用信息或加入无用的冗余信息, 导致预测的准确性降低。对一些物性参数进行预测时需要考虑不同测井曲线对物性参数预测的影响, 如通过线性相关性分析选择测井资料中一部分可靠的、有代表性且对预测参数敏感的曲线作为输入进行模型训练和预测, 但目前多采用Pearson线性相关系数进行相关性计算[23]。Pearson相关系数只聚焦于线性相关, 往往忽略了孔渗饱参数与测井曲线之间的非线性关系。当测井数据与预测参数之间为非线性相关关系时, 仍采用线性相关系数度量其相关关系是不可靠的。而利用Copula函数来分析测井数据与预测参数之间的相关性可在一定程度上减弱这种影响。基于Copula函数及其推导出的相关性指标, 可以准确度量测井曲线与预测物性参数之间存在的非线性、非对称性相关关系。因此本文利用基于Copula函数的Kendall秩相关系数τ和Spearman秩相关系数ρ来定量分析测井曲线与孔渗饱参数之间的相关关系, 其中Kendall秩相关系数τ可用于度量测井参数与孔渗饱参数之间的一致性变化程度, Spearman秩相关系数ρ可用于度量测井曲线与孔渗饱参数之间的单调相关程度, 并与Pearson线性相关系数的计算结果进行对比。

Copula函数理论准确描述了非线性和非对称变量之间的相关性。具体如下:假设1个n元随机变量分布函数H的边缘概率分布函数分别为F(x1), F(x2), …, F(xn), 其中x1, x2, …, xnn维随机变量, 则存在一个Copula函数C满足如下条件:

$ \begin{array}{*{20}{l}} {H({x_1},{x_2}, \cdots ,{x_n}) = C[{F_1}({x_1}),{F_2}({x_2}), \cdots ,}\\ {{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {F_n}({x_n})]} \end{array} $ (1)

其中, Nt-Copula函数定义为[36]:

$ \begin{array}{l} \mathit{\boldsymbol{c}}(u,\rho ,v) = |\mathit{\boldsymbol{\rho }}{|^{ - \frac{1}{2}}}\\ \frac{{\varGamma \left( {\frac{{v + N}}{2}} \right){{\left[ {\varGamma \left( {\frac{v}{2}} \right)} \right]}^{N - 1}}{{\left( {1 + \frac{1}{v}{\mathit{\boldsymbol{\zeta }}^{ - 1}}{\mathit{\boldsymbol{\rho }}^{ - 1}}\mathit{\boldsymbol{\zeta }}} \right)}^{ - \frac{{v + N}}{2}}}}}{{{{\left[ {\varGamma \left( {\frac{{v + 1}}{2}} \right)} \right]}^N}\prod\limits_{n = 1}^N {{{\left( {1 + \frac{{{\mathit{\boldsymbol{\zeta }}^2}}}{v}} \right)}^{ - \frac{{v + 1}}{2}}}} }} \end{array} $ (2)

式中:ρ是对角线上的所有元素的N阶对称正定矩阵; |ρ|表示该矩阵的行列式; Γ(·)表示伽马分布的分布函数; v表示Nt-Copula函数的自由度; ζ=[tv(u1), tv(u2), …, tv(uN)]; tv(·)表示自由度为v的一元t分布的分布函数; ζ-1=[tv-1(u1), tv-1(u2), …, tv-1(uN)]; tv-1表示自由度为v的一元t分布的逆函数; ui(i=1, 2, …, N)为输入变量。

Kendall秩相关系数τ用于度量xy的一致性变化程度, 假设(x1, y1), (x2, y2)是独立同分布的向量, x1, x2x, y1, y2y, 则:

$ \begin{array}{*{20}{l}} {\tau = P[({x_1} - {x_2})({y_1} - {y_2}) > 0] - }\\ {P[({x_1} - {x_2})({y_1} - {y_2}) < 0]} \end{array} $ (3)

式中:P表示概率分布函数。对上式进行推导后可以得到:

$ \begin{array}{*{20}{l}} {\tau = 2P[({x_1} - {x_2})({y_1} - {y_2}) > 0] - 1}\\ {\tau \in [ - 1,1]} \end{array} $ (4)

假设(x1, y1)对应的Copula函数是C1(u, v), 则可由相应的Copula函数得出Kendall秩相关系数τ:

$ \tau = 4\int\limits_0^1 {\int\limits_0^1 {{C_1}} } (u,v){\rm{d}}{C_1}(u,v) - 1 $ (5)

对于Spearman秩相关系数ρ, 假设(x, y)的联合分布函数为H(x, y), xy对应的边缘分布函数分别是F(x)和G(y), 若H(x, y)=F(x)G(y), 则随机变量x, y相互独立。若x0x, y0yx0, y0相互独立。若(x, y)与(x0, y0)也独立, 则:

$ \begin{array}{*{20}{c}} {\rho = 3\{ P[(x - {x_0})(y - {y_0}) > 0] - }\\ {{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} P[(x - {x_0})(y - {y_0}) < 0]\} } \end{array} $ (6)

假设(x, y)的Copula函数为C(u, v), 其中u=F(x), v=G(y), 则同样可由相应的Copula函数得出Spearman秩相关系数ρ:

$ \rho = 12\int\limits_0^1 {\int\limits_0^1 u } v{\rm{d}}C(u,v) - 3 $ (7)
2 方法概述 2.1 循环神经网络

RNN是一类专门用于处理序列数据的神经网络。在不同的时间步长上, RNN循环地共享权重, 并进行跨越时间步长的连接。只含有一个隐藏层的RNN结构如图 1所示, 与多层感知器相比, RNN的隐藏层不仅与输出层连接, 而且其隐藏层节点之间自连接, 即隐藏层的输出不仅会传输给输出层, 而且还会传输给隐藏层自身, 这使得RNN不仅在很大程度上减少了参数量, 而且也对不同时刻的序列数据建立了非线性关系。在处理非线性和时间序列问题上RNN具有独特的优势。

图 1 只含有1个隐藏层的RNN结构
2.2 长短期记忆(LSTM)神经网络

LSTM网络是对RNN的重要改进, 可有效解决RNN中易出现的梯度消失及梯度爆炸问题, 使网络具有更强的记忆功能。此外, LSTM网络还可以记忆更长的历史数据信息。LSTM网络不但具有外部的RNN循环结构, 而且还具有内部的“LSTM细胞”循环(自环), 因此LSTM不是简单地向输入和循环单元的仿射变换之后施加一个逐元素的非线性。与普通的循环网络类似, 每个单元不但有相同的输入和输出结构, 而且有更多的参数和控制信息流动的门控单元系统, LSTM隐藏层结构如图 2所示, 图中ct-1为前一序列隐藏层节点状态; ht-1为前一序列隐藏层节点输出; xt为当前序列隐藏层节点输入; ct为当前序列隐藏层节点状态; ht为当前序列隐藏层节点输出; σ表示sigmoid非线性激活函数; tanh表示双曲正切函数。

图 2 LSTM隐藏层结构

相较RNN, LSTM网络更擅长学习序列数据之间的长期依赖关系, 但LSTM网络结构复杂、参数多、收敛速度慢。

2.3 门控循环单元(GRU)神经网络

GRU神经网络作为LSTM网络的一种重要变体, 是对LSTM网络的优化和改进, 它继承了LSTM网络处理非线性和时间序列问题的能力, 而且门控循环单元在保留长短期记忆网络的记忆单元功能的同时简化了结构, 减少了参数数量从而大幅提升了训练速度[37]。GRU神经网络的门控循环单元结构如图 3所示, 图中zt表示更新门状态, rt表示重置门状态, $\tilde{\boldsymbol{h}}_{t}$表示当前神经元的待定输出。GRU神经网络在LSTM网络的基础上改良了“门”的设计, 即将原来由3个“门”组成的细胞结构优化为2个“门”组成的细胞结构, 即门控循环单元由重置门(reset gate)和更新门(update gate)构成。

图 3 GRU神经网络的门控循环单元结构

重置门rt和更新门ztt时刻的状态定义为:

$ {{\mathit{\boldsymbol{r}}_t} = \sigma ({\mathit{\boldsymbol{W}}_r}{\mathit{\boldsymbol{x}}_t} + {\mathit{\boldsymbol{U}}_r}{\mathit{\boldsymbol{h}}_{t - 1}})} $ (8)
$ {{\mathit{\boldsymbol{z}}_t} = \sigma ({\mathit{\boldsymbol{W}}_z}{\mathit{\boldsymbol{x}}_t} + {\mathit{\boldsymbol{U}}_z}{\mathit{\boldsymbol{h}}_{t - 1}})} $ (9)

式中:WU为权重矩阵; xt为输入数据。可根据下式计算隐藏状态ht和候选隐藏状态$\tilde{\boldsymbol{h}}_{t}$ :

$ {{\mathit{\boldsymbol{h}}_t} = (1 - {z_t}){\mathit{\boldsymbol{h}}_{t - 1}} + {\mathit{\boldsymbol{z}}_t}{{\mathit{\boldsymbol{\tilde h}}}_t}} $ (10)
$ {{{\mathit{\boldsymbol{\tilde h}}}_t} = {\rm{tan}}h[{\mathit{\boldsymbol{W}}_h}{\mathit{\boldsymbol{x}}_t} + {\mathit{\boldsymbol{U}}_r}({\mathit{\boldsymbol{r}}_t} * {\mathit{\boldsymbol{h}}_{t - 1}})]} $ (11)

式中:*表示点乘。

(8) 式和(11)式中两种不同的激活函数可分别定义为:

$ {\sigma (x) = \frac{1}{{1 + {\rm{exp}}(x)}}} $ (12)
$ {\tan {\kern 1pt} h(x) = \frac{{1 - {\rm{exp}}(2x)}}{{1 + {\rm{exp}}(2x)}}} $ (13)
2.4 GRU神经网络预测模型结构

储层孔渗饱参数预测中, 测井曲线由浅到深反映了不同地质时期的地层特征, 其变化趋势包含了预测物性参数的重要信息。利用传统的统计分析和常规的机器学习方法预测孔渗饱参数, 易破坏测井参数历史序列中潜在的内部联系, 降低预测结果的精确度。GRU神经网络具有长期记忆功能, 能处理序列数据间的长期依赖关系, 可有效降低此类关系的影响, 其内部的门控机制还可自动地学习序列特征。图 4为本文构建的3层GRU神经网络模型结构。

图 4 3层GRU神经网络模型结构

图 4可以看出, GRU神经网络模型结构包括输入层、隐藏层和输出层, 其中隐藏层是网络结构的核心部分。训练过程中需要对GRU神经网络模型结构的超参数, 包括隐藏层层数、隐藏层神经元个数等主要结构超参数进行优化调整, 理论上隐藏层层数和神经元个数越多越好, 网络越深越复杂获得的预测精度越高。但实际应用中, 隐藏层层数和神经元个数选择过多会导致训练困难, 易造成过拟合, 进而降低预测精度; 网络太浅太简单又易造成欠拟合, 达不到预期要求。所以隐藏层层数和神经元个数的选取对网络预测性能至关重要, 我们需要平衡网络的学习能力与训练的复杂程度以及对预测精度的要求, 根据经验和多次实验结果确定二者的最佳值。此外, 对于学习率、批量大小、最大迭代次数等训练超参数, 选取合适的参数值可在一定程度上降低模型的复杂度, 提高模型的收敛速度与预测精度。

2.5 GRU神经网络的训练过程

GRU神经网络的训练过程大致分为如下3个步骤:1)将训练数据输入网络, 沿着前向传播方向从浅层到深层顺序计算GRU神经网络单元的输出, 得到当前时间点输入数据对应的预测输出值; 2)沿着反向传播方向计算每个神经元细胞的误差, GRU神经网络误差的反向传播包括沿时间顺序传播和在网络层级之间逐层向上一级传播; 3)根据反向传播计算得到的误差计算每个权重的梯度, 采用学习率自适应优化算法(Adam算法)计算得到权重梯度调整网络参数。重复以上步骤进行循环迭代, 不断优化网络。

3 基于CA_GRU的组合预测模型

基于CA_GRU的组合预测模型的建模流程如图 5所示, 主要包括以下6个步骤。

图 5 基于CA_GRU的组合预测模型的建模流程

1) 根据已获得的测井曲线和孔渗饱参数, 利用基于Copula函数的Kendall秩相关系数τ和Spearman秩相关系数ρ以及Pearson线性相关系数P定量计算并分析两两之间的相关程度, 优选出对预测参数敏感的测井曲线, 构成新样本数据。

2) 对新样本数据进行标准化处理, 并且按照一定的比例划分训练集和测试集。

3) 分别对孔渗饱参数构建GRU神经网络模型, 初始化网络参数, 并根据试验确定网络层数、隐藏层神经元个数等超参数。

4) 利用划分出的训练集对已初始化且初步确定网络参数的GRU神经网络模型进行迭代训练, 在训练过程中不断优化网络结构, 直至模型训练误差达到事先设定的目标, 然后保存模型。

5) 利用划分出的测试集对已训练好的GRU神经网络模型展开测试, 将得到的模型预测值进行反标准化处理, 得到与实际值相对应的物性参数预测值。

6) 对比分析预测值与实际值, 开展误差分析, 根据相应的评价指标评价模型预测性能优劣。

4 实验与分析 4.1 数据准备

本文实验数据来自于四川盆地某探区的实际测井数据, 共8482组测井数据样本, 包括自然伽马(GR)、补偿中子(CNL)、声波时差(AC)、密度(DEN)、井径(CAL)、井斜(DEV)、泥质含量(SH)、地层真电阻率(RT)、冲洗带地层电阻率(RXO)以及相对应的孔隙度(POR)、渗透率(PERM)、饱和度(SW)数据。本文选择测深为5230~5430m的1580组测井数据作为GRU神经网络模型的测试数据集, 用以测试模型预测性能, 剩下的数据作为训练数据集训练模型。

4.2 基于Copula函数的相关性分析

分别采用基于Copula函数的Kendall秩相关系数τ和Spearman秩相关系数ρ以及Pearson线性相关系数P定量计算测井数据与孔渗饱参数之间的相关关系, 3种相关系数绝对值的变化趋势如图 6所示。

图 6 测井数据与孔渗饱参数之间的相关关系

图 6可以看出, Pearson相关性分析时常会忽略变量之间的非线性相关关系。如在测井数据与渗透率相关关系计算中, 自然伽马、补偿中子和泥质含量与渗透率的线性相关系数较低, 但采用基于Copula函数的相关性测度法得到的τρ较高, 这说明自然伽马、补偿中子与渗透率的线性相关程度较低, 但非线性相关程度较高, 两者之间存在非线性相关关系, 这与实际地质分析经验相符。因此本文选择自然伽马、补偿中子、泥质含量3种测井参数预测渗透率。

在测井数据与孔隙度相关关系计算中, 密度、泥质含量与孔隙度的相关系数均较高, 说明密度、泥质含量与孔隙度之间存在强相关关系。自然伽马与孔隙度的P值较低, 但采用基于Copula函数的相关性测度法得到τρ则较高, 这说明自然伽马与孔隙度的线性相关程度较低, 但非线性相关程度较高, 两者之间存在强非线性相关关系。因此本文选择密度、泥质含量和自然伽马3种测井参数预测孔隙度。

从饱和度与测井数据之间3种相关系数的对比可以看出, 自然伽马、补偿中子、声波时差、泥质含量与饱和度之间的Pτρ均较高, 说明饱和度与自然伽马、补偿中子、声波时差、泥质含量之间存在强相关性。因此本文选择自然伽马、补偿中子、声波时差、泥质含量4种测井参数预测饱和度。

4.3 数据预处理

为减小因输入数据数量级差别较大引起的预测误差, 本文采用z-score标准化方法对输入数据进行标准化处理, 以确保输入数据处于合理的分布范围, 标准化处理的表达式为:

$ {y^*} = \frac{{{y_i} - {{\bar y}_i}}}{s} $ (14)

式中:yi为输入数据; yi为输入数据的平均值; y*为标准化处理后的数据; s为输入数据的标准差。

4.4 模型参数选取

本文采用学习率自适应的优化算法Adam算法进行网络优化调整, Adam算法融合了RMSProp算法和AdaGrad算法的优势, 可为不同参数设计独立的自适应学习率。GRU神经网络模型参数设置如下:首先根据经验进行多次试验, 初步确定学习率(learning rate)=0.005, 批量大小(batch size)=10, 时间步长(time step)=50, 参照以往经验, 隐藏层神经元个数一般设置为2n, n的取值范围为[2,8]。本文以渗透率为预测对象进行对比试验以确定网络隐藏层层数和神经元个数, 试验结果如图 7所示。图中横坐标为网络隐藏层层数, 纵坐标为渗透率的均方根误差, 不同颜色的线表示不同的隐藏层神经元个数对应的渗透率均方根误差。从图 7可以看出, 网络隐藏层层数和神经元个数过多或过少均会导致预测结果的均方根误差剧烈变化, 造成预测准确性降低, 当网络隐藏层层数为3层, 隐藏层神经元个数为16时, 预测结果的均方根误差最小, 预测精度最高, 因此确定隐藏层为3层, 神经元个数为16个。

图 7 渗透率对比实验结果
4.5 预测结果评价

本文采用均方根误差(root mean squared error, RMSE)和Pearson相关系数(P)作为评价模型预测效果的指标。其中RMSE反映目标参数与预测参数之间存在的偏差, Pearson相关系数P用于衡量预测值与实际值之间的相关程度。RMSEP的计算公式分别如下:

$ {{R_{{\rm{MSE}}}} = \sqrt {\frac{1}{N}\sum\limits_{i = 1}^N {{{(Y - Q)}^2}} } } $ (15)
$ {P = \frac{{ {\rm{Cov}} (Y,Q)}}{{\sqrt {D(Y)} \sqrt {D(Q)} }}} $ (16)

式中:Y表示预测值; Q表示实际值; N表示样本数量; D表示方差; Cov(Y, Q)为协方差函数, 表示YQ相互关系的特征。RMSE值越小, 表示模型对测井曲线的预测结果越精确; P值越大, 表示预测值与实测值的相关性越强, 更能体现实际参数的变化趋势。

4.6 结果分析 4.6.1 渗透率预测结果分析

根据相关性分析结果, 综合考虑强相关因素对预测结果的影响, 本文选取对渗透率敏感的自然伽马、补偿中子、泥质含量3种测井参数作为模型的输入, 对渗透率进行训练预测。利用4种模型(包括多元线性回归(multiple linear regression, MLR)模型)预测的渗透率均方根误差和Pearson相关系数见表 1。为了便于显示, 选取测深5395~5425m的预测数据作为分析对象, 4种模型对渗透率的预测结果如图 8所示。

表 1 4种模型的渗透率预测性能
图 8 利用4种模型预测的渗透率和渗透率真实值(1mD≈0.987×10-3μm2)

表 1可以看出, 相较于GRU、RNN和MLR模型, 利用CA_GRU模型预测的渗透率均方根误差最低, 为0.0826, Pearson相关系数最高, 为0.9028, 说明利用CA_GRU模型得到的渗透率准确度及模型性能均为最高。相较于GRU模型, 利用CA_GRU模型展开训练和预测时, 其运行时间更短。利用渗透率预测评价模型的优劣, 需要同时考虑模型预测的准确度和模型预测的效率, 利用CA_GRU模型得到的结果不仅预测准确度高, 而且因输入冗余信息少故预测效率高。因此利用CA_GRU模型进行渗透率预测具有一定的优势。

图 8可以看出, 利用CA_GRU、GRU、RNN模型得到的预测渗透率均优于MLR模型的预测结果, 表明了利用循环神经网络进行渗透率预测的有效性和实用性, 其中利用CA_GRU、GRU模型得到的预测结果又优于利用RNN模型得到的结果, 说明具有长短期记忆功能的门控循环单元神经网络在处理非线性和时序性预测问题中具有独特的优势。CA_GRU模型的预测值与真实值一致性最好, 整体趋势与真实值基本一致, 利用MLR模型得到的预测结果最差, 基本偏离了真实值。利用GRU和RNN模型均可对渗透率的变化趋势进行较准确的预测, 但在预测渗透率发生突变的峰谷值时, GRU、RNN模型均不能准确预测渗透率的变化趋势, 即未能准确分析渗透率的波动规律, 导致模型预测的准确性下降。对比可知, CA_GRU模型能较好地学习测井数据和渗透率的变化趋势, 面对渗透率变化不确定性较大的峰谷值时, 该模型可准确地学习该层段输入特征对预测渗透率的影响, 以保证预测的准确度。

4.6.2 孔隙度预测结果分析

根据相关性分析结果, 本文选取与孔隙度相关性较强的密度、泥质含量和自然伽马3种测井参数作为孔隙度预测模型的输入。分别利用4种模型预测孔隙度的均方根误差和Pearson相关系数, 结果如表 2所示。选取测深为5395~5425m的预测数据作为分析对象, 利用4种模型对孔隙度进行预测, 结果如图 9所示。由表 2可知利用CA_GRU模型预测的孔隙度均方根误差最小, 为0.6787, Pearson相关系数最高, 为0.9126。相较于其它模型, 利用CA_GRU模型得到的预测结果在均方根误差、Pearson相关系数两项指标上均出现了明显提升, 预测的准确性更高, 运行时间在一定程度上得到缩短, 这也证明了利用CA_GRU模型预测孔隙度的鲁棒性和适应性。

表 2 4种模型的孔隙度预测性能
图 9 利用4种模型预测的孔隙度和孔隙度真实值

图 9可看出, 利用CA_GRU模型得到的预测孔隙度与真实值整体一致性最好, GRU模型的拟合效果次之, MLR模型的整体预测效果最不理想。对于预测孔隙度发生阶跃变化的波峰及波谷值, 利用CA_GRU模型进行预测, 不仅能够更准确捕捉孔隙度随测井数据变化的规律, 而且也能较准确地预测孔隙度的整体变化趋势, 提高模型的预测准确度。这也说明考虑强相关影响因素有助于提高孔隙度预测精度。

4.6.3 饱和度预测结果分析

综合对比分析后, 选择τρP三者均较高的自然伽马、补偿中子、声波时差、泥质含量4种测井数据作为输入预测饱和度参数。4种模型预测的饱和度参数均方根误差和Pearson相关系数见表 3。选取测深为5230~5260m的预测数据作为研究对象, 分析比较4种预测模型的预测效果, 结果如图 10所示。

表 3 4种模型的饱和度预测性能
图 10 利用4种模型预测的饱和度和饱和度真实值

表 3可看出, CA_GRU、GRU、RNN模型在预测值与实际值的偏差及相关性上表现均优于MLR模型, 说明循环神经网络具有良好的测井数据特征参数提取能力。利用CA_GRU模型得到的均方根误差和Pearson相关系数均为最优, 数值分别为5.2421和0.9206, 并且其计算效率相较于其它模型有所提高。

图 10可以看出, 在饱和度出现峰值的深度层段, 4种模型对峰值段饱和度普遍存在预测缺失。对比几种模型的预测结果不难看出, CA_GRU模型的预测准确度更高, 稳定性更强, 在峰值处最为明显, 说明为减少冗余信息进行相关性分析并对原始数据降维处理, 对模型预测精度的提高有明显的作用。这表明利用基于Copula函数的相关性测度法定量计算预测参数与测井曲线之间的相关关系, 可优选出对预测参数更关键、更有用的数据信息。

5 结论

本文介绍了基于门控循环单元神经网络的储层孔渗饱参数预测方法。该方法采用基于Copula函数的相关性分析方法筛选出敏感的测井参数, 而后利用GRU神经网络构建预测模型。该方法不仅考虑了强相关样本数据对物性参数预测的影响, 还同时兼顾了物性参数与测井曲线之间的非线性映射关系以及测井信息随深度的变化趋势和前后关联。采用基于Copula函数的相关性测度法可优选出对物性参数敏感的测井曲线, 实现模型输入的降维, 消除变量之间的冗余性, 有利于提升模型的整体预测性能。实验结果表明门控循环单元神经网络模型拥有较强的特征提取能力, 可以从测井数据中提取有效反映物性参数的深层特征, 相较多元线性回归分析等模型其能够对孔渗饱参数进行更为准确的预测, 具有较高的精度和鲁棒性, 并具有良好的抗干扰能力, 为测井资料的精准解释提供了新的思路。

虽然利用本文方法预测储层孔渗饱参数取得了一定的效果, 但预测的孔渗饱参数不可能完全符合地层的真实情况, 预测值与真实值之间亦存在一定偏差。本文采用的深度学习模型较为单一, 模型改进以及多模型混合运用能否进一步提升模型预测效果有待进一步研究。

参考文献
[1]
潘新朋, 张广智, 印兴耀. 岩石物理驱动的储层裂缝参数与物性参数概率地震反演方法[J]. 地球物理学报, 2018, 61(2): 683-696.
PAN X P, ZHANG G Z, YIN X Y. Probabilistic seismic inversion method of reservoir fracture parameters and physical parameters driven by petrophysics[J]. Chinese Journal of Geophysics, 2018, 61(2): 683-696.
[2]
KHAKSAR A, GRIFFITHS C M. Porosity form sonic log in gas-bearing shale sandstones:field data versus empirical equations[J]. Exploration Geophysics, 1998, 29(4): 440-446.
[3]
KENYON W E, DAY P I, STRALEY C, et al. A three-part study of NMR longitudinal relaxation properties of water-saturated sandstones[J]. SPE Formation Evaluation, 1988, 3(3): 622-636.
[4]
COATES G R, GALFORD J, MARDON D, et al. A new characterization of bulk-volume irreducible using magnetic resonance[J]. The Log Analyst, 1998, 39(1): 51-63.
[5]
陈遵德.地震储层信息智能处理方法研究[D].成都: 成都理工学院, 2001
CHEN Z D.Research on intelligent processing method of seismic reservoir information[D].Chengdu: Chengdu Institute of Technology, 2001
[6]
张丽华, 潘保芝, 单刚义. 岩心样品孔隙度渗透率实验研究进展[J]. 地球物理学进展, 2018, 33(2): 777-782.
ZHANG L H, PAN B Z, SHAN G Y. Progress in experimental research on permeability of core samples[J]. Progress in Geophysics, 2018, 33(2): 777-782.
[7]
乐友喜, 杨丽. 储层地震预测基础理论方法研究[J]. 天然气地球科学, 2009, 20(4): 563-570.
LE Y X, YANG L. Basic theories and methods of seismic reservoir prediction[J]. Natural Gas Geoscience, 2009, 20(4): 563-570.
[8]
李凤杰, 王多云, 苑克增, 等. 人工神经网络技术在油田储层物性预测中的应用——以西峰油田为例[J]. 天然气地球科学, 2004, 15(3): 243-246.
LI F J, WANG D Y, YUAN K Z, et al. Application of artificial neural networks in reservoir parameter prediction in Xifeng oilfield[J]. Natural Gas Geoscience, 2004, 15(3): 243-246.
[9]
ITURRAR N U, PARRA J O. Artificial Neural Networks applied to estimate permeability, porosity and intrinsic attenuation using seismic attributes and well-log data[J]. Journal of Applied Geophysics, 2014, 107(8): 45-54.
[10]
朱林奇, 张冲, 何小菊, 等. 基于改进BPNN与T2全谱的致密砂岩储层渗透率预测[J]. 石油物探, 2017, 56(5): 727-734.
ZHU L Q, ZHANG C, HE X J, et al. Permeability prediction of tight sandstone reservoir based on improved BPNN and T2 full-spectrum[J]. Geophysical Prospecting for Petroleum, 2017, 56(5): 727-734.
[11]
GU Y F, BAO Z D, CUI G D. Permeability prediction using hybrid techniques of continuous restricted Boltzmann machine, particle swarm optimization and support vector regression[J]. Journal of Natural Gas Science and Engineering, 2018, 59: 97-115. DOI:10.1016/j.jngse.2018.08.020
[12]
AI-ANAZI A F, GATES I D. Support vector regression to predict porosity and permeability:Effect of sample size[J]. Computers & Geosciences, 2012, 39(2): 64-76.
[13]
袁伟, 张占松, 张泽宇, 等. 基于储层分类的支持向量机渗透率预测[J]. 测井技术, 2015, 39(4): 450-454.
YUAN W, ZHANG Z S, ZHANG Z Y, et al. Permeability prediction using support vector machine based on reservoir classification[J]. Well Logging Technology, 2015, 39(4): 450-454.
[14]
郭丽丽, 丁世飞. 深度学习研究进展[J]. 计算机科学, 2015, 42(5): 28-33.
GUO L L, DING S F. Research progress on deep learning[J]. Computer Science, 2015, 42(5): 28-33.
[15]
HINTON G E, SALAKHUTDINOV R R. Reducing the dimension-ality of data with neural networks[J]. Science, 2006, 313(5786): 504-507. DOI:10.1126/science.1127647
[16]
KRIZHEVSKY A, SUTSKEVER I, HINTON G E. Imagenet classification with deep convolutional neural networks[J]. Neural Information Processing Systems, 2012, 25(2): 1097-1105.
[17]
GRAVES A, MOHAMED A, HINTON G.Speech recognition with deep recurrent neural networks[C]//Proceedings of IEEE International Conference on Acoustics, Speech and Signal Processing.Vancouver: IEEE, 2013: 6645-6649
[18]
LV Y S, DUAN Y J, KANG W W, et al. Traffic flow prediction with big data:a deep learning approach[J]. IEEE Transactions on Intelligent Transportation Systems, 2015, 16(2): 865-873.
[19]
LE C Y, BENGIO Y, HINTON G. Deep learning[J]. Nature, 2015, 521(7553): 436-444. DOI:10.1038/nature14539
[20]
付超, 林年添, 张栋, 等. 多波地震深度学习的油气储层分布预测案例[J]. 地球物理学报, 2018, 61(1): 293-303.
FU C, LIN N T, ZHANG D, et al. Prediction of reservoirs using multi-component seismic data and the deep learning method[J]. Chinese Journal of Geophysics, 2018, 61(1): 293-303.
[21]
高建虎, 桂金咏, 李胜军, 等. 基于角弹性参数的多波地震储层预测方法[J]. 地球物理学报, 2018, 61(6): 2459-2470.
GAO J H, GUI J Y, LI S J, et al. Reservoir prediction of multi-component seismic data based on angle-elastic parameters[J]. Chinese Journal of Geophysics, 2018, 61(6): 2459-2470.
[22]
朱剑兵, 王兴谋, 冯德永, 等. 基于双向循环神经网络的河流相储层预测方法及应用[J]. 石油物探, 2020, 59(2): 250-257.
ZHU J B, WANG X M, FENG D Y, et al. Predicting fluvial reservoirs using seismic data based on a Bi-recurrent neural network[J]. Geophysical Prospecting for Petroleum, 2020, 59(2): 250-257.
[23]
林年添, 付超, 张栋, 等. 无监督与监督学习下的含油气储层预测[J]. 石油物探, 2018, 57(4): 601-610.
LIN N T, FU C, ZHANG D, et al. Supervised learning and unsupervised learning for hydrocarbon prediction using multiwave seismic data[J]. Geophysical Prospecting for Petroleum, 2018, 57(4): 601-610.
[24]
赵改善. 石油物探智能化发展之路:从自动化到智能化[J]. 石油物探, 2019, 58(6): 791-810.
ZHAO G S. Road to intelligent petroleum geophysical exploration:From automatic to intelligent[J]. Geophysical Prospecting for Petroleum, 2019, 58(6): 791-810.
[25]
段友祥, 徐冬胜, 孙歧峰, 等. DBN在测井解释中的研究与应用[J]. 应用科学学报, 2018, 36(4): 689-697.
DUAN Y X, XU D S, SUN Q F, et al. Research and application on DBN for well log interpretation[J]. Journal of Applied Sciences, 2018, 36(4): 689-697.
[26]
杨柳青, 陈伟, 查蓓. 利用卷积神经网络对储层孔隙度的预测研究与应用[J]. 地球物理学进展, 2019, 34(4): 1548-1555.
YANGN L Q, CHEN W, ZHA B. Prediction and application of reservoir porosity by convolutional neural network[J]. Progress in Geophysics, 2019, 34(4): 1548-1555.
[27]
PALAM R B.Prediction as a candidate for learning deep hierarchical models of data[D].Kongens Lyngby: Technical University of Denmark, 2012
[28]
HOCHREITER S, SCHMIDHUBER J. Long short-term memory[J]. Neural Computation, 1997, 9(8): 1735-1780. DOI:10.1162/neco.1997.9.8.1735
[29]
安鹏, 曹丹平, 赵宝银, 等. 基于LSTM循环神经网络的储层物性参数预测方法研究[J]. 地球物理学进展, 2019, 34(5): 1849-1858.
AN P, CAO D P, ZHAO B Y, et al. Reservoir physical parameters prediction based on LSTM recurrent neural network[J]. Progress in Geophysics, 2019, 34(5): 1849-1858.
[30]
张东晓, 陈云天, 孟晋. 基于循环神经网络的测井曲线生成方法[J]. 石油勘探与开发, 2018, 45(4): 598-607.
ZHANG D X, CHEN Y T, MENG J. Synthetic well logs generation via Recurrent Neural Networks[J]. Petroleum Exploration and Development, 2018, 45(4): 598-607.
[31]
王俊, 曹俊兴, 刘哲哿, 等. 基于长短期记忆网络的钻前测井曲线预测方法[J]. 成都理工大学学报(自然科学版), 2020, 47(2): 227-236.
WANG J, CAO J X, LIU Z G, et al. Method of well logging prediction prior to well drilling based onlong short-term memory recurrent neural network[J]. Journal of Chengdu University of Technology(Science & Technology Edition), 2020, 47(2): 227-236.
[32]
CHO K, MERRIENBOER B V, GULCEHRE C, et al.Learning phrase representations using RNN encoder-decoder for statistical machine translation[C]//Conference on Empirical Methods in Natural Language Processing.Stroudsburg: Association for Computational Linguistics, 2014: 1724-1734
[33]
王增平, 赵兵, 纪维佳, 等. 基于GRU-NN模型的短期负荷预测方法[J]. 电力系统自动化, 2019, 43(5): 53-62.
WANG Z P, ZHAO B, JI W J, et al. Short-term load forecasting method based on GRU-NN model[J]. Automation of Electric Power Systems, 2019, 43(5): 53-62.
[34]
刘明宇, 吴建平, 王钰博, 等. 基于深度学习的交通流量预测[J]. 系统仿真学报, 2018, 30(11): 4100-4105.
LIU M Y, WU J P, WANG Y B, et al. Traffic flow prediction based on deep learning[J]. Journal of System Simulation, 2018, 30(11): 4100-4105.
[35]
张金磊, 罗玉玲, 付强. 基于门控循环单元神经网络的金融时间序列预测[J]. 广西师范大学学报(自然科学版), 2019, 37(2): 82-89.
ZHANG J L, LUO Y L, FU Q. Prediction of financial time series based on gated loop unit neural network[J]. Journal of Guangxi Normal University(Natural Science Edition), 2019, 37(2): 82-89.
[36]
NELSEN R B. An introduction to Copulas[M]. New York: Springer Science Business Media, 2013: 10-102.
[37]
刘洋.基于GRU神经网络的时间序列预测研究[D].成都: 成都理工大学, 2017
LIU Y.The research of time series prediction based on GRU neural network[D].Chengdu: Chengdu University of Technology, 2017