当前位置:首页 期刊杂志

基于长短时记忆神经网络模型的油井产量预测方法

时间:2024-07-28

卢 川,宋来明,董银涛,陈冠中,段 锐

(中海油研究总院有限责任公司,北京 100028)

油井产量预测贯穿油田开发生产全过程。目前有四类常用的油井产量预测方法,不同方法各有特色和局限性。数理统计分析方法[1-4],主要依据历史产量变化进行回归预测,操作简单且输入参数少(产量、时间),但预测结果受选取数据量的影响较强,多解性强。理论公式法[5-7],如Arps 产量递减模型,基于大量统计得到,简单易用但应用范围有限。数值模拟方法[8-10],需要建立地质模型和油藏数值模型,资料需求及工作量大、耗时长。基于数据挖掘的机器学习算法[11-14],如BP 神经网络模型和长短时记忆神经网络模型,通过深挖影响因素与产量间的非线性关系,建立多参数控制下的产量预测模型,更易于描述产量的复杂变化,但网络模型参数往往需试算得到,影响应用效率。

长短时记忆神经网络是一种具有长时间记忆能力的时间递归深度学习算法[15,16]。油井产量是一系列受时间序列影响的变化数据。本文以油井产量为目标函数,综合考虑影响产量的动静态参数,建立基于长短时记忆神经网络的产量预测模型。通过敏感性分析,确定模型误差与网络模型参数之间的相关关系,为网络模型参数选取提供依据,快速指导该方法在油井产量预测中的应用,提升预测效率。

1 长短时记忆神经网络模型建立

长短时记忆神经网络模型由输入层、隐藏层和输出层组成。通过在隐藏层增加一个可保存长期状态的单元状态,进而更有效地处理长时间序列问题[17]。该网络模型利用三个“门”,即遗忘门、输入门、输出门,分别控制前续信息、即时输入信息和向后传递信息的程度。其中,遗忘门决定上一时刻的单元状态有多少保留到当前时刻单元状态;输入门决定当前时刻网络的输入有多少保留到当前单元状态;输出门决定当前单元状态有多少作为输出值输出。三个“门”的数学表达如式(1)~(3)所示:

式中:xt-t 时刻的输入值;ft、it、ot-t 时刻的遗忘门、输入门、输出门;Wf、Wi、Wo-遗忘门、输入门、输出门权重矩阵;bf、bi、bo-遗忘门、输入门、输出门偏置项;ht-1-t-1 时刻的输出值;σ-激活函数。

式中:ct、ct-1-t、t-1 时刻的单元状态-t 时刻的输入单元状态;Wc-单元的权重矩阵。t 时刻的单元状态由t-1 时刻的单元状态及t 时刻的输入单元状态共同决定。

在考虑前续信息和即时输入信息对单元状态的更新后,由式(4)和式(5),确定t 时刻的输出结果:

式(1)~式(6)构成长短时记忆神经网络计算模型。利用前向和反向算法对输入数据与目标值之间的相关关系进行学习和训练,得到满足精度要求的计算模型。

2 模型参数

2.1 油藏输入参数

在产量预测模型中,根据产量影响因素及矿场获取数据的难易程度,考虑部分地质和生产参数作为油井产量预测的输入参数。选取静态参数包括储层厚度、渗透率和原油黏度。这三个参数是决定油井初期产能的关键参数。选取动态参数包括油压、流压、含水率、气油比、日产液量。这五个参数可从地层能量、操作调整、生产限制等方面衡量对产油量的影响水平。

2.2 模型输入参数

对于长短时记忆神经网络模型,遗忘门、输入门、输出门和记忆单元的初始权重以及偏置项均由计算机随机设定。隐藏层节点数、反向传递算法中的学习率、训练步数等超参数需要在模型学习过程之前进行预置,通过试算等方式对超参数进行优选,以提高模型的学习性能和效果。

2.3 模型评价指标

在模型应用过程中,将输入的动静态参数样本分为两个集合,即训练集合和预测集合。通过训练集合训练长短时记忆神经网络模型,计算训练误差,如式(7);再利用预测集对训练后的模型进行预测,计算预测误差,如式(8)。通过改变模型网络计算参数,以由训练误差和预测误差综合得到的误差为评判标准,如式(9),最终确定模型的可靠性。

