«上一篇 下一篇»
  计算机工程  2022, Vol. 48 Issue (9): 286-297, 304  DOI: 10.19678/j.issn.1000-3428.0062059
0

引用本文  

廖雪超, 伍杰平, 陈才圣. 结合注意力机制与LSTM的短期风电功率预测模型[J]. 计算机工程, 2022, 48(9), 286-297, 304. DOI: 10.19678/j.issn.1000-3428.0062059.
LIAO Xuechao, WU Jieping, CHEN Caisheng. Short-Term Wind Power Prediction Model Combining Attention Mechanism and LSTM[J]. Computer Engineering, 2022, 48(9), 286-297, 304. DOI: 10.19678/j.issn.1000-3428.0062059.

基金项目

国家自然科学基金(61902285)

作者简介

廖雪超(1979—),男,副教授、硕士,主研方向为控制理论与控制工程;
伍杰平,硕士研究生;
陈才圣,硕士研究生

文章历史

收稿日期:2021-07-13
修回日期:2021-10-14
结合注意力机制与LSTM的短期风电功率预测模型
廖雪超1,2 , 伍杰平1,2 , 陈才圣1,2     
1. 武汉科技大学 计算机科学与技术学院, 武汉 430065;
2. 武汉科技大学 智能信息处理与实时工业系统重点实验室, 武汉 430065
摘要:风力发电预测在电力系统的运行中发挥着重要作用。现有风电功率的短期预测模型因风速的复杂性和随机性,难以确定风速与风电功率的非线性映射关系,导致预测精度降低。提出一种结合变分模态分解、双阶段注意力机制、误差修正模块与深度学习算法的短期风电功率预测模型。通过对原始数据进行互信息特征选择,获得与风电功率相关性较强的特征,并对其进行信号预处理,利用变分模态分解对多维特征序列进行分解,得到具有一定中心频率的模态分量,以降低各个特征序列的复杂性和非平稳性。采用基于双阶段注意力机制与编解码架构的长短时记忆(LSTM)神经网络对模态分量进行训练与预测,得到初始预测误差。在此基础上,利用误差修正模块对初始预测误差进行变分模态分解和修正,从而提高模型的预测精度。实验结果表明,与自回归移动平均模型、标准编解码结构的LSTM模型相比,该预测模型的平均绝对误差最高可降低约87%,具有较优的预测性能。
关键词短期风电功率预测    变分模态分解    长短时记忆神经网络    注意力机制    误差修正    
Short-Term Wind Power Prediction Model Combining Attention Mechanism and LSTM
LIAO Xuechao1,2 , WU Jieping1,2 , CHEN Caisheng1,2     
1. School of Computer Science and Technology, Wuhan University of Science and Technology, Wuhan 430065, China;
2. Key Laboratory of Intelligent Information Processing and Real-Time Industrial Systems, Wuhan University of Science and Technology, Wuhan 430065, China
Abstract: Wind power prediction plays an important role in operating power systems.Owing to the complexity and randomness of wind speed, determining the nonlinear mapping relationship between wind speed and power is difficult in existing short-term wind power prediction models, resulting in a decrease in prediction accuracy.This study proposes a short-term wind power prediction model that combines Variational Modal Decomposition (VMD), a dual-stage attention mechanism, an error correction module, and a deep learning algorithm.Through the Mutual Information(MI) feature selection of the original data, features with strong correlations with the wind power of the target prediction sequence are selected and the signal is preprocessed.The multi-dimensional features are decomposed using VMD to obtain modal components with a certain central frequency, thereby reducing the complexity and nonstationarity of each feature sequence.The Long Short-Term Memory (LSTM) neural network based on the dual-stage attention mechanism and encoder-decoder architecture is used to train and predict the modal components, and the initial prediction sequence is obtained.Further, the error correction module is used to perform VMD and error correction on the initial prediction error to improve the prediction accuracy of the model.The experimental results show that, compared with the autoregressive moving average model, LSTM model with a standard encoder-decoder structure, the average absolute error of the prediction model can be reduced by approximately 87% at its highest, and the prediction performance is optimal.
Key words: short-term wind power prediction    Variational Modal Decomposition(VMD)    Long Short-Term Memory(LSTM) neural network    attention mechanism    error correction    

开放科学(资源服务)标志码(OSID):

0 概述

随着全球能源结构的变化,风能在未来能源中的比重逐渐提高[1]。风力发电的快速发展使得电力系统可靠性和安全性面临诸多挑战[2]。由于风速具有间歇性和随机性,因此电力系统的电压和频率波动较大,导致风力发电过程具有不确定性[3]。风电功率预测对于保障电力系统的不间断运行和风能资源的充分利用具有重要意义。风电功率的短期预测方法分为模型驱动、数据驱动、模型与数据集成驱动[4]

模型驱动基于数值天气预报(Numerical Weather Prediction,NWP)模型,通过计算热力学和计算流体动力学(Computational Fluid Dynamics,CFD)模型的三维空间和时间信息来预测气象变量,并使用适合于给定风电场的风电功率曲线,将气象数据和风力发电机的物理特性数据转换为风电功率[5]。这种模型驱动方法的准确性在很大程度上取决于NWP模型。NWP模型需提供气象数据和风力发电机的物理特性数据,但这些数据并不总是可用的。因此,模型驱动方法可能不适用于实际的风电功率预测(Wind Power Forecast,WPF)应用[6]

数据驱动是通过构建输入变量与风电功率之间的映射关系进行预测。统计模型分为持久性模型[7]、自回归移动平均(ARMA)模型[8]、高斯进程模型[9]、卡尔曼滤波模型[10]等。机器学习模型包括人工神经网络[11]、极限学习机(Extreme Learning Machine,ELM)[12]、支持向量机(Support Vector Machine,SVM)[13]等。随着大数据的发展,多变量时间序列数据呈爆炸式增长,并具有高维度性、时空相关性、动态性、非线性等特征,使得传统统计模型和机器学习模型在处理海量并且复杂的数据时面临诸多困难,而深度学习算法能挖掘更多的深层特征[14]。因此,基于深度学习的预测方法成为研究热点。深度学习模型主要有卷积神经网络(Convolutional Neural Network,CNN)[15]、层叠自编码器[16]、深度信念神经网络[17]、循环神经网络(Recurrent Neural Network,RNN)[18]等。

