一种融合时空特征的油藏生产指标机器学习预测方法
未命名
08-07
阅读:64
评论:0
1.本发明属于油藏开发技术领域,具体涉及一种融合时空特征的油藏生产指标机器学习预测方法。
背景技术:
2.在进行多年的开采后,油田的产量逐渐降低,含水率不断上升。因此,充分发掘油田的潜力成为科研人员和油田工作者面临的主要难题。为实现上述目标,需要准确预测油藏生产指标,进而才能在此基础上对油田生产进行合理优化。传统的生产指标预测方法主要包括经验公式法和数值模拟法两大类。经验公式法主要有水驱曲线法、产量递减法等,这类方法由于缺乏理论支撑,预测结果有很大的不确定性,与实际产量有很大误差。数值模拟方法通过偏微分方程描述地下多相流体的流动,进而实现对产量的预测。数值模拟方法有明确的理论基础,因此预测结果相较于经验公式法有较大提高。然而,复杂的偏微分方程没有明确的解析解,需要通过有限差分,有限体积等数值计算,这些方法的计算量巨大,需要大量的计算资源。
3.近年来,机器学习和数据挖掘的最新进展在不同的科学领域产生了变革性成果,同时也为油田生产开发提供了一条有别于上述传统方法的新思路。值得一提的是,油田在长达几十年的生产中,汇总了大量的生产数据,为数据挖掘技术的实施提供了有利条件。机器学习模型具有很强的非线性表达能力,可以准确刻画多输入与多输出之间的非线性关系,能够构建油田开发产量预测中多因素输入与输出之间的复杂映射关系,从而获得更高精度的预测性能。
4.影响油藏生产指标的因素众多,主要可分为静态影响因素和动态影响因素。由于测量原因,部分因素数据大量缺失,且一些因素之间存在复杂的关联性,导致数据冗余,这些都会对油田的产量预测造成不利影响。因此,合理的提取输入因素的特征至关重要。然而,当前基于机器学习的预测方法只是通过简单的数据清洗处理数据,而后通过相关性分析筛选影响预测目标的因素,难以真正实现静态影响因素及动态影响因素的相互融合。
技术实现要素:
5.为了解决上述问题,本发明提出了一种融合时空特征的油藏生产指标机器学习预测方法。该方法通过循环自编码器捕捉动态影响因素的时序特征,将复杂的动态影响因素压缩为低维潜变量;而后将提取到的动态影响因素中涵盖的时间序列特征和静态影响因素进行拼接融合,将融合后的时空特征作为极限梯度提升树的输入,实现对油藏生产指标的快速、准确预测。
6.本发明的技术方案如下:一种融合时空特征的油藏生产指标机器学习预测方法,包括如下步骤:步骤1、确定待预测的生产指标及生产指标的影响因素,建立油藏生产指标预测样本库;
步骤2、筛选得到油藏生产指标的主控因素;步骤3、构建循环自编码器,提取动态影响因素的时间序列特征;步骤4、构建基于极限梯度提升树的油藏生产指标预测模型;步骤5、使用交叉验证技术评估模型对油藏生产指标的预测效果,然后利用验证效果良好的模型进行油藏生产指标预测。
7.进一步地,步骤1的具体过程为:步骤1.1、对油藏原始数据进行数据清洗;数据清洗包括缺失数据处理及异常值处理;针对缺失数据,直接利用油藏原始数据中与缺失数据为同类数据的均值替代;针对异常值,首先通过箱型图识别异常值,然后利用油藏原始数据中与异常值为同类数据的均值替代;箱型图识别的过程为:首先将数据由小到大排序,然后把数据四等分,划分最小的25%和其余数据的值为下四分位,记作;处于数据中间的值为中位数,记作;划分最大的25%和其余数据的值为上四分位,记作;上四分位和下四分位之差为四分位距,记作;此时,计算得到箱型图的非异常值上限为,及箱型图的非异常值下限为;而处于上限和下限的值被识别为异常值;步骤1.2、确定待预测的油藏生产指标及生产指标的影响因素;待预测的油藏生产指标为未来某一时间段的累积产油量和累积产水量;生产指标的影响因素分为静态影响因素和动态影响因素;静态影响因素为随时间不变或无明显变化的量,包括油层中深、平均有效厚度、平均空气渗透率、渗透率极差、地层原油粘度,这些静态影响因素涵盖了空间特征;动态影响因素为随时间有明显变化的量,包括可采储量采出程度、总油井口数、总水井口数、年产油量、年产水量,这些动态影响因素涵盖了时间序列特征。
8.进一步地,步骤2中,分别使用灰色关联度和随机森林对静态影响因素和动态影响因素中的各个影响因素进行定量分析,确定与预测指标高相关的主控因素;具体过程为:步骤2.1、针对静态影响因素,利用灰色关联度选取影响预测指标的主控因素;将预测指标视为参考序列,影响预测指标的因素视为比较序列;采用均值法对影响因素原始数据进行无量纲化处理,具体计算公式如下:
ꢀꢀꢀꢀ
(1);其中,表示影响因素原始数据中第个序列第个元素值,表示无量纲化处理后第个序列第个元素值;表示序列总个数,表示序列中元素的总个数;在进行无量纲化处理后,定义一个标准化矩阵,如下所示:
ꢀꢀꢀꢀ
(2);其中,将矩阵的第0列作为参考序列,将矩阵的第1列到最后一列作为个比较序列;然后每列比较序列分别减去参考序列,得到一个差值矩阵,如下所示:(3);然后分别计算每个比较序列和参考序列对应元素的关联系数,计算公式如下:
ꢀꢀꢀꢀ
(4);其中,表示对差值矩阵中的每个元素取绝对值,表示对差值矩阵中的每个元素取绝对值后的最小值,表示对差值矩阵中的每个元素取绝对值后的最大值,表示分辨系数;表示无量纲化处理后第0个序列第个元素值,第0个序列为参考序列;最后,将某个比较序列中各个元素和参考序列中各个元素的灰色关联系数求取均值,得到该比较序列和参考序列的灰色关联度,公式如下:
ꢀꢀꢀꢀ
(5);其中,表示参考序列的第个元素值与第个序列第个元素值的灰色关联系数;通过公式(1)到公式(5),分别计算累积产水量和累积产油量与静态影响因素的灰色关联度,预先设置灰色关联度阈值,将高于灰色关联度阈值的静态影响因素作为主控因素;步骤2.2、针对动态因素,采用随机森林算法筛选主控因素;
将预测指标视为随机森林算法的预测目标;将连续年的动态影响因素视为输入特征,用表示动态影响因素的总个数,因此输入特征的总数为个;通过随机森林算法计算出各个特征的贡献度,并整理成为一个贡献度矩阵:
ꢀꢀꢀꢀ
(6);其中,表示第个动态影响因素第年的特征贡献度,,;贡献度矩阵中所有元素的总和为1;而后,将各个动态影响因素所有时间段特征的贡献度求和,得到每个动态影响因素对目标的贡献度,公式如下:
ꢀꢀꢀꢀ
(7);其中,表示第个动态影响因素对目标的贡献度;对每个动态影响因素的贡献度按照由高到低的顺序进行排序,选择前5个动态影响因素作为主控因素。
9.进一步地,步骤3中,循环自编码器由编码器和解码器两部分组成,使用门控循环单元构建编码器和解码器;门控循环单元的基本结构包括重置门、更新门和隐藏层,门控循环单元的方程式如下所示:
ꢀꢀꢀꢀ
(8);其中,表示重置门,用于控制前一时刻的隐藏层在当前候选隐藏层中的占比;表示更新门,用于控制前一时刻的隐藏层在当前隐藏层中的占比;和分别表示和时刻的隐藏层状态,表示时刻的候选隐藏层状态;表示sigmoid激活函数,表示双曲正切激活函数;表示时刻输入的信息;、、分别表示重置门、更新门、候选隐藏层中用于提取中的特征的神经网络的权重;、、分别表示重置门、更新门、候选隐藏层中用于提取中的特征的神经网络的权重;、、分别表示重置门、更新门、候选隐藏层中用于提取中的特征的神经网络的偏置;、、分别表示重置门、更新门、候选隐藏层中用于提取中的特征的神经网络的偏置;表示hadamard
乘积运算;在利用循环自编码器提取时间序列特征之前,使用最小-最大归一化方法对模型输入数据进行线性变换,将不同属性的动态影响因素统一到相同范围,从而消除不同动态影响因素之间的量纲影响;最大-最小归一化方法的计算公式如下:
ꢀꢀꢀꢀ
(9);其中,表示原始高维时间序列数据,表示归一化高维时间序列数据,和分别表示原始高维时间序列数据中的最大值和最小值;编码器从归一化高维时间序列数据中提取低维特征,表达式如下所示:
ꢀꢀꢀꢀ
(10);其中,表示基于门控循环单元的编码器,表示编码器的参数;解码器将低维特征重构,得到重构的归一化高维时间序列新数据,表达式为:
ꢀꢀꢀꢀ
(11);其中,表示基于门控循环单元的解码器,表示解码器的参数;循环自编码器的训练目标为最小化输入数据和输出数据的差异,使用平均绝对误差损失函数衡量重构差异,并使用自适应矩估计算法对循环自编码器的参数和进行训练。
10.进一步地,步骤4中,将由循环自编码器提取的动态影响因素中涵盖的时间序列特征与静态影响因素中的空间特征进行融合,得到时空特征,然后将时空特征作为极限梯度提升树的输入,对油藏生产指标进行预测,具体过程为:基于极限梯度提升树的油藏生产指标预测模型定义为下式:
ꢀꢀꢀꢀ
(12);其中,指第个回归树模型,指回归树模型的总数,为第个回归树模型的输入数据,每个回归树模型只选择全部特征的一部分作为输入,因此每个回归树模型的输入特征都是不同的,指油藏生产指标预测模型最终的预测值;极限梯度提升树的原理为不断训练新的回归树模型来拟合预测值和真实值的残差,其迭代过程为:
ꢀꢀꢀꢀ
(13);其中,表示前个回归树模型的预测结果;表示前个回归树模型的预测结果;表示第个回归树模型,表示第个回归树模型的输入数据;针对累积产油量和累积产水量两个生产指标,分别进行特征筛选及动态影响因素特征提取,而后将提取特征和静态影响因素融合后得到时空特征作为基于极限梯度提升树的油藏生产指标预测模型输入,利用该预测模型得到油藏生产指标预测结果。
11.进一步地,步骤5的具体过程为:引入十折交叉验证对模型进行评估;十折交叉验证是指将整个样本数据集平均分为10份,轮流选择1份作为测试集,另外9份作为训练集,进行交叉实验;每次实验都会得到一个回归评价指标,为回归评价指标序号,;对10次实验得到的回归评价指标求取均值,作为对模型的综合评价;回归评价指标均值的计算公式为:;进行多次随机划分数据集进行十折交叉验证,再求多次十折交叉验证评价结果的均值,作为对模型的最终评价结果;选择确定系数作为回归评价指标,计算公式为:
ꢀꢀꢀꢀ
(14);其中,表示第个样本,为测试集样本总数,与分别表示数值模拟器的计算结果和预测模型的预测结果,表示数值模拟器的计算结果的均值;最终利用验证效果良好的模型进行油藏生产指标预测,预测时输入待预测区块的油藏原始数据,输出未来某一时间段的累积产油量和累积产水量。
12.本发明所带来的有益技术效果:本发明针对油藏生产指标预测这一生产优化的必要环节,提出了一种融合时空特征的油藏生产指标机器学习预测方法。本发明通过循环自
编码器提取动态影响因素特征,有效的融合了动态影响因素中时间序列特征和静态影响因素中的空间特征,并利用极限梯度提升树实现油藏生产指标的快速、准确预测,形成了一个高效的油藏生产指标框架,具有很好的推广应用价值。
附图说明
13.图1为本发明考虑融合时空特征的油藏生产指标机器学习预测方法流程示意图。
14.图2为本发明引入的循环自编码器结构示意图。
15.图3为本发明提出的基于循环自编码器和极限梯度提升树的油藏生产指标预测模型结构示意图。
16.图4为本发明用于综合评估预测模型预测效果的十折交叉验证方法示意图。
17.图5为本发明实施例中针对累积产油量的预测效果图。
18.图6为本发明实施例中针对累积产水量的预测效果图。
具体实施方式
19.下面结合附图以及具体实施方式对本发明作进一步详细说明:如图1所示,一种融合时空特征的油藏生产指标机器学习预测方法,包括如下步骤:步骤1、建立油藏生产指标预测样本库。本发明提出的油藏生产指标预测方法是基于数据驱动的机器学习方法,需要明确机器学习模型的输入和输出,并建立一个油藏生产指标预测样本库。具体过程为:步骤1.1、对油藏原始数据进行数据清洗。在油藏生产过程中会产生大量的生产数据,但由于存储故障、人为操作失误等难以避免的原因,会造成生产数据的缺失和异常。数据的缺失和异常会破坏单一数据记录的使用价值,因此,对油藏原始数据进行清洗十分必要。数据清洗主要包括缺失数据处理及异常值处理。针对缺失数据,直接利用油藏原始数据中与缺失数据为同类数据的均值替代。针对异常值,首先通过箱型图识别异常值,然后利用油藏原始数据中与异常值为同类数据的均值替代。
20.由于油藏数据一般不符合正态分布,所以本发明使用箱型图法识别异常数据。箱型图法首先需要将数据由小到大排序,然后把数据四等分,划分最小的25%和其余数据的值为下四分位,记作;处于数据中间的值为中位数,记作;划分最大的25%和其余数据的值为上四分位,记作。上四分位和下四分位之差为四分位距,记作。此时,可计算得到箱型图的非异常值上限为,及箱型图的非异常值下限为。而处于上限和下限的值被识别为异常值。
21.步骤1.2、确定待预测的油藏生产指标及生产指标的影响因素。
22.油藏生产指标指通过直接测量或间接计算方式获得的能够体现油藏开发状态及效果的时间序列数据。油藏生产指标既可以特指某口井数据,也可泛指整个区块的数据。本发明意在建模能反映某个区块宏观变化的生产指标预测模型,因此本发明中的生产指标指整个区块的数据。
23.生产指标种类繁多,主要包含累积产油量、累积产水量、月产水量、月产水量等。油
藏指标预测服务于油藏生产优化,而油藏生产优化的目标为实现某一时间段内多产油,少产水。因此,本发明待预测的油藏生产指标为未来某一时间段(如未来5年内)的累积产油量和累积产水量。
24.影响生产指标的因素繁多,可简单划分为静态影响因素和动态影响因素。静态影响因素指随时间不变或无明显变化的量,主要包括油层中深、平均有效厚度、平均空气渗透率、渗透率极差、地层原油粘度等,这些静态影响因素涵盖了空间特征。动态影响因素指随时间有明显变化的量,主要包括可采储量采出程度、总油井口数、总水井口数、年产油量、年产水量等,这些动态影响因素涵盖了时间序列特征。
25.步骤2、筛选得到油藏生产指标主控因素。主控因素为与油藏生产指标相关行较大的影响因素,为避免低相关性因素作为噪声影响最终预测的精度,分别使用灰色关联度和随机森林算法对静态影响因素和动态影响因素中的各个影响因素进行定量分析,确定与预测指标高相关的主控因素。具体过程为:步骤2.1、针对静态影响因素,利用灰色关联度选取影响预测指标的主控因素。将预测指标视为参考序列,可理解为因变量;影响预测指标的因素视为比较序列,可理解为自变量。
26.为防止各个影响因素和预测指标之间量纲的不同影响数据分析结果,采用均值法对影响因素原始数据进行无量纲化处理,具体计算公式如下:
ꢀꢀꢀꢀ
(1);其中,表示影响因素原始数据中第个序列第个元素值,表示无量纲化处理后第个序列第个元素值;表示序列总个数,表示序列中元素的总个数。
27.在进行无量纲化处理后,定义一个标准化矩阵,如下所示:
ꢀꢀꢀꢀ
(2);其中,将矩阵的第0列作为参考序列,将矩阵的第1列到最后一列作为个比较序列。
28.然后每列比较序列分别减去参考序列,得到一个差值矩阵,如下所示:
ꢀꢀꢀꢀ
(3);然后分别计算每个比较序列和参考序列对应元素的关联系数,计算公式如下:
ꢀꢀꢀꢀ
(4);其中,表示对差值矩阵中的每个元素取绝对值,表示对差值矩阵中的每个元素取绝对值后的最小值,表示对差值矩阵中的每个元素取绝对值后的最大值,表示分辨系数,取值范围为[0,1],值越小分辨率越大,多数情景下取0.5;表示无量纲化处理后第0个序列第个元素值,第0个序列为参考序列,因此也可以描述为无量纲化处理后参考序列第个元素值。
[0029]
最后,将某个比较序列中各个元素和参考序列中各个元素的灰色关联系数求取均值,得到该比较序列和参考序列的灰色关联度,公式如下:
ꢀꢀꢀꢀ
(5);其中,灰色关联度的取值范围为[0,1],越接近1,表示该比较序列和参考序列越相关;表示参考序列的第个元素值与第个序列第个元素值的灰色关联系数。
[0030]
通过公式(1)到公式(5),分别计算累积产水量和累积产油量与静态影响因素的灰色关联度,预先设置灰色关联度阈值,将高于灰色关联度阈值的静态影响因素作为主控因素。
[0031]
步骤2.2、由于动态影响因素随时间不断变化,其和未来一段时间内的产油、产水具有时间序列的关联,因此难以通过计算灰色关联度量化相关性。为考虑时间序列关联,针对动态因素,本发明采用随机森林算法筛选主控因素。随机森林算法是一种集成学习算法,通过随机挑选不同特征同时训练多个决策树,而后将训练后的多个决策树结果综合起来作为最终输出。随机森林算法对数据噪声和异常值有很好的容忍度,并且可以克服模型过拟合问题。此外,随机森林算法在拟合过程中可以量化某个输入特征对预测目标的贡献度,可以有效筛选出影响生产指标的主控因素。
[0032]
将预测指标视为随机森林算法的预测目标。将连续年的动态影响因素视为输入特征,用表示动态影响因素的总个数,因此输入特征的总数为个。通过随机森林算法计算出各个特征的贡献度,并整理成为一个贡献度矩阵:
ꢀꢀꢀꢀ
(6);其中,表示第个动态影响因素第年的特征贡献度,,。贡献度矩阵中所有元素的总和为1。
[0033]
而后,将各个动态影响因素所有时间段特征的贡献度求和,得到每个动态影响因素对目标的贡献度,公式如下:
ꢀꢀꢀꢀ
(7);其中,表示第个动态影响因素对目标的贡献度,取值范围为[0,1],值越大表示该因素和预测指标越相关。
[0034]
对每个动态影响因素的贡献度按照由高到低的顺序进行排序,选择前5个动态影响因素作为主控因素。
[0035]
步骤3、构建循环自编码器,提取动态影响因素的时间序列特征。为合理融合时间序列特征和空间特征,本发明引入了循环自编码器对动态影响因素进行时间序列特征提取。具体过程为:循环自编码器是一种基于循环神经网络的自编码器,由编码器和解码器两部分组成。本发明使用门控循环单元构建编码器和解码器,门控循环单元是一种高效的循环神经网络,可以兼顾准确度和计算效率。
[0036]
门控循环单元的基本结构包括重置门、更新门和隐藏层。门控循环单元的方程式如下所示:
ꢀꢀꢀꢀ
(8);其中,表示重置门,用于控制前一时刻的隐藏层在当前候选隐藏层中的占比;表示更新门,用于控制前一时刻的隐藏层在当前隐藏层中的占比;和分别表示和时刻的隐藏层状态,表示时刻的候选隐藏层状态;表示sigmoid激活函数,表示双曲正切激活函数;表示时刻输入的信息;、、分别表示重置门、更新门、候选隐藏层中用于提取中的特征的神经网络的权重;、、分别表示重置门、更新门、候选隐藏层中用于提取中的特征的神经网络的权重;、、分别表示重置门、更新门、候选隐藏层中用于提取中的特征的神经网络的偏置;、、分别表示重置门、更新门、候选隐藏层中用于提取中的特征的神经网络的偏置;表示hadamard
乘积运算。
[0037]
在利用循环自编码器提取时间序列特征过程之前,为消除不同动态影响因素之间的量纲影响,使用最小-最大归一化方法对模型输入进行线性变换,将不同属性的动态影响因素统一到相同范围。最大-最小归一化方法也称为特征缩放或数据标准化,是一种常用的数据预处理方法,用于将数值特征转换为固定范围内的值。
[0038]
最大-最小归一化方法通过对数据进行线性变换,将原始数据映射到指定的范围,通常是[0, 1]之间。其计算公式如下:
ꢀꢀꢀꢀ
(9);其中,表示原始高维时间序列数据,表示归一化后的高维时间序列数据,和分别表示原始高维时间序列数据中的最大值和最小值。
[0039]
图2给出了基于门控循环单元的循环自编码器的基本结构,由编码器和解码器两部分构成。编码器从归一化高维时间序列数据中提取低维特征,表达式如下所示:
ꢀꢀꢀꢀ
(10);其中,表示基于门控循环单元的编码器,表示编码器的参数。
[0040]
解码器则负责将低维特征重构,得到重构的归一化高维时间序列新数据,表达式为:
ꢀꢀꢀꢀ
(11);其中,表示基于门控循环单元的解码器,表示解码器的参数。
[0041]
循环自编码器的训练目标为最小化输入数据和输出数据的差异,本发明使用平均绝对误差损失函数衡量重构差异。本发明使用自适应矩估计算法对循环自编码器的参数和进行训练。自适应矩估计算法是一种优化算法,常被用于训练神经网络和其他机器学习模型。它是一种自适应学习率算法,结合了动量法和自适应学习率方法的优点。自适应矩估计算法基于梯度下降算法实现,其核心思想是根据梯度的一阶矩估计(均值)和二阶矩估计(方差)来调整学习率。自适应矩估计算法在每次迭代中计算梯度的一阶矩估计(即梯度的指数移动平均值)和二阶矩估计(即梯度平方的指数移动平均值),然后使用这些估计值来更新模型参数。
[0042]
本发明中循环自编码器的构建通过深度学习库pytorch实现。
[0043]
步骤4、构建基于极限梯度提升树的油藏生产指标预测模型。将由循环自编码器提取的动态影响因素中涵盖的时间序列特征和静态影响因素拼接融合,得到时空特征,然后将时空特征作为极限梯度提升树的输入,对油藏生产指标进行预测,具体过程为:极限梯度提升树是梯度提升树的改进,是一种十分常用的集成学习模型。极限梯度提升树通过残差学习的方式将多个弱分类器(或称作弱回归器)集成为一个强分类器(或称作强回归器),从而提高模型的预测精度。
[0044]
基于极限梯度提升树的油藏生产指标预测模型可简要概括为下式:
ꢀꢀꢀꢀ
(12);其中,指第个回归树模型,指回归树模型的总数,为第个回归树模型的输入数据,需要注意的是,每个回归树模型只会选择全部特征的一部分作为输入,因此每个回归树模型的输入特征都是不同的,指油藏生产指标预测模型最终的预测值。
[0045]
极限梯度提升树的原理为不断训练新的回归树模型来拟合预测值和真实值的残差,其迭代过程为:
ꢀꢀꢀꢀ
(13);其中,表示前个回归树模型的预测结果;表示前个回归树模型的预测结果;表示第个回归树模型,表示第个回归树模型的输入数据。通过多次迭代,可以不断提高极限梯度提升树的预测精度。
[0046]
针对累积产油量和累积产水量两个生产指标,分别进行静态影响因素特征筛选及动态影响因素特征提取,动态影响因素基于循环自编码器进行特征提取,而后将动态影响因素提取特征和静态影响因素拼接作为基于极限梯度提升树的油藏生产指标预测模型输入,利用该预测模型得到油藏生产指标预测结果,如图3所示。
[0047]
本发明中极限梯度提升树的构建通过python库xgboost实现。
[0048]
步骤5、使用交叉验证技术评估模型对油藏生产指标的预测效果,然后利用验证效果良好的模型进行油藏生产指标预测。具体过程为:为对本发明提出的油藏生产指标预测模型进行综合检验,引入十折交叉验证对模型进行评估。十折交叉验证能够全面的反映出模型的预测性能,常常用来对预测模型进行综合评估。十折交叉验证是指将整个样本数据集平均分为10份,轮流选择1份作为测试集,另外9份作为训练集,进行交叉实验,其流程如图4所示,黑色方块代表测试集,其余白色方块代表训练集。在图4的10次实验中,每次都会得到一个回归评价指标,为回归评价指标序号,。对10次实验得到的回归评价指标求取均值,作为对模型的综合评
价;回归评价指标均值的计算公式为:。此外,在实际实施过程中,为消除单次划分的随机性,一般需要进行多次随机划分数据集进行十折交叉验证,再求多次十折交叉验证评价结果的均值,作为对模型的最终评价结果。
[0049]
本发明选择确定系数作为回归评价指标,计算公式为:
ꢀꢀꢀꢀ
(14);其中,表示第个样本,为测试集样本总数,与分别表示数值模拟器的计算结果和预测模型的预测结果,表示数值模拟器的计算结果的均值。的值越接近1,表示预测精度越高。
[0050]
最终利用验证效果良好的模型进行油藏生产指标预测,预测时输入待预测区块的油藏原始数据,输出未来某一时间段的累积产油量和累积产水量。
[0051]
为了验证本发明方法的可行性,给出如下实施例,采集某油藏真实数据进行验证实验。
[0052]
该油藏在经过多年开发后,曾经历过天然能量开发阶段、初期注水高速开发阶段、注采调整产量递减阶段,目前已进入综合治理控制递减阶段。目前阶段产液含水率较高,亟需优化生产策略提高原油产量,降低产液含水率。目前已收集了进入综合治理控制递减阶段后该油藏54个区块20年的各类数据。
[0053]
基于上述数据采用本发明方法进行油藏生产指标预测的具体步骤为:步骤1、确定待预测的生产指标及生产指标的影响因素,建立油藏生产指标预测样本库。
[0054]
首先对收集到的油藏原始数据进行清洗,主要涉及对缺失值处理及异常值处理。针对缺失数据,直接利用油藏原始数据中与缺失数据为同类数据的均值替代。针对异常值,首先通过箱型图识别异常值,然后利用油藏原始数据中与异常值为同类数据的均值替代。在数据清洗过程中发现有两个区块有大量的数据缺失,因此这里直接删除这两个区块的样本,保留另外52区块连续30年共1560条记录。
[0055]
本发明油藏生产指标预测主要针对油藏各个区块累积产油量和累积产水量。具体来说,通过已知某区块的静态影响因素、连续5年的动态影响因素,预测未来5年的累积产油量和累积产水量。
[0056]
本实施例的静态影响因素主要包括油层中深、平均有效厚度、平均空气渗透率、渗透率极差、地层原油粘度、平均孔隙度、储量丰度以及含油面积。动态影响因素主要包括可采储量采出程度、总油井口数、总水井口数、年产油量、年产水量、年累积注水量、采油速度、综合含水率以及、实施措施总井次。
[0057]
本实施例共有8个静态影响因素,9个动态影响因素,考虑到输入包括连续5年数据,因此总的原始输入特征数为53。按照上述的输入和输出要求,针对累积产油量和累积产水量,分别得到了1040个样本。
[0058]
步骤2、筛选得到油藏生产指标主控因素。
[0059]
针对静态影响因素,采用灰色关联分析进行主控因素选择。由于本实施例共有8个静态因素,因此比较序列的个数为8。此外,由于静态影响因素基本可认为与时间无关,因此针对某个具体的区块只有一套相应的静态影响因素,换句话说,每个比较序列可以认为只有52个元素。为使得参考序列的维度和比较序列一致,分别取各个区块的30年累积年产油量和累积年产水量作为参考序列。各个静态影响因素和预测指标的灰色关联度如下所示:油层中深和累积产油量的灰色关联度为0.19,油层中深和累积产水量的灰色关联度为0.12;平均有效厚度和累积产油量的灰色关联度为0.53,平均有效厚度和累积产水量的灰色关联度为0.46;平均空气渗透率和累积产油量的灰色关联度为0.39,平均空气渗透率和累积产水量的灰色关联度为0.24;渗透率极差和累积产油量的灰色关联度为0.21,渗透率极差和累积产水量的灰色关联度为0.18;地层原油粘度和累积产油量的灰色关联度为0.15,地层原油粘度和累积产水量的灰色关联度为0.08;平均孔隙度和累积产油量的灰色关联度为0.28,平均孔隙度和累积产水量的灰色关联度为0.24;储量丰度和累积产油量的灰色关联度为0.62,储量丰度和累积产水量的灰色关联度为0.43;含油面积和累积产油量的灰色关联度为0.81,含油面积和累积产水量的灰色关联度为0.48。
[0060]
预先设置灰色关联度阈值为0.4,选择灰色关联度大于0.4的静态影响因素作为主控因素,对于累积产油量和累积产水量,主控因素都为平均有效厚度、储量丰度以及含油面积。
[0061]
针对动态影响因素,采用随机森林算法进行主控因素选择。将步骤1整理好的1040个样本中的静态影响因素特征剔除,直接作为随机森林算法的样本对动态影响因素的贡献度进行计算。各个动态影响因素对预测指标的贡献度如下所示:可采储量采出程度的累积产油量贡献度为0.05,累积产水量贡献度为0.03;总油井口数对累积产油量的贡献度为0.17,总油井口数对累积产水量的贡献度为0.12;总水井口数对累积产油量的贡献度为0.08,总水井口数对累积产水量的贡献度为0.16;年产油量对累积产油量的贡献度为0.22,年产油量对累积产水量的贡献度为0.07;年产水量对累积产油量的贡献度为0.13,年产水量对累积产水量的贡献度为0.21;年累积注水量对累积产油量的贡献度为0.11,年累积注水量对累积产水量的贡献度为0.14;采油速度对累积产油量的贡献度为0.03,采油速度对累积产水量的贡献度为
0.04;综合含水率对累积产油量的贡献度为0.06,综合含水率对累积产水量的贡献度为0.15;实施措施总井次对累积产油量的贡献度为0.15,实施措施总井次对累积产水量的贡献度为0.08。
[0062]
对每个动态影响因素的贡献度按照由高到低的顺序进行排序,选择贡献度最高的前5个动态影响因素作为主控因素,对于累积产油量,主控因素为:年产油量、总油井口数、实施措施总井次、年产水量以及年累积注水量;对于累积产水量,主控因素为:年产水量、总水井口数、综合含水率、年累积注水量以及总油井口数。
[0063]
步骤3、构建循环自编码器,提取动态影响因素的时间序列特征。
[0064]
如图2所示建立基于门控循环单元的循环自编码器。在进行完主控因素筛选后,共保留了5个动态影响因素,将5个动态影响因素进行归一化处理,然后输入循环自编码器。本实施例的循环自编码器基于pytorch深度学习框架编写,采用平均绝对误差作为损失函数,采用自适应矩估计算法对模型参数进行优化,学习率设置为0.0001,批量大小设置为64,迭代轮数设置为200轮,隐变量的维度设置为10。通过循环自编码器对动态影响因素的时间序列特征进行提取,将每个样本的动态影响因素压缩为10个输入特征。
[0065]
步骤4、构建基于极限梯度提升树的油藏生产指标预测模型。
[0066]
将由循环自编码器提取的动态影响因素特征和静态影响因素拼接,作为极限梯度提升树的输入。在步骤2中共筛选出了3个静态影响因素,和动态影响因素特征拼接后,得到维度为13的输入特征。分别以累积产油量和累积产水量为目标,建立基于极限梯度提升树的油藏生产指标预测模型。油藏生产指标预测模型共有三种类型参数:通用参数、辅助参数和任务参数。一般来说只需关注和模型性能最相关的辅助参数,在本实施例中:决策树数量设置为500,学习率设置为0.1,单个回归树模型的最大深度设置为7,随机采样比例设置为0.8,随机特征选择比例设置为0.8。
[0067]
步骤5、使用交叉验证技术评估模型对油藏生产指标的预测效果。针对累积产油量和累积产水量分别进行了多次十折交叉验证,最终的平均确定系数分别为0.8315和0.8147。图5和图6分别给出了累积产油量和累积产水量的测试效果。可以看出,本发明提出的预测模型预测结果基本和真实结果一致,可以满足基本的工程需求。
[0068]
针对在基于机器学习的油藏生产指标预测建模中,无法恰当地融合时间序列特征和空间特征这一问题,本发明建立了一个基于循环自编码器和极限梯度提升树的油藏生产指标预测模型。利用这种预测模型,有效地融合了时间序列特征和空间特征,建立了一个高效准确的基于机器学习的油藏生产指标预测模型。
[0069]
当然,上述说明并非是对本发明的限制,本发明也并不仅限于上述举例,本技术领域的技术人员在本发明的实质范围内所做出的变化、改型、添加或替换,也应属于本发明的保护范围。
技术特征:
1.一种融合时空特征的油藏生产指标机器学习预测方法,其特征在于,包括如下步骤:步骤1、确定待预测的生产指标及生产指标的影响因素,建立油藏生产指标预测样本库;步骤2、筛选得到油藏生产指标的主控因素;步骤3、构建循环自编码器,提取动态影响因素的时间序列特征;步骤4、构建基于极限梯度提升树的油藏生产指标预测模型;步骤5、使用交叉验证技术评估模型对油藏生产指标的预测效果,然后利用验证效果良好的模型进行油藏生产指标预测。2.根据权利要求1所述融合时空特征的油藏生产指标机器学习预测方法,其特征在于,所述步骤1的具体过程为:步骤1.1、对油藏原始数据进行数据清洗;数据清洗包括缺失数据处理及异常值处理;针对缺失数据,直接利用油藏原始数据中与缺失数据为同类数据的均值替代;针对异常值,首先通过箱型图识别异常值,然后利用油藏原始数据中与异常值为同类数据的均值替代;箱型图识别的过程为:首先将数据由小到大排序,然后把数据四等分,划分最小的25%和其余数据的值为下四分位,记作;处于数据中间的值为中位数,记作;划分最大的25%和其余数据的值为上四分位,记作;上四分位和下四分位之差为四分位距,记作;此时,计算得到箱型图的非异常值上限为,及箱型图的非异常值下限为;而处于上限和下限的值被识别为异常值;步骤1.2、确定待预测的油藏生产指标及生产指标的影响因素;待预测的油藏生产指标为未来某一时间段的累积产油量和累积产水量;生产指标的影响因素分为静态影响因素和动态影响因素;静态影响因素为随时间不变或无明显变化的量,包括油层中深、平均有效厚度、平均空气渗透率、渗透率极差、地层原油粘度,这些静态影响因素涵盖了空间特征;动态影响因素为随时间有明显变化的量,包括可采储量采出程度、总油井口数、总水井口数、年产油量、年产水量,这些动态影响因素涵盖了时间序列特征。3.根据权利要求2所述融合时空特征的油藏生产指标机器学习预测方法,其特征在于,所述步骤2中,分别使用灰色关联度和随机森林对静态影响因素和动态影响因素中的各个影响因素进行定量分析,确定与预测指标高相关的主控因素;具体过程为:步骤2.1、针对静态影响因素,利用灰色关联度选取影响预测指标的主控因素;将预测指标视为参考序列,影响预测指标的因素视为比较序列;采用均值法对影响因素原始数据进行无量纲化处理,具体计算公式如下:
ꢀꢀꢀꢀ
(1);其中,表示影响因素原始数据中第个序列第个元素值,表示无量纲化处理后第个序列第个元素值;表示序列总个数,表示序列中元素的总个数;在进行无量纲化处理后,定义一个标准化矩阵,如下所示:
ꢀꢀꢀꢀ
(2);其中,将矩阵的第0列作为参考序列,将矩阵的第1列到最后一列作为个比较序列;然后每列比较序列分别减去参考序列,得到一个差值矩阵,如下所示:(3);然后分别计算每个比较序列和参考序列对应元素的关联系数,计算公式如下:
ꢀꢀꢀꢀ
(4);其中,表示对差值矩阵中的每个元素取绝对值,表示对差值矩阵中的每个元素取绝对值后的最小值,表示对差值矩阵中的每个元素取绝对值后的最大值,表示分辨系数;表示无量纲化处理后第0个序列第个元素值,第0个序列为参考序列;最后,将某个比较序列中各个元素和参考序列中各个元素的灰色关联系数求取均值,得到该比较序列和参考序列的灰色关联度,公式如下:
ꢀꢀꢀꢀ
(5);其中,表示参考序列的第个元素值与第个序列第个元素值的灰色关联系数;通过公式(1)到公式(5),分别计算累积产水量和累积产油量与静态影响因素的灰色关联度,预先设置灰色关联度阈值,将高于灰色关联度阈值的静态影响因素作为主控因素;步骤2.2、针对动态因素,采用随机森林算法筛选主控因素;将预测指标视为随机森林算法的预测目标;将连续年的动态影响因素视为输入特征,用表示动态影响因素的总个数,因此输入特征的总数为个;通过随机森林算法计算出各个特征的贡献度,并整理成为一个贡献度矩阵:
ꢀꢀꢀꢀ
(6);其中,表示第个动态影响因素第年的特征贡献度,,;贡献度矩阵中所有元素的总和为1;而后,将各个动态影响因素所有时间段特征的贡献度求和,得到每个动态影响因素对目标的贡献度,公式如下:
ꢀꢀꢀꢀ
(7);其中,表示第个动态影响因素对目标的贡献度;对每个动态影响因素的贡献度按照由高到低的顺序进行排序,选择前5个动态影响因素作为主控因素。4.根据权利要求1所述融合时空特征的油藏生产指标机器学习预测方法,其特征在于,所述步骤3中,循环自编码器由编码器和解码器两部分组成,使用门控循环单元构建编码器和解码器;门控循环单元的基本结构包括重置门、更新门和隐藏层,门控循环单元的方程式如下所示:
ꢀꢀꢀꢀ
(8);其中,表示重置门,用于控制前一时刻的隐藏层在当前候选隐藏层中的占比;表示更新门,用于控制前一时刻的隐藏层在当前隐藏层中的占比;和分别表示和时刻的隐藏层状态,表示时刻的候选隐藏层状态;表示sigmoid激活函数,表示双曲正切激活函数;表示时刻输入的信息;、、分别表示重置门、更新门、候选隐藏层中用于提取中的特征的神经网络的权重;、、分别表示重置门、更新门、候选隐藏层中用于提取中的特征的神经网络的权重;、、分别表示重置门、更新门、候选隐藏层中用于提取中的特征的神经网络的偏置;、、分别表示重置门、更新门、候选隐藏层中用于提取中的特征的神经网络的偏置;表示hadamard乘积运算;在利用循环自编码器提取时间序列特征之前,使用最小-最大归一化方法对模型输入
数据进行线性变换,将不同属性的动态影响因素统一到相同范围,从而消除不同动态影响因素之间的量纲影响;最大-最小归一化方法的计算公式如下:
ꢀꢀꢀꢀ
(9);其中,表示原始高维时间序列数据,表示归一化高维时间序列数据,和分别表示原始高维时间序列数据中的最大值和最小值;编码器从归一化高维时间序列数据中提取低维特征,表达式如下所示:
ꢀꢀꢀꢀ
(10);其中,表示基于门控循环单元的编码器,表示编码器的参数;解码器将低维特征重构,得到重构的归一化高维时间序列新数据,表达式为:
ꢀꢀꢀꢀ
(11);其中,表示基于门控循环单元的解码器,表示解码器的参数;循环自编码器的训练目标为最小化输入数据和输出数据的差异,使用平均绝对误差损失函数衡量重构差异,并使用自适应矩估计算法对循环自编码器的参数和进行训练。5.根据权利要求1所述融合时空特征的油藏生产指标机器学习预测方法,其特征在于,所述步骤4中,将由循环自编码器提取的动态影响因素中涵盖的时间序列特征与静态影响因素中的空间特征进行融合,得到时空特征,然后将时空特征作为极限梯度提升树的输入,对油藏生产指标进行预测,具体过程为:基于极限梯度提升树的油藏生产指标预测模型定义为下式:
ꢀꢀꢀꢀ
(12);其中,指第个回归树模型,指回归树模型的总数,为第个回归树模型的输入数据,每个回归树模型只选择全部特征的一部分作为输入,因此每个回归树模型的输入特征都是不同的,指油藏生产指标预测模型最终的预测值;极限梯度提升树的原理为不断训练新的回归树模型来拟合预测值和真实值的残差,其迭代过程为:
ꢀꢀꢀꢀ
(13);其中,表示前个回归树模型的预测结果;表示前个回归树模型的预测结果;表示第个回归树模型,表示第个回归树模型的输入数据;针对累积产油量和累积产水量两个生产指标,分别进行特征筛选及动态影响因素特征提取,而后将提取特征和静态影响因素融合后得到时空特征作为基于极限梯度提升树的油藏生产指标预测模型输入,利用该预测模型得到油藏生产指标预测结果。6.根据权利要求1所述融合时空特征的油藏生产指标机器学习预测方法,其特征在于,所述步骤5的具体过程为:引入十折交叉验证对模型进行评估;十折交叉验证是指将整个样本数据集平均分为10份,轮流选择1份作为测试集,另外9份作为训练集,进行交叉实验;每次实验都会得到一个回归评价指标,为回归评价指标序号,;对10次实验得到的回归评价指标求取均值,作为对模型的综合评价;回归评价指标均值的计算公式为:;进行多次随机划分数据集进行十折交叉验证,再求多次十折交叉验证评价结果的均值,作为对模型的最终评价结果;选择确定系数作为回归评价指标,计算公式为:
ꢀꢀꢀꢀ
(14);其中,表示第个样本,为测试集样本总数,与分别表示数值模拟器的计算结果和预测模型的预测结果,表示数值模拟器的计算结果的均值;最终利用验证效果良好的模型进行油藏生产指标预测,预测时输入待预测区块的油藏原始数据,输出未来某一时间段的累积产油量和累积产水量。
技术总结
本发明公开了一种融合时空特征的油藏生产指标机器学习预测方法,属于油藏开发技术领域,包括如下步骤:确定待预测的生产指标及生产指标的影响因素,建立油藏生产指标预测样本库;筛选得到油藏生产指标的主控因素;构建循环自编码器,提取动态影响因素的时间序列特征;构建基于极限梯度提升树的油藏生产指标预测模型;使用交叉验证技术评估模型对油藏生产指标的预测效果,然后利用验证效果良好的模型进行油藏生产指标预测。本发明通过引入循环自编码器将动态影响因素中的时间序列特征和静态影响因素中的空间特征进行融合,再通过极限梯度提升树高效建立机器学习模型,从而实现快速、准确的油藏生产指标预测。准确的油藏生产指标预测。准确的油藏生产指标预测。
技术研发人员:张凯 付文豪 留云龙 李金轩 刘兴宇 张铭扬 张黎明 刘丕养 严侠 张华清 张文娟 杨永飞 孙海 姚军
受保护的技术使用者:中国石油大学(华东)
技术研发日:2023.07.06
技术公布日:2023/8/5
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
