基于LSTM神经网络的短期电量预测

2021-12-06 12:07张永建周晟沈澄泓周长星
电力大数据 2021年8期
关键词:汇总用电量电量

张永建,周晟,沈澄泓,周长星

(1.国网浙江省绍兴供电公司, 浙江 绍兴312099;2.浙江泛海智行电力科技有限公司,浙江 杭州 310052)

作为外向型城市的绍兴,由于近年来受宏观经济形势复杂多变,产业结构调整,中美经贸摩擦升级的影响,经济增速放缓,全市工业出口增速呈现一定回落的趋势。去年一月开始的全世界新冠肺炎疫情又使绍兴的工业生产和外贸出口出现更明显的下滑,2020全年的经济增长大幅度放缓。疫情形势和经济环境的不确定性增加了售电量预测的难度。

供电公司的财务部门在每个月的某个时间点需要对未来30天或31天的全行业售电量做出预测,乘以电价得出售电量收入后,为制定“现金流预算计划”提供参考。绍兴作为新二线城市共有高压用户几万个,其用电量占全行业用电量的80%以上。因此对高压用户的用电量进行准确预测,就可以把握全行业的用电量乃至售电量。

(1)

用上述公式先预测出某月的用电量,便可推算出这个月的售电量。此外供电公司通过预测区域内所有外贸企业未来一个月的用电量来判断外贸企业乃至整个地区经济的景气程度。未来一个月电量的预测值是通过预测未来一个月内每天的电量然后累加得到的。

对电量预测的研究由来已久,例如文献[1]用GRU结合STL分解的方法预测短期电量,获得一定的精度,文献[2]用基于集合经验模式分解的ARIMA模型来预测月电量,效果尚满意,但是用上述方法做出的预测均未达到供电公司业务需求的预测误差在2%左右以下的要求,应用起来缺乏实际意义。本文重点研究了用LSTM长短记忆神经网络来预测短期电量,主要是对数据做了平滑和预处理、对模型进行了细致调参并对春节期间的预测做了特殊处理。 把LSTM模型的预测结果和ARIMA模型以及Facebook的开源模型Prophet的预测结果进行比较,验算结果表明,只有LSTM模型的预测准确度达到了供电公司制定的标准。

1 数据获取和预处理

随着电力行业SG-ERP的建设,电力行业的业务数据增长速度在不断提升,各种数据已积累多年。从浙电云平台中抽取绍兴2016年至2019年年底的高压用户日用电量数据,以及2018年至2020年的全市外贸企业日用电数据,应用算法对多个月的用电量做整月的预测,然后与已知的数据进行对比,判断预测的准确性。预测时,把整个绍兴地区分成若干个区域,然后对各个区域的电量分别做预测,最后汇总成整个绍兴地区的总用电量。在计算误差时,计算汇总而成的整个绍兴地区的预测总电量的误差。通常误差是指30天的预测电量之和减去这30天实际电量之和,然后除以后者。

在对日电量构成的时间序列进行预测之前,首先要对数据进行平滑处理。平滑处理的目的是把一些极大或极小或异常的日电量值替换成合理的电量值。异常值定义为小于α(0<α<1)倍的日均电量或大于β(β>1)倍的日均电量的电量值,由于日电量可以认为以7天为周期,异常的电量值可以用7天或14天前后的电量来替代。平滑处理的逻辑图如图1所示。

图1 数据平滑逻辑图Fig.1 Data smoothing logic diagram

在实际应用中,α和β的取值是需要调参的,调参的目标是各区域的平均预测误差最低。测试结果表明,序列经过平滑后预测的精度要明显提高。经过调参,α最终取0.65,β取1.3。

2 算法模型

本文用三种时间序列预测模型LSTM长短期记忆神经网络、ARIMA模型、Facebook的先知模型(Prophet)来对多个月份的绍兴地区高压用户用电量和外贸企业用电量进行预测并比较结果。

2.1 LSTM神经网络

RNN循环神经网络能对时间序列进行预测,它本质上相当于在全连接神经网络上加入了反馈机制,能对之前的信号进行处理,记住处理之后的状态,称之为记忆。RNN循环神经网络的结构示意图如图2所示。

图2 RNN结构示意图Fig.2 RNN structure diagram

LSTM长短期记忆神经网络是在RNN循环神经网络上改进而来的,于1997年提出[3-10]。LSTM神经网络是由多个循环单元相互递归连接而成的,结构示意图如3所示。

图3 LSTM结构示意图Fig.3 LSTM structure diagram

LSTM长短期记忆神经网络的循环单元内部包括三个门结构,分别为遗忘门、输入门和输出门。遗忘门的作用是选择出前一记忆状态应当保留的部分,通常由tanh函数实现;输入门可以决定用哪些信息来更新长期记忆状态,该阀门筛选出有用信息喂入网络,它通常由Sigmoid函数实现;最后一个是输出阀门,它置于网络的输出之后,可以自动提取输出信息中的重要部分,它也由Sigmoid函数实现。