式中:n、m-训练集、预测集的样本个数;i,j-训练集、预测集中的第i、j 个样本;error训练、error预测、error综合、error目标-计算模型得到的训练集误差、预测集误差、综合误差和目标误差。

3 应用实例

3.1 样本选取及处理

目标油田JX5 位于渤海辽东湾海域,采用定向井边外注水、水平井分层开发方式。2011 年投入生产,共有生产井20 口,注水井3 口。考虑产量波动影响因素,以20 口油井月度平均日产油为目标函数,有效厚度、渗透率和原油黏度作为静态输入参数;油压、井底流压、含水率、气油比、产液量作为动态输入参数,建立产量预测模型。在实施过程中,将油井生产历史月度数据按照80%、20%分配比例,划分为训练集和预测集。预测集的数据样本用来预测通过训练集学习后的产量模型的预测精度。

由于各输入参数量纲不同,为进一步适应神经网络模型的应用,按式(10)对参数进行标准化处理:

式中:X-选取的某生产井的某个动静态参数。

3.2 模型预测效果

利用长短时记忆神经网络模型对JX5 油田20 口生产井日产油进行训练和预测。以JX5-02 井为例,最优模型参数下计算值与实际值对比(见图1)。由图1可以看出,在训练集和预测集,模型计算值与实际值均呈现较高的吻合度。训练集平均误差为1.73%,预测集平均误差为4.37%,综合误差3.05%。统计20 口生产井平均综合误差为4.78%,能够满足矿场对产量预测精度要求。

图1 JX5-02 井日产油模型计算值与真实值对比

3.3 模型参数敏感性分析

长短时记忆神经网络模型参数对训练结果将产生较大影响。针对隐藏层节点数、学习率和训练步数三个关键参数进行敏感性分析。

3.3.1 隐藏层节点数 隐藏层节点数可表征神经网络模型的学习能力。节点数少,模型学习能力差;节点数多,易出现过拟合现象。针对20 口生产井,设定模型隐藏层节点数分别为5、10、20、30、40、50,对综合误差进行计算统计。从图2 中可以看出,不同隐藏层节点数条件下,产量预测模型平均综合误差为4.19%~5.70%,预测精度均较高,但综合误差波动范围随隐藏层节点数增多而变大,模型预测稳定性逐渐变差。考虑平均综合误差绝对值和误差波动范围,推荐隐藏层节点数为20。

图2 隐藏层节点数与综合误差关系图

3.3.2 学习率 学习率用来衡量损失函数的变化速度。学习率过大,易错过全局最优点;学习率过小,损失函数变化速度慢,增大了网络模型收敛复杂程度,易得到局部最优点。设定模型学习率分别为0.1、0.05、0.01、0.001、0.000 1。从图3 中可以看出,平均综合误差随学习率增加逐渐减小;学习率大于0.01 后,误差减小幅度降低。学习率为0.1,模型预测效果较好。

图3 学习率与综合误差关系图

3.3.3 训练步数 训练步数表征模型迭代次数。训练步数过少,模型学习不充分;训练步数过多,运算时间延长。设定模型训练步数分别为2 000、3 000、5 000、7 000、10 000、15 000。从图4 中可以看出,平均综合误差均随训练步数增大而减小。训练步数超过10 000 步后,平均综合误差降低幅度趋缓。考虑综合误差和运算时间,推荐训练步数为10 000。

图4 训练步数与综合误差关系图

4 结论

(1)综合考虑有效厚度等三个静态影响因素和油压等五个动态影响因素,建立了基于长短时记忆神经网络算法的产量预测模型,实现对多口生产井产油量的训练、学习和预测。

(2)利用该产量预测模型对目标油田20 口生产井产油量进行预测,平均综合误差为4.78%,预测精度能够满足矿场对产量的预测要求。

(3)通过敏感性分析,得到目标油田推荐隐藏层节点数、学习率和训练步数分别为20、0.1、10 000;后续可根据不同生产井实际情况,进一步建立不同日产油波动条件下模型参数筛选方法,进一步快速指导该方法在矿场应用。

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!