集成驱动是模型驱动与数据驱动的结合[19],集成了信号预处理技术(如小波变换[20]和经验模态分解(Empirical Mode Decomposition,EMD)[21]、优化算法(如粒子群优化和网格搜索[22])以及预测模型(如ELM、反向传播神经网络和SVM[23])。

本文提出一种结合变分模态分解(Variational Mode Decomposition,VMD)、双阶段注意力机制(DA)、深度学习模型和误差修正(VEC)的风电功率预测模型。利用互信息(Mutual Information,MI)计算多维特征和风电功率之间的互信息量,选择与风电功率相关性较强的特征,利用VMD对原始特征序列和预测误差序列进行变分模态分解,同时采用基于双阶段注意力机制与编解码架构的长短时记忆(Long Short-Term Memory,LSTM)神经网络模型进行风电功率预测。在此基础上,采用误差分解预处理的误差修正模块修正原始预测结果,以得到最终的预测结果。

1 相关工作

风电功率和风速数据具有随机性强和复杂性大的特点,而信号预处理算法能有效地提取信号特征。研究人员通过结合信号预处理算法和机器学习算法进行风电预测。例如,小波包分解[24]、EMD[25]、完全集合经验模态分解(CEEMD)[26]、集合经验模态分解和自适应小波神经网络(EEMD+AWNN[27]),自适应噪声的完全集合经验模态分解等方法。研究结果表明,与无信号预处理的单一模型相比,结合信号分解与机器学习算法的模型具有更优的稳定性和预测精度,但是传统机器学习算法难以很好地把握时序依赖关系,在较长时间步长情况下性能较差。

深度学习被认为是最强大的表征学习算法,近年来,研究人员将信号预处理与深度学习算法相结合用于风电功率预测。文献[28]提出基于流形算法与径向基函数网络相结合的风速预测模型,文献[29]介绍了基于VMD-奇异谱分析-ELM-LSTM的组合模型。文献[30]使用VMD分解预处理和LSTM的风速预测模型,利用VMD分解得到稳定的风电功率信号,从而提升模型性能。文献[31]结合EMD分解,使用基于注意力机制的门控循环单元神经网络以降低模型复杂度,从而得到较高的预测精度。

LSTM在多步预测时存在误差累积的问题,而编解码框架虽然能解决误差累积问题,但是当输入较长的时间步长时预测精度会出现显著的降低[32]。研究人员引入注意力机制提升模型对于时间相关性的选择能力,例如,文献[33]提出使用一种基于注意力机制的编解码模型进行多变量时间序列数据预测。文献[34]提出将LSTM-Attention与CNN相结合用于风速的预测。上述注意力机制只考虑时间维度上的相关性,并没有解决在特征维度上不同特征的重要性也不相同的问题。

因此,传统的ARMA模型难以处理非线性和非平稳性的复杂数据,而单一的SVR、LSTM模型存在预测滞后的问题,并且在多步预测上存在误差累积问题,编解码模型虽然能较好地解决误差累积问题,但是不能把握输入特征间的长时序相关性,一般的注意力机制只考虑时间相关性,没有考虑特性相关性。

2 相关理论与方法 2.1 互信息特征选择

互信息是用于捕捉每个特征与标签之间的线性或非线性关系的过滤方法[35]。互信息量化通过一个随机变量获得有关另一个随机变量的信息量。对于连续型变量,互信息计算如式(1)所示:

$ I\left(X;Y\right)={\int }_{y}^{}{\int }_{x}^{}p\left(x, y\right)\mathrm{l}\mathrm{o}{\mathrm{g}}_{\mathrm{a}}\left(\frac{p\left(x, y\right)}{p\left(x\right)p\left(y\right)}\right)\mathrm{d}x\mathrm{d}y $ (1)

其中:$ p(x, y) $$ x $$ y $的联合概率密度函数;$ p\left(x\right) $$ p\left(y\right) $为边际密度函数。互信息量可以确定联合分布与分解的边际分布$ p(x, y) $的相关性。文献[36]提出基于K近邻的无参数方法,将XY方向上的欧氏距离最大值作为选择最近邻的标准,并进行统计计数和概率密度估计。

本文提出模型使用MI分别计算多维特征与风电功率之间的互信息量,排序后选择相关性强的特征用于后续模型的训练和预测。

2.2 变分模态分解

DRAGOMIRETSKIY[37]提出一种VMD方法。该方法具有计算效率高和鲁棒性优的特点,以解决模态混合问题。通过应用VMD将信号$ x\left(t\right) $分解为K个子序列或者模态分量$ {u}_{k}(k=\mathrm{1, 2}, \cdots , k) $,并且每个模态分量的带宽估计之和被最小化。VMD算法分为构造和求解变分,主要有以下3个步骤:1)通过对每个模态函数$ {u}_{k} $进行希尔伯特变换得到相应的频谱;2)通过指数混合调制算法将$ {u}_{k} $的频谱移动到各自的估计中心频率$ {\omega }_{k} $;3)使用信号的高斯平滑度和梯度平方准则来解调和估计$ {u}_{k} $的带宽。

带约束的变分问题计算如式(2)所示:

$ \begin{array}{l}\underset{\left\{{u}_{k}\right\}\left\{{\omega }_{k}\right\}}{\mathrm{m}\mathrm{i}\mathrm{n}}\left\{{\sum\limits _{k=1}^{K}‖{\partial }_{t}\left[\delta \left(t\right)+\frac{j}{\mathrm{{\rm{ \mathsf{ π} }} }t}\times {u}_{k}\left(t\right)\right]{\mathrm{e}}^{-\mathrm{j}{\omega }_{k}t}‖}_{2}^{2}\right\}\\ \mathrm{s}.\mathrm{t}.\sum\limits _{k=1}^{K}{u}_{k}=x\left(t\right)\end{array} $ (2)

本文提出模型采用VMD算法选择MI特征后,并对选取的前3维特征进行分解,得到具有一定中心频率的模态分量。

2.3 长短时记忆神经网络

RNN在反向传播过程中存在梯度消失和梯度爆炸问题,使其难以连续优化网络参数[38]。LSTM[39]能够有效地解决这个问题。LSTM单元结构如图 1所示。

Download:
图 1 LSTM单元结构 Fig. 1 Unit structure of LSTM

LSTM存储单元由遗忘门、输入门和输出门3个激活门结构控制,以便有效地存储和更新单元信息。

