基于完整自适应噪声集成经验模态分解的LSTM-Attention网络短期电力负荷预测方法
2022-02-18刘文杰刘禾王英男杨国田李新利
刘文杰,刘禾,王英男,杨国田,李新利
(华北电力大学控制与计算机工程学院,北京市 102206)
0 引 言
电力负荷预测在智能电网的控制、电力安全、市场运行和合理调度计划的制定方面发挥着重要作用,不仅能帮助电力系统安全可靠地运行,还能减少资源浪费,提高经济效益,是电力部门制定生产发展计划的主要理论依据之一[1]。随着国家“碳达峰”“碳中和”目标的提出和绿色低碳环保发展经济体系的逐步建立,可再生能源和分布式能源比例不断调高,用户含源负荷随机性和不确定性增强,对电力负荷预测带来了新的挑战。
在以往的研究中,国内外学者开发了许多方法来提高短期预测的准确性,这些方法主要分为基于统计方法和基于人工智能方法。统计方法基于数学模型,包括多元线性回归分析[2]、随机时间序列[3]、自回归积分移动平均模型[4]等,通常针对线性关系模型,而预测负荷随机性较强,非线性特征明显,因此在非线性预测方面拟合能力不强,表现不佳。基于人工智能的短期电力负荷预测方法如支持向量机(support vector machines, SVM)[5]、人工神经网络模型[6]、专家系统模型[7]、贝叶斯神经网络[8]、BP(back propagation)神经网络[9]等具有良好非线性函数拟合能力的浅层机器学习算法,预测精度较传统方法有所改进,但由于负荷数据的复杂性和时序性,高精度的短期预测仍然是一个挑战。近年来,深度学习的高速发展使其在负荷预测领域广泛应用。深度置信网络[10]、深度神经网络[11]、卷积神经网络[12-13]应用到短期负荷预测问题中,负荷预测精度上虽有所提升,但忽略了负荷数据的时序特性。循环神经网络(recurrent neural network,RNN)引入循环结构提取时序特性对时间序列数据进行拟合[14],但处理时间序列时易发生梯度消失问题。长短期记忆网络(long short-term memory,LSTM)通过加入内存单元来解决这个问题,能更完整地学习历史序列数据中长短期规律信息,在基于过去负荷数据的长时间水平预测中表现较好[15]。此外,文献[16]通过在网络结构中加入注意力机制为隐藏层单元赋予不同的权重,使模型更易学习序列中长距离相互依赖的关系,提高模型的准确率。
针对负荷序列的非平稳性、复杂性,机器学习算法调参困难和数据需求量大的问题,数据分解与机器学习相结合的方法被应用在负荷预测中[17]。经验模态分解(empirical mode decomposition, EMD)[18]是基于信号序列局部特征进行的自适应信号分解,得到一系列的振荡函数,较小波分解等无需任何先验条件[19]。但经验模态分解的模态混叠和边界效应[18]问题往往影响到分解效果和预测精度,集成经验模态分解(ensemble empirical mode decomposition,EEMD)在传统EMD基础上,通过添加高斯白噪声的方法降低了模态混叠现象的产生[20],但添加的噪声在有限次平均中不会完全消除,导致重建误差,降低计算效率。完整自适应噪声集成经验模态分解(complete ensemble empirical mode decomposition with adaptive noise,CEEMDAN)[21]添加有限次自适应白噪声,进一步消除了模态混叠和重建误差,但负荷预测中经验模态分解边界效应问题的处理仍需研究。
鉴于数据分解与神经网络结合模型的优越性,本文提出一种CEEMDAN和基于注意力机制的LSTM(LSTM based on attention mechanism, LSTM-Attention)短期电力负荷预测模型。首先,将预测与镜像延拓处理后的历史负荷时间序列添加到CEEMDAN中分解得到模态分量和残差余量;接着,将分解得到的各分量分别作为引入注意力机制的LSTM神经网络的输入序列进行预测,通过注意力层对LSTM神经网络隐藏层单元分配不同概率权重,突出关键序列;最后,对近几年真实负荷数据进行预测验证,结果表明本文所提预测模型在短期负荷预测中具有比其他预测网络更高的预测精度和较好的预测性能。
1 CEEMDAN方法
1.1 CEEMDAN
CEEMDAN是一种自适应分析非线性和非平稳信号的自适应时频处理方法,基于信号数据本身的局部特性,在时域中提供关于信号动态的信息,自适应地分解得到从高频到低频包含不同时间特征尺度的本征模态(intrinsic mode function,IMF)分量和残差余量,分解后的IMF分量序列具有较强的规律性,便于模型学习提高预测精度[21]。通过在每次处理过程中添加有限次符合标准正态分布的自适应高斯白噪声,使得重构信号接近原始信号。因此,CEEMDAN既可以克服EMD所存在的模态混叠现象,同时可以通过少量实验重构信号序列,消除EEMD分解的不完整性以及运算量大与计算时间长的问题,并且由于其对数据驱动机制的依赖,不需要像基于小波和傅立叶变换分解等传统方法那样需要已知先验基础。CEEMDAN算法的具体分解过程如下:
步骤1:构造待分解序列Xi(t)。
Xi(t)=X(t)+δωi(t),i=1,…,L
(1)
式中:X(t)表示原始时间序列;Xi(t)表示第i个处理产生的数据;i为测试次数;δ为高斯白噪声加权系数;ωi(t)为在第i次处理期间添加的符合标准正态分布的高斯白噪声。
(2)
(3)
r1(t)=X(t)-αIMF1(t)
(4)
式中:αIMF1(t)表示通过CEEMDAN分解获得的第一模态分量;r1(t)表示第一次分解后的剩余信号。
步骤3:对信号r1(t)+δ1M1[ωi(t)]进行i次分解,计算第2个模态分量αIMF2(t)。在将特定噪声添加到第k个裕量信号之后,继续进行经验模态分解。
(5)
(6)
rk(t)=rk-1(t)-αIMFk(t)
(7)
式中:αIMFk(t)代表通过CEEMDAN分解获得的第k个IMF分量;Mk[ωi(t)]代表序列EMD分解后的第k个IMF成分;δk代表由CEEMDAN加到第k个剩余信号上的噪声的加权系数;rk(t)代表第k个剩余信号。
步骤4:上述过程被执行多次,直到裕量rk(t)达到分解的最大数量,满足经验模态分解停止条件——第n次分解的残差信号是单调信号,即极值点的数量不超过1,则迭代停止,分解X(t)得到k个模态分量αIMFk(t)和一个残差余量R(t)。
(8)
利用CEEMDAN方法,能够对原始负荷信号充分分解。
1.2 边界效应
在EMD处理信号过程中,采用三次样条插值函数对原始信号极大值点和极小值点进行插值,获取原始信号包络线进行拟合。然而,信号的初始部分和最终部分受到边界的限制,往往缺少相应的极值点,导致插值点的不确定性和边界的严重失真。镜像对称延拓法通过在数据的两端通过镜像对称性扩展极值点,延拓信号首尾相连消除边界形成闭合曲线,在处理EMD边界效应方面得到了广泛的应用[22]。但这种方法需要找到一个合适的位置放置镜像,一般放置在极值点位置,实际处理过程中往往无法确定边界极值点。预测延拓法[23-24]通过预测算法学习信号分布规律对信号边界预测延拓至极值点,从而抵消边界效应误差。但预测方法扩展时间序列边界效果不佳,扩展后的极值和实际极值之间差异较大,且运算效率大大降低。本文通过将镜像对称延拓法与基于注意力机制的LSTM预测算法相结合来处理边界效应。LSTM-Attention算法在原始序列的边界处延拓至第一个极值点,然后通过镜像对称获得其他极值点,避免单独使用预测算法导致的误差增加。与传统EMD-LSTM模型相比,该模型消除了边界效应对分解的影响,使分解结果更加精确,从而进一步提高预测精度。
2 基于注意力机制的LSTM神经网络
2.1 长短期记忆网络
长短期记忆网络是一种改进的递归神经网络,通过引入记忆单元和门控机制为网络增加了长期记忆和短期记忆,有效地解决长序列依赖性问题和序列过长导致的梯度消失/爆炸现象,能够更好地解析历史序列数据[25]。门控机制负责在连接到记忆单元神经网络其他部分的边缘设置权重,在梯度减小时选择性地记忆反馈误差函数的误差参数;记忆单元用来记录当前时刻状态,控制信息的传递;输入门控制记忆单元更新的信息量,确定需要将多少网络输入数据保存到单位状态;遗忘门确定前一时刻的单位状态需要保留多少到当前时刻;输出门决定当前单位输出多少至单元状态输出。LSTM单元结构如图1所示。
图1 LSTM单元结构Fig.1 Structure of LSTM cell
输入门Γit、遗忘门Γft、输出门Γot的计算公式为:
(9)
式中:σ(·)为sigmoid激活函数;xt表示t时刻的输入向量;ht-1表示t-1时刻的隐含层状态值;Wxi、Wxf、Wxo分别表示输入层到输入门、遗忘门、输出门的权重向量;Whi、Whf、Who分别表示隐含层到输入门、遗忘门、输出门的权重向量;bi、bf、bo分别表示输入门、遗忘门、输出门的偏移量。
(10)
式中:Wxc表示输入层到细胞状态的权重向量;Whc表示隐含层到细胞状态的权重向量;bc表示细胞状态的偏移量。
(11)
隐含层的当前输出计算公式为:
ht=Γot⊗tanh(ct)
(12)
2.2 注意力机制
注意力机制灵感来源于人类视觉的信息处理机制,视觉系统在整体环境中找到焦点区域给予更多关注,同时抑制无用信息的获取。其核心思想是快速选择关键序列,消除无用信息,从而提高信息处理的效率和准确性。注意力机制运算分为2个步骤:
1)计算输入和隐藏状态之间的相似性度量注意力分布;
2)根据注意力分布计算输入信息的加权平均值。
计算相似度越高,分配越多权重于高度相似性的序列片段,减弱对序列中具有较大差异片段的关注,去除非关键因素对整体模型的影响,降低计算成本,节省存储空间并提高学习效率和准确性。注意力机制原理如图2所示。
图2 Attention机制原理Fig.2 Principle of attention mechanism
(13)
(14)
(15)
式中:c为隐藏状态ht的加权和。
本文提出的LSTM-Attention框架如图3所示。在图3中,计算相似度函数并使用softmax激活函数使输出权重标准化,得到at与LSTM层ht的输出通过加权相加得到新的输出向量c。注意力机制更多地关注输入序列中影响输出结果的关键部分,以便更好地学习输入序列中的信息,可以有效地提高预测性能。
图3 LSTM与注意力机制结合Fig.3 LSTM combined with attention mechanism
3 CEEMDAN-LSTM-ATTENTION预测模型
在负荷预测中,负荷时间序列较为复杂且并不平稳,建立单个模型很难捕捉到信号的全部特征加以训练并做出精确预测。基于上述原因,本文所提电力负荷预测流程如图4所示。
步骤1:数据采集与处理。原始负荷作为输入,对数据进行预处理,均值填补空缺数据和替换异常数据,并对数据进行归一化处理。
步骤2:LSTM-Attention预测和镜像扩延。为避免经验模态分解边界效应对负荷预测造成影响,利用神经网络对原始数据延拓至极值点,后通过镜像延拓至其他极值点,降低边界效应,提升分解精准度和预测精度。图5给出了应用镜像对称和LSTM-Attention算法处理边界效应的效果。
图4 本文所提电力负荷预测流程Fig.4 Forecasting process
图5 LSTM-Attention预测与镜像延拓Fig.5 LSTM-Attention prediction and mirror extension
步骤3:负荷数据序列分解。利用CEEMDAN算法将扩延后的非平稳、非线性的负荷时间序列分解成一系列从高到低的本征模态分量(IMF1,IMF2,…,IMFn)和残差余量。这些子序列相对稳定,并且具有不同的局部特征信息。
步骤4:利用LSTM-Attention网络模型分别对分解后的IMF分量进行预测。首先对LSTM预测模型的参数进行初始化,通过网格搜索确定最优超参数,使LSTM-Attention网络模型准确反映各子序列的波动,提高负荷功率预测的准确性,从而获得准确预测值F1,F2,…,Fn。
步骤5:叠加组合子序列预测值。将各子序列建模预测结果累加组合作为基于CEEMDAN的LSTM-Attention组合预测模型负荷功率最终预测结果。
LSTM神经网络的层数主要取决于学习目标的复杂性,理论上增加网络层数可以提高模型非线性拟合能力,但模型的复杂性和训练时间也会随之增加,当隐藏层的数量超过3时,更新迭代的速度会降低,收敛效果和效率下降,准确性不会提高,所以选择效果较好且用时较少的方案,本文设置2层LSTM隐含层可以很好地平衡预测精度和学习效率,Attention层将计算出的权重向量和输入向量结合,得到新的向量,输入到全连接层,模型如图6所示。基于梯度的优化算法种类众多,本文选用的是基于梯度的适应性动量估计算法,可以动态地调整每个参数的学习率,使得每次迭代的学习率具有一定范围,并且参数变化相对稳定。
图6 基于注意力机制的LSTM预测算法结构Fig.6 Structure of LSTM prediction algorithm based on attention mechanism
为评估预测模型精度,本文选取均方根误差(root mean squard error, RMSE)σRMSE、平均绝对百分误差(mean absolute percentage error, MAPE)σMAPE和平均绝对误差(mean absolute error, MAE)σMAE评价指标来衡量预测准确性。评价指标在数学上表示为:
(16)
(17)
(18)
4 算例分析
4.1 数据选取与处理
为了评估所提出的CEEMDAN-LSTM-Attention预测模型的性能,本文选择爱尔兰某地区的电力负荷数据来分析预测模型。从2019年1月到2019年12月,其采集间隔为15 min,共有35 040个电力负荷样本,可以看出其周期性和季节性较为明显,针对不同季节电力负荷特性划分为A、B、C、D四种季节数据集,并分别进行训练预测,如表1所示。模型通过学习同一时间点负荷数据的历史变化周期性规律,可以准确预测负荷值,无需诸如日类型和气候等因素,降低了数据的存储成本,简化了大规模负荷预测的应用过程。本文构建时间序列数据进行测试和训练,选用时间序列分割对数据集进行分割,四季共有31 855个数据进行训练,3 185个数据进行测试。
表1 数据集信息Table 1 Dataset information
从电力负荷原始序列中可以看到,实际数据中大量存在高频分量和噪声,直接通过模型拟合较为困难,因此选择对原始电力负荷序列进行经验模态分解,设置CEEMDAN添加白噪声比例为0.005[21],带不设置本征模态函数上限,使其完全分解。分别对4组数据进行CEEMDAN分解,每组得到11条本征模态分量IMF1—IMF11和1条残差分量,图7所示为D组数据分解结果。
图7 CEEMDAN数据集D分解Fig.7 CEEMDAN decomposition of D dataset
这些分量从高频率IMF1到低频率IMF11逐步递减,数据的波动性也随之降低,逐渐趋于稳定。在负荷时间序列中,高频数据代表短期波动趋势,低频数据代表长期波动趋势。各IMF分量均表现出一定的周期特性,没有明显的混叠部分。在添加40组白噪声的情况下,所有分量总和与原始数据基本一致,CEEMDAN分解重构误差小于1×10-12,表明负荷完全集合经验模态分解的结果是正确的。
本文通过计算CEEMDAN分解产生各分量与原始信号相关性分析和正交性指数(index of orthogonality,IO)作为抑制边界效应的评价指标[18],相关系数ρ计算公式为:
(19)
式中:D(·)代表方差;cov(·)代表协方差;X(t)为原始数据。分解出的IMF分量与原始数据的相关系数ρ越大,则表示对边界效应的抑制效果越好。
(20)
由CEEMDAN分解出的各分量之间理论是局部正交的,边界效应对分量间正交性有所影响,正交性指数用来表示各阶IMF分量间正交性的好坏,指数越小则分解精度越高。正交性指数的数量级在10-3以下,则可认为该方法对边界效应抑制效果较好[18]。正交性指数计算公式如式(20)表示。表2给出了预测与镜像延拓分解与原始分解对比,可以看出抑制边界效应后CEEMDAN分解相关系数较高,正交系数较低,分解分量中高频分量较原始分解提升较多,低频分量分解后较为平稳,不易发生模态混叠现象。
表2 相关系数对比Table 2 Correlation coefficient comparison
通过对CEEMDAN分解Hilbert谱进行分析,可以进一步反映对模态混叠和边界效应现象的抑制效果。负荷数据D组CEEMDAN分解Hilbert谱如图8所示,各IMF瞬时频率值保持在对应范围内变化,分开程度较为明显,相邻各分量间瞬时频率重合与混叠部分较少,分量边界并无失真现象。高频分量瞬时频率值区域划分更为明显,较中频与低频分量更加分开,说明CEEMDAN方法在初始分解高频随机分量后对残余分量补足白噪声的一阶分量对消除模态混叠现象取得了显著成效。之后对各子序列进行归一化处理,采用最小最大值标准化将数据统一映射在[0, 1]区间之间,方便模型网络分析处理,提高预测精度和收敛速度。归一化公式为:
(21)
图8 负荷数据D组CEEMDAN分解Hilbert谱Fig.8 Hilbert spectrum of CEEMDAN decomposition of dataset D of load data
4.2 预测结果及分析
预测方法的超参数对其预测性能具有重大影响。因此,本文使用网格搜索来找到最佳超参数,考虑到负荷功率序列具有明显的周期性,选取输入序列时间步长为24。表3给出了网格搜索预测方法的最佳超参数。循环神经网络超参数选择与最佳超参数一致,SVM核函数选择径向基函数(radial basis function, RBF)。
为验证所提出模型的有效性,本文采用SVM、RNN、GRU(gate recurrent unit)、LSTM、RNN-Attention、GRU-Attention、LSTM-Attention、CEEMDAN-LSTM、CEEMDAN-GRU、CEEMDAN-RNN、CEEMDAN-RNN-Attention、CEEMDAN-GRU-Attention、CEEMDAN-LSTM-Attention、EMD-LSTM-Attention、EEMD-LSTM-Attention共15种模型作为对照分别对4组电力负荷数据集进行预测。表4列出了D组各个预测模型冬季的预测结果,其他季节预测结果对比见附表A1。15种模型在4个季节的预测负荷与原始负荷对比如附图A1—A4所示。CEEMDAN-LSTM-Attention模型的MAPE为0.794%,RMSE为32.005,MAE为25.678,相对于其他模型预测精准度有较大的提升。从预测结果来看,CEEMDAN-LSTM-Attention网络预测模型拟合优度更高,更接近于实际情况。CEEMDAN可以将数据划分为较为平稳且有规律的数据分量,方便神经网络学习,LSTM模型能够深度挖掘历史时间序列信息,在时序预测问题中效果较为理想,而将注意力机制引入LSTM中,突出关键序列的影响,进一步提升了预测效果。图9为D组负荷预测散点图。
表4 预测算法对比Table 4 Comparison of forecasting methods
由表4及附表A1可以看出CEEMDAN-LSTM-Attention模型在2019年电力负荷数据预测中表现良好,平均MAPE指标为0.683%,平均RMSE为26.302,平均MAE为21.072。RMSE值与SVM回归及RNN模型相比预测精度提高了75.2%和67.2%。较传统LSTM、GRU网络相比,网络模型预测精度提高了48.3%、46.5%;较CEEMDAN-LSTM和LSTM-Attention分别提升了31.4%和34.7%,较EMD-LSTM-Attention和EEMD-LSTM-Attention分别提高了12.96%和35.9%,EEMD分解过程中重构误差较大,预测精度反而不如EMD。数据集A、B中的各项评估指标相较于数据集C、D有所提升,说明在秋季、冬季的负荷波动较春季、夏季更为明显。模型的相对误差主要集中在[-40, 40]的区间内,其他预测模型的扩大到[-250, 250]区间,除了夏季外CEEMDAN-LSTM- Attention模型预测误差均小于其他模型,相较于其他算法,其预测值偏离真实值的程度最小,预测效果最好,证明了采用CEEMDAN-LSTM-Attention的组合方法较单独预测有较大的改进,有着更好的预测精度。
图9 D组负荷预测散点图Fig.9 Scatter diagram of load forecasting for dataset D
5 结 论
电力负荷预测对电网的经济运行具有重要意义,本文提出了一种新型混合预测模型,该模型由数据处理技术CEEMDAN,LSTM神经网络和注意力机制组成,所得结论如下:
1)将预处理原始电力负荷数据通过CEEMDAN分解算法分解为多个IMF分量,并通过LSTM-Attention神经网络预测出一组极大值,结合镜像延拓方法处理边界效应,负荷平稳化处理能够大大提高模型的预测性能;
2)通过在LSTM神经网络中加入Attention注意力机制模型影响关键序列权重,可以很好地提高模型的预测精度;
3)通过实际电力负荷数据进行实验,划分4种季节数据集分别评估了混合模型的有效性,与对比数据处理方法或网络的预测模型相比,该模型的预测性能均优于其他模型,预测结果更好。
综上所述,本文所提的混合预测模型为电力负荷预测提供了一种新方法,该方法可以得到较好的预测效果,而且在处理周期性、趋势性和随机非线性负荷时效果出色。