长短期记忆神经网络的发明者在他们的论文中已经通过实验验证了LSTM相对于RNN的优越性,主要体现在以下两点:1.LSTM引进的三种门控结构,可以学习到长期记忆信息,解决长时依赖问题;2.LSTM中的激活函数是sigmoid函数与tanh函数相结合,在反向传播求导时使得梯度几乎保持为常量,避免了梯度消失或爆炸,大大加快模型收敛速度[11-15]。

本研究使用Python3.7和Keras来实现LSTM神经网络,并在全行业高压用户的数据集上做了大量实验对LSTM模型的参数进行调整。需要调节的主要参数有预测时间窗口,即序列长度、隐含层神经元数和上文提到的数据平滑的参数α和β等。

表1 LSTM模型参数调整Tab.1 LSTM model parameter adjustment

调参的结果是,预测时间窗口设为60天,即用60天的日电量历史数据来预测未来一天的电量, 第一隐含层和第二隐含层的神经元数分别为10和20,此外每次训练50期(epoch),样本的批量大小为128,随机舍弃50%的神经元,损失函数为均方误差,优化器为rmsprop。由于初始权重的不同,LSTM神经网络在同一个训练集上每次训练的模型会有所不同,所以把样本按97%和3%分为训练集和测试集,在训练集上训练10个模型,选择在测试集上效果最好的那个用于预测。

本次研究也尝试了在最初的LSTM长短期记忆神经网络模型中加入新的变量如最高温度、最低温度、节假日标签等,虽然LSTM模型的框架允许加入新的变量或序列[16-18],但实验结果表明,加入变量后并不能提高LSTM模型的预测精度,所以最后只在模型中保留电量这一个序列用于预测。

2.2 ARIMA模型

ARIMA模型,差分整合移动平均自回归模型,又称整合移动平均自回归模型,是时间序列预测分析的经典方法之一。ARIMA(q,d,q)中,AR是自回归,p为自回归项数,MA为移动平均,q为移动平均项数,d为使之成为平稳序列所做的差分次数(阶数)。

(2)

式中,▽d=(1-B)d;φ(B)=1-φ1B-……-φpBp,为平稳可逆ARMA(p,q)模型的自回归系数多项式;φ(B)=1-θ1B-……-θqBq,为平稳可逆ARMA(p,q)模型的移动平均系数多项式。

用Python3.7和statsmodels来实现ARIMA整合移动平均自回归模型算法,用单位根检验来判断序列是否平稳,对不稳定的序列进行差分处理。此外设p和q的最大值为5,采用自动搜索使BIC最小的方法来寻找最优模型用于预测[19-23]。

2.3 先知模型(Prophet)

Prophet是Facebook开源的时序框架,Facebook表示,Prophet相比现有预测工具更加人性化,它使用起来非常方便,提供可手动调整的完全自动化的预测,且预测效果好[24]。

对于一个给定的时间序列y(t),Prophet把它分为3个部分,趋势成分g(t)、季节性成分s(t)、节假日成分h(t)和不确定成分∈t。即:

y(t)=g(t)+s(t)+h(t)+∈t

(3)

事实上,它是Generalized Additive Model(GAM)模型的特例,但Prophet只用到了时间作为拟合的参数。Prophet模型比ARIMA等模型更灵活、拟合快、不必考虑缺失值的填充问题。用Python3.7和fbprophet软件包可以较容易地实现先知模型,而且用先知模型来预测速度很快。

2.4 节日期间的电量预测

节日主要是指具有较长连续假期的春节和国庆节等。每年国庆节的阳历日期都相同,而每年春节的阳历日期都不同因此预测变得更加复杂。

2.4.1 春节期间的电量预测

由于春节的特殊性,春节对附近月份电量的影响每年都是不相同的,普通的时间序列算法都不能准确地预测春节期间的电量[25-26],因此本文采用分段预测的方法。下图4绘制了以2017、2018和2019的农历正月初一(春节)为基准点,绍兴上虞区春节前16天至春节后28天的用电量。可以清楚地看到,以农历为基准的春节期间用电量曲线基本吻合。2019年春节期间前后共45(16+28+1)天的日用电量可以用前两年对应农历日期的平均日电量乘以一个成长因子得出,这个成长因子可以是不同年份间的春节前17天至47天的电量之比。45天之外的日用电量仍然用算法如LSTM等来预测。这45天会影响春节附近2-3月的电量预测,所以必须做好春节附近各时间段预测的衔接。这样的预测方法大大提高了春节期间电量预测的精度。

图4 上虞区春节期间电量Fig.4 Electricity consumption during Spring Festival in Shangyu County

2.4.2 国庆期间的电量预测