1)遗忘门,在单元信息更新中控制上一单元$ {\boldsymbol{C}}_{t-1} $信息被遗忘。遗忘门的计算如式(3)所示:

$ {f}_{t}=\sigma \left({\boldsymbol{W}}_{f}\left[{\boldsymbol{h}}_{t-1};{\boldsymbol{x}}_{t}\right]+{\boldsymbol{b}}_{f}\right) $ (3)

2)输入门,控制信息被输入到本单元中。输入门的计算如式(4)和式(5)所示:

$ {i}_{t}=\sigma \left({\boldsymbol{W}}_{i}\left[{\boldsymbol{h}}_{t-1};{\boldsymbol{x}}_{t}\right]+{\boldsymbol{b}}_{i}\right) $ (4)
$ {\tilde{\boldsymbol{C}}}_{t}=\mathrm{t}\mathrm{a}\mathrm{n}\mathrm{h}\left({\boldsymbol{W}}_{\tilde{\boldsymbol{C}}}\left[{\boldsymbol{h}}_{t-1};{\boldsymbol{x}}_{t}\right]+{\boldsymbol{b}}_{\tilde{\boldsymbol{C}}}\right) $ (5)

3)单元信息更新,通过遗忘门和输入门有选择地更新$ {\boldsymbol{C}}_{t} $。单元信息更新过程如式(6)所示:

$ {\boldsymbol{C}}_{t}={f}_{t}\odot {\boldsymbol{C}}_{t-1}+{i}_{t}\odot {\tilde{\boldsymbol{C}}}_{t} $ (6)

4)输出门,将$ {\boldsymbol{C}}_{t} $激活,并控制$ {\boldsymbol{C}}_{t} $的过滤程度。输出门的计算如式(7)和式(8)所示:

$ {\boldsymbol{o}}_{t}=\sigma \left({\boldsymbol{W}}_{o}\left[{\boldsymbol{h}}_{t-1};{\boldsymbol{x}}_{t}\right]+{\boldsymbol{b}}_{o}\right) $ (7)
$ {\boldsymbol{h}}_{t}={\boldsymbol{o}}_{t}\odot \mathrm{t}\mathrm{a}\mathrm{n}\mathrm{h}\left({\boldsymbol{C}}_{t}\right) $ (8)

其中:$ {\boldsymbol{W}}_{\mathrm{*}} $为权重矩阵;$ {\boldsymbol{b}}_{\mathrm{*}} $为偏置项;$ \odot $表示矩阵元素乘积;$ \sigma $$ \mathrm{s}\mathrm{i}\mathrm{g}\mathrm{m}\mathrm{o}\mathrm{i}\mathrm{d} $激活函数;$ \mathrm{t}\mathrm{a}\mathrm{n}\mathrm{h} $为双曲正切激活函数。激活函数的定义如式(9)和式(10)所示:

$ \sigma \left(z\right)=\frac{1}{1+{\mathrm{e}}^{-z}} $ (9)
$ \mathrm{t}\mathrm{a}\mathrm{n}\mathrm{h}\left(z\right)=\frac{{\mathrm{e}}^{z}-{\mathrm{e}}^{-z}}{{\mathrm{e}}^{z}+{\mathrm{e}}^{-z}} $ (10)

输出层依据式(11)得到最终预测值:

$ {\boldsymbol{y}}_{t}=\sigma \left({\boldsymbol{W}}_{y}{\boldsymbol{h}}_{t}+{\boldsymbol{b}}_{y}\right) $ (11)
3 系统模型设计 3.1 符号描述与问题建模

对于给定的n维特征风电功率时间序列,例如$ \boldsymbol{X}={\left({X}^{1}, {X}^{2}, \cdots , {X}^{n}\right)}^{\mathrm{T}}=\left({X}_{1}, {X}_{2}, \cdots , {X}_{T}\right)\in {\mathbb{R}}^{n\times T} $,其中,T为观测时间序列的窗口长度。本文使用$ {\boldsymbol{X}}^{k}={\left({x}_{1}^{k}, {x}_{2}^{k}, \cdots , {x}_{T}^{k}\right)}^{\mathrm{T}}\in {\mathbb{R}}^{T} $表示第k维特征序列,$ {\boldsymbol{X}}_{t}={\left({x}_{t}^{1}, {x}_{t}^{2}, \cdots , {x}_{t}^{n}\right)}^{\mathrm{T}}\in {\mathbb{R}}^{n} $表示第t时刻的n维特征序列。

对于风电功率预测问题,本文给定观测序列历史值$ \left({\boldsymbol{X}}_{1}, {\boldsymbol{X}}_{2}, \cdots , {\boldsymbol{X}}_{T-1}\right) $,其中$ {\boldsymbol{X}}_{t}\in {\mathbb{R}}^{n} $,其目标是确定观测特征变量与目标预测变量$ {y}_{T} $之间的非线性映射关系,即找到一个非线性映射函数$ F(\cdot ) $,使得$ {y}_{T}=F\left({\boldsymbol{X}}_{1}, {\boldsymbol{X}}_{2}, \cdots , {\boldsymbol{X}}_{T-1}\right) $

3.2 双阶段注意力机制

受人类注意力机制理论的启发,在第一阶段选择基本刺激特征,在第二阶段使用分类信息来解码刺激[40]。本文在模型编码层通过注意力机制输入特征,使得该编码器能够自适应地关注相关特征,同时在解码层注意力机制捕获长时间依赖关系,从而获取更加丰富的全局上下文信息。

传统的编解码模型对于编码层的所有输入特征都具有相同的权重,说明在编码阶段未利用特征之间的关系。同时,在解码层不同时刻的输入会产生相同的上下文向量。因此,传统的编解码模型不能关注时序上的重要时刻特征,当时序较长时,通常会导致模型预测性能降低。

在编解码器中使用的注意力机制仅对解码层不同时刻的输入参数产生不同的上下文向量,因此,忽略了不同特征与目标预测变量之间的相关性。

本文提出基于双阶段注意力机制编解码模型(DA-EDLSTM)的风电功率预测方法。DA-EDLSTM模型结构如图 2所示。在编码层和解码层上引入注意力机制,在空间和时间两个维度上获取上下文依赖关系,从而在把握长期时序依赖关系的同时实现对重要特征因子的选择。

Download:
图 2 DA-EDLSTM模型结构 Fig. 2 Structure of DA-EDLSTM model
3.2.1 基于注意力机制的编码层

基于特征注意力机制的编码层结构如图 3所示。

Download:
图 3 基于特征注意力机制的编码层结构 Fig. 3 Structure of encoder layer based on feature attention mechanism

对于输入观测序列$ X $中的第k维特征序列$ {X}^{k} $,根据上一时刻编码器的隐藏状态$ {\boldsymbol{h}}_{t-1} $和单元状态$ {s}_{t-1} $构造注意力机制,如式(12)和式(13)所示:

$ {e}_{t}^{k}={\boldsymbol{V}}_{e}^{\mathrm{T}}\mathrm{t}\mathrm{a}\mathrm{n}\mathrm{h}\left({\boldsymbol{W}}_{e}\left[{\boldsymbol{h}}_{t-1};{s}_{t-1}\right]+{U}_{e}{X}^{k}+{\boldsymbol{b}}_{e}\right) $ (12)
$ {\alpha }_{t}^{k}=\frac{\mathrm{e}\mathrm{x}\mathrm{p}\left({e}_{t}^{k}\right)}{\sum\limits _{i=1}^{n}\mathrm{e}\mathrm{x}\mathrm{p}\left({e}_{t}^{i}\right)} $ (13)

其中:$ {V}_{e}, {\boldsymbol{b}}_{e}\in {\mathbb{R}}^{T} $$ {\boldsymbol{W}}_{e}\in {\mathbb{R}}^{T\times 2m} $$ {U}_{e}\in {\mathbb{R}}^{T\times T} $为模型需要学习的参数;$ {\boldsymbol{h}}_{t-1}\in {\mathbb{R}}^{m} $$ {s}_{t-1}\in {\mathbb{R}}^{m} $为编码层的隐藏状态和单元状态;m为隐藏层的大小。通过这种方式,当前馈神经网络训练完成后,在LSTM获取长时序相关性的同时得到重要程度不同的特征信息,重要程度表现在每个特征训练后得到的权重$ {U}_{e} $不同。由于在注意力机制中输入上一时刻的隐藏状态$ {\boldsymbol{h}}_{t-1} $和单元状态$ {s}_{t-1} $,因此特征信息具有时序依赖性。当得到$ {e}_{t}^{k} $之后,通过softmax函数将其归一化,使得注意力权重之和为1。每个时刻的输入$ {X}_{t} $为其中每个影响因子赋予一定的注意力权重$ {\alpha }_{t}^{k} $$ {\alpha }_{t}^{k} $可以衡量时刻t的第k维特征的重要性。由于每个时刻的每个特征都有其对应的权重,因此在第一阶段注意力加权后的输出如式(14)所示:

$ {\tilde{\boldsymbol{X}}}_{t}={\left({\alpha }_{t}^{1}{x}_{t}^{1}, {\alpha }_{t}^{2}{x}_{t}^{2}, \cdots , {\alpha }_{t}^{n}{x}_{t}^{n}\right)}^{\mathrm{T}} $ (14)

本文使用$ {\tilde{\boldsymbol{X}}}_{t} $代替$ {\boldsymbol{X}}_{t} $,并将其输入到编码层中,如式(15)所示:

$ {\boldsymbol{h}}_{t}={f}_{1}\left({\boldsymbol{h}}_{t-1}, {\tilde{\boldsymbol{X}}}_{t}\right) $ (15)

其中:$ {f}_{1} $为LSTM神经网络,通过输入注意力机制,编码层可以关注重要的特征因子而不是平等对待所有特征属性。

3.2.2 基于注意力机制的解码层

在传统编解码模型的结构中,编码层输出的所有时刻都具有相同的上下文向量,然而,并不是每个时刻的输入序列$ {X}_{t}^{} $和编码层的隐藏状态$ {\boldsymbol{h}}_{t}^{} $对上下文向量都具有相同的贡献。因此,传统的编解码模型忽略了输入特征在时序上的重要性差别。因此,采用时间注意力机制选择性地关注相关的输入序列。基于时间注意力机制的解码层结构如图 4所示。

Download:
图 4 基于时间注意力机制的解码层结构 Fig. 4 Structure of decoder layer based on time attention mechanism

注意力权重向量$ {\boldsymbol{e}}_{i}^{} $表示未归一化的输入重要性。注意力权重向量$ {\boldsymbol{e}}_{i}^{} $的计算如式(16)所示:

$ {\boldsymbol{e}}_{i}=\mathrm{ }\mathrm{t}\mathrm{a}\mathrm{n}\mathrm{h}\left({\boldsymbol{W}}_{d}[{\boldsymbol{h}}_{i};{s}_{t-1}]+{\boldsymbol{b}}_{d}\right) $ (16)

其中:$ {\boldsymbol{W}}_{d} $表示模型学习的权重参数。模型经过训练后,得到表示隐藏状态重要性的$ {\boldsymbol{e}}_{i} $,通过式(17)进行归一化,得到各个时刻输入序列的关注概率$ {\beta }_{i} $$ {\beta }_{i} $表示在不同时刻产生上下文的重要程度:

$ {\beta }_{i}=\frac{\mathrm{e}\mathrm{x}\mathrm{p}\left({\boldsymbol{e}}_{i}\right)}{\sum\limits _{t=1}^{T}\mathrm{e}\mathrm{x}\mathrm{p}\left({\boldsymbol{e}}_{t}\right)} $ (17)

解码层在$ t $时刻计算上下文向量中的加权求和,并对不同时刻隐藏状态分配权重大小,得到最终进入LSTM门控单元的向量$ {\boldsymbol{x}}_{t1} $,如式(18)所示:

$ {\boldsymbol{x}}_{t1}=\sum\limits _{t}^{T}{\beta }_{t}{\boldsymbol{h}}_{t} $ (18)

该向量表示不同时刻的编码输入变量在预测输出时的重要性。在解码结构中基于时间注意力机制,学习不同时刻隐藏状态间的内在时间相关性,利用注意力机制对加权得到的信息进行预测。此外,注意力机制为前馈神经网络,可以与模型整体一起进行参数学习。

3.3 模型架构

本文提出MI-VMD-DA-EDLSTM-VEC的新型组合模型来进行风电短期预测,模型整体架构如图 5所示。

Download:
图 5 本文模型的整体架构 Fig. 5 Overall architecture of the proposed model

MI-VMD-DA-EDLSTM-VEC的新型组合模型主要包括以下4个部分:

1)MI特征选择:通过计算原始6维特征与目标序列的互信息,并进行互信息量排序,以选择互信息量较大特征,从而降低相关性弱的冗余特征对预测精度的影响。

2)VMD分解:为了得到较强的平稳性,并且在不同频域上均匀分布的特征序列,分别对风电功率、风速和空气温度序列进行VMD分解。

3)DA-EDLSTM模型训练:为了同时把握时序相关性与特征相关性,通过双阶段注意力机制的编解码LSTM模型对VMD分解得到的模态分量(IMFs)进行训练和预测,得到初始预测序列$ {\widehat{y}}_{o}\left(t\right) $,通过$ y\left(t\right)-{\widehat{y}}_{o}\left(t\right) $得到原始预测误差$ e\left(t\right) $

4)误差修正:由于误差序列具有波动性较强且平稳性弱的特点,因此对$ e\left(t\right) $进行VMD分解预处理,使用单层LSTM模型进行再训练预测,得到误差预测序列$ \widehat{e}\left(t\right) $,并对原始预测结果进行修正,得到最终预测结果$ {\widehat{y}}_{f}\left(t\right) $

本文提出的模型首先对原始数据进行MI选择,以选择出与风电功率相关性强的特征;其次对相关特征进行VMD分解,以降低各个特征序列的复杂性和非平稳性,使用新型的基于双阶段注意力机制和编解码神经网络的模型进行预测;最后对模型预测误差进行VMD分解和误差修正,从而进一步提高模型的预测精度。

4 实验与结果分析 4.1 数据集

本文实验使用的数据集为美国国家可再生能源实验室(NREL)提供的观测站站点数据,原始数据集时间跨度为2013年全年,包含风电功率、风向、风速、空气温度、气压和密度6个维度特征,每5 min采样一次。观测站点的地理位置如图 6所示。

Download:
图 6 观测站点位置信息 Fig. 6 Location information of observation station

实验数据集取自马萨诸塞州南塔基特岛西部的巴特利特的海景风电场(BOV)以及巴恩斯特布尔的丹尼斯的CCRTA站点。

BOV站点风电功率随时间的变化曲线如图 7所示。从图 7可以看出,风电功率变化幅度较大,风电功率中不同频率的信号相互干扰,受噪声影响较严重。由于BOV站点风电场风电时间序列的变化幅度和波动频率的特点,因此选择该风电场数据来验证本文模型的有效性。

Download:
图 7 在BOV站点上风电功率随时间的变化曲线 Fig. 7 Change curves of wind power with time at BOV station

从2013年1月到2013年12月,NREL提供每5 min采样一次的数据集,本文对1 h内12个采样点进行平均值重采样,以获得每小时的数据。实验评估中使用训练集、验证集和测试集3个数据子集,根据固定比例7∶1∶2进行划分。本文实验共有8 760 h的数据样本,其中6 132个样本作为训练集,876个样本作为验证集,1 752个样本用于测试。

4.2 评价指标

本文使用3个评价指标来评估预测模型的性能。评价指标分别为平均绝对误差(MMAE)、根均方误差(RRMSE)和对称平均绝对百分比误差(SSMAPE)。RRMSE是在预测定量数据时测量模型误差的标准指标。SSMAPE是基于百分比误差的准确性度量。3个评价指标的计算如式(19)~式(21)所示:

$ {M}_{\mathrm{M}\mathrm{A}\mathrm{E}}=\frac{1}{N}\sum\limits _{t=1}^{N}\left|y\right(t)-\widehat{y}\left(t\right)| $ (19)
$ {R}_{\mathrm{R}\mathrm{M}\mathrm{S}\mathrm{E}}=\sqrt{\frac{1}{N}\sum\limits _{t=1}^{N}{\left[y\left(t\right)-\widehat{y}\left(t\right)\right]}^{2}} $ (20)
$ {S}_{\mathrm{S}\mathrm{M}\mathrm{A}\mathrm{P}\mathrm{E}}=\frac{1}{N}\sum\limits _{t=1}^{N}\frac{\left|\widehat{y}\right(t)-y(t\left)\right|}{\left(y\right(t)+\widehat{y}(t\left)\right)/2} $ (21)

其中:$ y\left(t\right) $为时间t的实际风电值;$ \widehat{y}\left(t\right) $为时间t的预测风电值;N为测试集的数据样本数。

4.3 实验基准模型

为验证本文VMD-DA-EDLSTM-VEC组合模型的预测效果,本文选择基准模型用于实验对比,基准模型的描述如表 1所示。单一模型的参数设置如表 2所示。

下载CSV 表 1 基准模型描述 Table 1 Description of benchmark models
下载CSV 表 2 单一模型的主要参数设置 Table 2 The main parameters setting of single model
4.4 数据预处理

为确定时间序列预测模型的最佳阶数,本文分析时间序列数据的自相关性。风电功率的自相关系数和偏自相关系数随时间的变化曲线如图 8所示,自相关系数图的特征是拖尾,而偏自相关系数图是截尾。因此,该风电功率信号满足自回归(Auto Regressive,AR)模型的特性,从图 8(a)可以看出,数据在滞后30步左右完全进入置信区间中,因此时序预测模型的最佳阶数p初步确定为30。

Download:
图 8 风电功率的自相关系数与偏自相关系数随时间的变化曲线 Fig. 8 Change curves of autocorrelation coefficient and partial autocorrelation coefficient of wind power with time

由于原始数据为6维,包含风电功率、风向、风速、空气温度、气压和密度,为了消除或者减弱冗余特性以及不相关特性带来的噪声对模型预测结果的影响,本文使用MI作为特征选择方法进行特征选择,选择与PW相关性较强的特征作为主要特征进行模型预测。通过互信息计算的每个特征维度的互信息量排序如图 9所示。

Download:
图 9 不同特征的互信息量排序 Fig. 9 Mutual information ranking among different features

图 9可以看出,风电功率、风速和空气温度为前3维主要相关特征,相关性较强的是风电功率和风速,互信息量分别为5.9和3.5,而其他4维特征相关性较弱,互信息量小于0.3。实验选择相关性排序前3位的特征序列:风电功率、风速和空气温度。后续模型根据这3维特征数据进行信号分解、模型训练和预测。