国庆和春节的不同之处在于每年国庆大约7天假期的阳历都是相同的。一般用时间序列算法来预测国庆期间的电量通常会预测得过高,所以国庆假期的电量可以用和预测春节电量相似的方法来估计。例如,2019年国庆期间的日电量可以用前两年国庆期间对应日期的平均电量乘以一个成长因子得到。

3 算例

3.1 绍兴高压用户月度电量预测

对绍兴地区高压用户在2019/1-2019/12时段内共12个整月的1号至月末30号或31号的电量进行预测。预测时同时应用LSTM、ARIMA和Prophet三个模型,每次都对8个区域的月度电量分别做预测,适用模型前都对数据做同样的平滑,最后比较3个模型的预测效果。

平均绝对误差是8个区域预测误差的绝对值的均值,区域电量汇总误差是汇总8个区域的电量真实值和预测值后计算得到的误差。由于正负相抵,区域电量汇总误差一般要小于平均绝对误差。比较上述3种算法主要看的是表中所示的平均误差和汇总后平均误差,前者是12个平均绝对误差的均值,后者是区域电量汇总误差的绝对平均值,它们实际反映了模型达到的精度。从表2-4可以看到,整合移动平均自回归模型ARIMA的两个误差指标最差,LSTM模型和Prophet模型相比,Prophet模型的平均误差(3.1%)要小于LSTM(3.5%),但是LSTM的汇总后平均误差只有2.2%,要明显小于Prophet的2.6%。 汇总后平均误差更能代表整个绍兴地区月度总电量的预测误差,因此更为重要,而且2.2%的误差和供电公司财务部门所要求的月度预测误差在2%左右以内是基本相符的。另外值得注意的是2019春节期间(2019/2/1-2019/2/28)的区域电量汇总误差仅为-0.6%,这是十分令人满意的结果。

表2 LSTM模型预测误差(高压用户电量)Tab.2 Prediction error of LSTM model (high voltage customer electricity consumption)

表3 ARIMA模型预测误差(高压用户电量)Tab.3 Prediction error of ARIMA model (high voltage customer electricity consumption)

表4 Prophet模型预测误差(高压用户电量)Tab.4 Prediction error of Prophet model (high voltage customer electricity consumption)

在月度用电量准确预测的前提下,月度售电量也能够较为准确地预测[27-30],从而帮助财务部门制定出准确的“现金流预算计划”。

3.2 绍兴外贸企业月度电量预测

为了进一步验证各个模型的预测效果,采用和前文基本相同的方法对2019年6月至2020年5月时段内的12个整月的电量进行30天预测,预测区间为每月21号开始的30天,结果表明除了由于疫情原因导致的2020年1月春节期间的预测偏差较大外,LSTM模型对其余11个月的预测结果都比较准确。2020年的春节由于受到疫情的影响,春节(1/25)后的电量没有像往常一样在一个月内缓慢恢复正常,整个2月份因为基本没有复工用电量很低,所以2020/1/21-2020/2/19期间的预测电量不准确。

表5-7中去除了2020/1/21-2020/2/19的预测误差统计信息。从数据可以看出,LSTM模型的平均误差和汇总后平均误差最低。同时可见,使用在全行业高压用户数据集上实验得到的LSTM模型参数,在外贸用户的数据集上也获得了良好的预测效果。值得注意的是,表4中的LSTM模型的汇总后平均误差和表1中的高压用户预测的误差恰好一样为2.2%,这基本达到了供电公司期望的精度要求。

表5 LSTM模型预测误差(外贸企业用户电量)Tab.5 Prediction error of LSTM model (foreign trade enterprise electricity consumption)

表6 ARIMA模型预测误差(外贸企业用户电量)Tab.6 Prediction error of ARIMA model (foreign trade enterprise electricity consumption)

表7 Prophet模型预测误差(外贸企业用户电量)Tab.7 Prediction error of Prophet model (foreign trade enterprise electricity consumption)

4 结语

本文详细记述了用长短期记忆神经网络LSTM、整合移动平均自回归模型ARIMA、先知模型Prophet三种时间序列算法对绍兴高压用户和外贸用户的日电量进行一个月的短期预测,结果表明在对原始数据进行平滑、对春节期间的预测做特殊处理后,经过调参的LSTM模型虽然速度较慢,但预测精度在两个数据集上都是最高,达到了供电公司对电量预测精度的一般要求,而整合移动平均自回归模型ARIMA和先知模型Prophet模型的预测效果较差且不稳定。因此建议在电力系统中推广和应用本文提出的改制的LSTM预测方法。

猜你喜欢
汇总用电量电量
01 国家能源局:3月份全社会用电量同比增长3.5%
储存聊天记录用掉两个半三峡水电站电量
常用缩略语汇总
物联网智能燃气表电量自补给装置
源流2020年目录汇总
系统抽样的非常规题汇总
2013—2017年市人大常委会执法检查项目汇总
节假日来电量预测及来电量波动应对策略