为验证MI特征选择的效果,不同维度特征使用单一LSTM模型进行预测的结果如图 10所示。从图 10可以看出,MI选择3维特征序列的预测结果优于6维特征序列的结果,但是仍然较1维特征序列的预测结果差,这是由于加入的风速信号具有不平稳性和复杂性,导致模型的精度下降,后续采用VMD算法将信号分解为不同频率的平稳分量,从而提高模型精度。

Download:
图 10 采用不同维度特征序列预测风电功率的对比分析 Fig. 10 Comparative analysis of prediction wind power using different dimensional features sequence
4.5 特征提取

本文分别使用VMD算法将风电功率、风速、空气温度数据分解为20、10和1个IMFs,使各个特征分解为在不同频域上均匀分布的分量。风电功率、风速的VMD分解结果如图 11所示,VMD分解能够充分地提取信号在频域上的特征。

Download:
图 11 风电功率与风速序列VMD分解结果 Fig. 11 VMD decomposition results of wind power and wind speed series

风电功率和风速模态分量的分解层数通过参数寻优实验获得:p为20,s为10,t为1;风电功率IMFs [IMF1,IMF2,…,IMFp];风速IMFs [IMF1,IMF2,…,IMFs];空气温度IMFs [IFM1,IMF2,…,IMFt]。

在BOV和CCRTA站点上不同模型的评价指标对比如表 3所示。在BOV站点上VMD-LSTM模型的预测结果RMSE和MAE分别为1.117 kW和0.799 kW,与3维特征序列直接使用LSTM模型预测的RMSE相比,VMD-LSTM模型的RMSE指标明显降低。

下载CSV 表 3 不同模型的评价指标对比 Table 3 Evaluation indexs comparison among different models  

VMD-EDLSTM的预测指标MAE和RMSE分别为0.266和0.568,比使用单层LSTM的VMD-LSTM提高了5.33和5.49个百分点。在解码层基于注意力机制的VMD-AT-EDLSTM模型利用不同上下文向量关注重要时刻的隐藏状态,因此,相比VMD-EDLSTM模型的RMSE和MAE分别提升了3.4和4.9个百分点,具有更优的预测精度。在VMD-AT-EDLSTM模型的基础上,VMD-DA-EDLSTM模型在编码层的输入阶段运用注意力机制,使模型不仅能把握长期时序依赖关系和关注重要时刻,而且实现重要特征因子的选取。VMD-DA-EDLSTM模型预测指标MAE和RMSE分别为0.218和0.381,具有最优的预测性能,相比VMD-EDLSTM模型降低了4.8和18.7个百分点,相比VMD-AT-EDLSTM模型降低了1.4和13.8个百分点。

双阶段注意力机制的注意力权重分布如图 12所示。在第一阶段的注意力机制中,注意力机制被用于选择关键的IMFs分量,风电功率、风速和空气温度的IMFs数量分别是20、10、1。从图 12(a)可以看出,模型主要关注每组IMFs分量中的低频趋势分量,在图中分别为第1、21、31号输入特征,说明模型充分提取了特征序列中的主要趋势信息。在第二阶段的注意力机制中,模型主要关注关键时间步的隐藏状态,从图 12(b)可以看出,在第24步时拥有最大的注意力权重,并且靠后的时间步拥有较大的权重,说明在第二阶段的解码层注意力机制可以选择长时间相关性中的关键信息,并且该信息在靠后时刻。以上两个结论都符合客观事实,即主要趋势分量和靠后时间步的特征对预测结果影响更大。

Download:
图 12 注意力权重分布 Fig. 12 Weight distribution of attention
4.6 模型实验对比

在CCRTA站点上不同模型的预测结果如图 13所示。以CCRTA站点的结果为例,从图 13可以看出,VMD-LSTM的预测结果优于统计模型ARMA和机器学习模型SVR。在图 13的散点图中VMD分解后的预测结果比使用LSTM直接进行预测的结果更接近基准线,说明VMD分解后进行预测有较高的精度。

Download:
图 13 在CCRTA站点不同模型的预测结果 Fig. 13 Prediction results of different models at CCRTA site

在BOV和CCRTA站点上不同模型的误差值对比如图 14所示,本文提出的VMD-DA-EDLSTM-VEC组合模型在BOV站点和CCRTA站点上都具有最优的预测误差指标。

Download:
图 14 不同模型的误差值对比 Fig. 14 Errors values comparison among different models
4.7 误差修正

为验证误差修正模块的效果,本文在双阶段注意力机制的编解码模型基础上,加入了误差修正模块,以原始预测误差作为数据样本,使用单层LSTM模型预测误差,并通过误差预测序列对原始预测误差进行修正。本文考虑到预测误差具有不平稳性和波动性较强的特点,使用VMD分解对预测误差序列进行预处理。实验结果表明,基于VMD分解预处理的误差修正模块能有效提高模型的预测精度。在BOV和CCRTA站点上引入误差修正模块的预测结果如图 15所示。

Download:
图 15 不同模型引入误差修正模块的预测结果对比 Fig. 15 Prediction results of introducing error correction module into different models

在两个站点上,引入误差修正模块的模型得到的预测曲线更趋近于实际值。从表 3可以看出,VMD-DA-EDLSTM-VEC模型的性能指标RMSE和MAE达到了0.179和0.121,对比未使用VMD分解预处理的VMD-DA-EDLSTM-EC分别提高了17.5和7.6个百分点,在VMD-DA-EDLSTM模型的基础上提高了20.2和9.7个百分点。

4.8 模型参数寻优

不同的VMD分解层数K会影响IMFs在频域上的分布情况[37],进而影响模型的预测结果。不同的滞后时间步长同样也影响模型的预测精度。本文使用VMD-DA-EDLSTM模型确定自相关阶数p和特征分解层数K。在不同自相关阶数和分解层数下,本文模型的预测结果对比如图 16所示。

Download:
图 16 在不同自相关阶数和分解层数下本文模型的预测结果对比 Fig. 16 Prediction results comparison of the proposed model under different autocorrelation orders and decomposition levels

自相关阶段p和特征分解层数K确定取值:

1)自相关阶数p,在确定了K值的基础上寻找p值,从图 8可以看出,自相关阶数从30左右完全进入置信区间;从图 16(a)可以看出,当自相关阶数p为30时具有相对最小的RMSE和MAE误差,与偏自相关系数图得出的结果一致。

2)特征分解层数K,假设p=30,贪心算法寻找风电功率、风速和空气温度的分解层数$ {K}_{p} $$ {K}_{s} $$ {K}_{t} $,在$ {K}_{p} $为15~25范围内寻找误差相对较低的$ {K}_{p} $,在此基础上确定$ {K}_{s} $,进一步确定$ {K}_{t} $取值。如图 16(b)图 16(c)图 16(d)所示,当$ {K}_{p} $$ {K}_{s} $$ {K}_{t} $取值分别为20、10、1时,误差最小。

4.9 预测精度与稳定性分析

本文利用VMD-LSTM、VMD-EDLSTM、VMD-AT-EDLSTM、VMD-DA-EDLSTM、VMD-DA-EDLSTM-VEC这5种模型在BOV站点上分别进行20组预测实验,并对实验结果的误差指标MAE、RMSE进行对比,结果如图 17所示。

Download:
图 17 不同模型的预测值对比 Fig. 17 Prediction values comparison among different models

图 17可以看出,增加解码层注意力机制的VMD-AT-EDLSTM的平均预测误差MAE为0.14,RMSE为0.52,普遍优于VMD-LSTM和VMD-EDLSTM,而增加编码层注意力机制的VMD-DA-EDLSTM的平均误差MAE为0.27,RMSE为0.38,优于单注意力机制模型,使用误差修正模块后模型的预测误差降低到MAE为0.06,RMSE为0.17,同时模型性能也更加稳定。

综合上述对比实验数据,本文得到如下结论:

1)常规预测模型:ARMA模型能够预测风电功率的主要趋势,但是在出现突发峰值时准确度较低;而SVR和LSTM单个模型在预测风电功率时存在滞后现象,难以准确地预测下一时刻风电功率。

2)互信息特征选择的作用:对于多维特征时间序列,通过互信息选择与目标序列相关性较强的特征序列,从而减弱冗余特征和不相关特征对预测模型产生的干扰。

3)信号分解的作用:从图 12可以看出,VMD分解可以提取复杂性强、不平稳信号的不同频域特征,解决LSTM模型存在预测滞后的问题,提高模型的预测精度。

4)VMD-DA-EDLSTM模型:提升模型在风电等数据急剧变化时的决策能力;能更加准确地预测风电功率出现峰值或低谷的情况;用于编码层输入和解码层隐藏状态的双阶段注意力机制,以选择关键信息,通过第一阶段注意力关注重要的特征维度,同时第二阶段注意力关注长期时序中的重要时刻,从而把握长期时序依赖关系;选取重要特征因子,解决编解码模型随着输入序列长度增加时性能变差的问题,进一步提高模型性能。

5)误差修正模块的效果:使用信号预处理的误差修正机制能够进一步提高预测精度,VMD算法解决了误差序列存在不平稳、复杂性强等问题,实现了对误差序列很好的特征提取,从而进一步提高模型的预测性能。

5 结束语

本文提出一种由信号分解、双阶段注意力机制、误差修正策略和深度学习算法组合的新型短期风电功率预测模型。通过互信息计算多维特征序列与风电功率之间的互信息量,排序后选择相关特征用于后续模型训练与预测,利用变分模态分解对多维特征序列进行分解。在此基础上,采用基于双阶段注意力机制、编解码架构的长短时记忆神经网络模型和误差修正模块进行风电功率预测,得到最终预测结果。实验结果表明,本文提出组合模型具有较优的预测精度和较强的预测稳定性,为利用深度学习探索时间序列的预测分析提供研究思路。后续将结合编解码模型的多步预测优势进行多步风电功率的预测,进一步提高风能的利用效率。

参考文献
[1]
JUNG C, TAUBERT D, SCHINDLER D. The temporal variability of global wind energy-Long-term trends and inter-annual variability[J]. Energy Conversion and Management, 2019, 188: 462-472. DOI:10.1016/j.enconman.2019.03.072
[2]
ZHANG Y C, LE J, LIAO X B, et al. A novel combination forecasting model for wind power integrating least square support vector machine, deep belief network, singular spectrum analysis and locality-sensitive hashing[J]. Energy, 2019, 168: 558-572.
[3]
马苗苗, 邵黎阳, 刘向杰. 分布式预测控制在微电网协调控制中的应用[J]. 吉林大学学报(工学版), 2020, 50(6): 2258-2265.
MA M M, SHAO L Y, LIU X J. Application of distributed predictive control in coordinated control of microgrid[J]. Journal of Jilin University (Engineering and Technology Edition), 2020, 50(6): 2258-2265. (in Chinese)
[4]
TASCIKARAOGLU A, UZUNOGLU M. A review of combined approaches for prediction of short-term wind speed and power[J]. Renewable and Sustainable Energy Reviews, 2014, 34: 243-254. DOI:10.1016/j.rser.2014.03.033
[5]
LAHOUAR A, SLAMA J B H. Hour-ahead wind power forecast based on random forests[J]. Renewable Energy, 2017, 109: 529-541. DOI:10.1016/j.renene.2017.03.064
[6]
AMBACH D, SCHMID W. A new high-dimensional time series approach for wind speed, wind direction and air pressure forecasting[J]. Energy, 2017, 135: 833-850. DOI:10.1016/j.energy.2017.06.137
[7]
HU Y L, CHEN L. A nonlinear hybrid wind speed forecasting model using LSTM network, hysteretic ELM and differential evolution algorithm[J]. Energy Conversion and Management, 2018, 173: 123-142. DOI:10.1016/j.enconman.2018.07.070
[8]
ZIEL F, CROONENBROECK C, AMBACH D. Forecasting wind power-modeling periodic and non-linear effects under conditional heteroscedasticity[J]. Applied Energy, 2016, 177: 285-297. DOI:10.1016/j.apenergy.2016.05.111
[9]
MANOBEL B, SEHNKE F, LAZZÚS J A, et al. Wind turbine power curve modeling based on Gaussian processes and artificial neural networks[J]. Renewable Energy, 2018, 125: 1015-1020. DOI:10.1016/j.renene.2018.02.081
[10]
LAMSAL D, SREERAM V, MISHRA Y, et al. Achieving a minimum power fluctuation rate in wind and photovoltaic output power using discrete Kalman filter based on weighted average approach[J]. IET Renewable Power Generation, 2018, 12(6): 633-638. DOI:10.1049/iet-rpg.2017.0346
[11]
KOO J, HAN G D, CHOI H J, et al. Wind-speed prediction and analysis based on geological and distance variables using an artificial neural network: a case study in South Korea[J]. Energy, 2015, 93: 1296-1302. DOI:10.1016/j.energy.2015.10.026
[12]
ZHANG C, ZHOU J Z, LI C S, et al. A compound structure of ELM based on feature selection and parameter optimization using hybrid backtracking search algorithm for wind speed forecasting[J]. Energy Conversion and Management, 2017, 143: 360-376. DOI:10.1016/j.enconman.2017.04.007
[13]
BARMAN M, DEV CHOUDHURY N B, SUTRADHAR S. A regional hybrid GOA-SVM model based on similar day approach for short-term load forecasting in Assam, India[J]. Energy, 2018, 145: 710-720.
[14]
ZHOU M, WANG B, GUO S D, et al. Multi-objective prediction intervals for wind power forecast based on deep neural networks[J]. Information Sciences, 2021, 550: 207-220.
[15]
SADAEI H J, DE LIMA E SILVA P C, GUIMARÃES F G, et al. Short-term load forecasting by using a combined method of convolutional neural networks and fuzzy time series[J]. Energy, 2019, 175: 365-377.
[16]
KHODAYAR M, KAYNAK O, KHODAYAR M E. Rough deep neural architecture for short-term wind speed forecasting[J]. IEEE Transactions on Industrial Informatics, 2017, 13(6): 2770-2779.
[17]
WANG K J, QI X X, LIU H D, et al. Deep belief network based k-means cluster approach for short-term wind power forecasting[J]. Energy, 2018, 165: 840-852.
[18]
CHOI J, LEE S. Short-term wind power forecast using hourly LSTM technique[J]. The Transactions of the Korean Institute of Electrical Engineers, 2020, 69(6): 759-764.
[19]
WANG J Z, HENG J N, XIAO L Y, et al. Research and application of a combined model based on multi-objective optimization for multi-step ahead wind speed forecasting[J]. Energy, 2017, 125: 591-613.
[20]
LI S, WANG P, GOEL L. Wind power forecasting using neural network ensembles with feature selection[J]. IEEE Transactions on Sustainable Energy, 2015, 6(4): 1447-1456.
[21]
LEE D, BALDICK R. Short-term wind power ensemble prediction based on Gaussian processes and neural networks[J]. IEEE Transactions on Smart Grid, 2014, 5(1): 501-510.
[22]
WANG S X, ZHANG N, WU L, et al. Wind speed forecasting based on the hybrid ensemble empirical mode decomposition and GA-BP neural network method[J]. Renewable Energy, 2016, 94: 629-636.
[23]
JIANG P, WANG Y, WANG J Z. Short-term wind speed forecasting using a hybrid model[J]. Energy, 2017, 119: 561-577.
[24]
SHAHID F, ZAMEER A, MUNEEB M. A novel genetic LSTM model for wind power forecast[J]. Energy, 2021, 223: 1-12.
[25]
CHEN G C, ZHANG X, GUAN Z W. The wind power forecast model based on improved EMD and SVM[J]. Applied Mechanics and Materials, 2014, 694: 150-154.
[26]
ZHU S L, LIAN X Y, WEI L, et al. PM2.5 forecasting using SVR with PSOGSA algorithm based on CEEMD, GRNN and GCA considering meteorological factors[J]. Atmospheric Environment, 2018, 183: 20-32.
[27]
BHASKAR K, SINGH S N. AWNN-assisted wind power forecasting using feed-forward neural network[J]. IEEE Transactions on Sustainable Energy, 2012, 3(2): 306-315.
[28]
张雪松, 朱想, 赵波, 等. 基于流形算法与RBF网络的超短期风速预测[J]. 计算机工程, 2017, 43(11): 317-321.
ZHANG X S, ZHU X, ZHAO B, et al. Ultra-short term wind speed forecast based on manifold algorithm and RBF network[J]. Computer Engineering, 2017, 43(11): 317-321. (in Chinese)
[29]
LIU H, MI X W, LI Y F. Smart multi-step deep learning model for wind speed forecasting based on variational mode decomposition, singular spectrum analysis, LSTM network and ELM[J]. Energy Conversion and Management, 2018, 159: 54-64.
[30]
HAN L, ZHANG R C, WANG X S, et al. Multi-step wind power forecast based on VMD-LSTM[J]. IET Renewable Power Generation, 2019, 13(10): 1690-1700.
[31]
WANG B, WANG J. Energy futures and spots prices forecasting by hybrid SW-GRU with EMD and error evaluation[J]. Energy Economics, 2020, 90: 104827.
[32]
CHO K, VAN MERRIENBOER B, GÜLÇEHRE Ç, et al. Learning phrase representations using RNN encoder-decoder for statistical machine translation[EB/OL]. [2021-06-10]. https://arxiv.org/pdf/1406.1078.pdf.
[33]
ZHANG Y, LI Y T, ZHANG G Y. Short-term wind power forecasting approach based on Seq2Seq model using NWP data[J]. Energy, 2020, 213: 1-11.
[34]
钱勇生, 邵洁, 季欣欣, 等. 基于LSTM-Attention网络的短期风电功率预测[J]. 电机与控制应用, 2019, 46(9): 95-100.
QIAN Y S, SHAO J, JI X X, et al. Short-term wind power forecasting based on LSTM-attention network[J]. Electric Machines & Control Application, 2019, 46(9): 95-100. (in Chinese)
[35]
LIU H W, SUN J G, LIU L, et al. Feature selection with dynamic mutual information[J]. Pattern Recognition, 2009, 42(7): 1330-1339.
[36]
KRASKOV A, STÖGBAUER H, GRASSBERGER P. Estimating mutual information[EB/OL]. [2021-06-10]. https://arxiv.org/pdf/cond-mat/0305641.pdf.
[37]
DRAGOMIRETSKIY K, ZOSSO D. Variational mode decomposition[J]. IEEE Transactions on Signal Processing, 2014, 62(3): 531-544.
[38]
BALDERAS D, PONCE P, MOLINA A. Convolutional long short term memory deep neural networks for image sequence prediction[J]. Expert Systems with Applications, 2019, 122: 152-162.
[39]
HOCHREITER S, SCHMIDHUBER J. Long short-term memory[J]. Neural Computation, 1997, 9(8): 1735-1780.
[40]
HÜBNER R, STEINHAUSER M, LEHLE C. A dual-stage two-phase model of selective attention[J]. Psychological Review, 2010, 117(3): 759-784.