引入注意力机制的CNN和LSTM复合风电预测模型

李静茹,姚方

(山西大学 电力与建筑学院,山西 太原 030013)

能源是社会发展及经济增长的主要驱动力,传统的化石能源不再符合绿色发展的需要,因此可再生能源不断兴起。风能作为近年来发展最快的能源之一,已在世界范围内得到了广泛关注。但是,由于自然因素的影响,风力发电的随机性和波动性较为明显[1]。当大量风电注入电网时,将会打破功率平衡,给电力系统带来了诸多挑战,因此有必要对风电的输出功率进行准确预测。

风电功率预测包括物理方法和统计方法[2]。物理方法建模复杂,存在成本较高的问题[3],而统计方法依赖于大量的历史数据,主要包括灰色预测法[4]和自回归移动平均[5]等时序预测法和人工神经网络[6]等人工智能法。当前的预测模型正在由机器学习向深度学习转移[7],长短期记忆网络(long short-term memory,LSTM)作为一种常见的深度学习算法已被应用到风电功率预测中[8],它善于处理长序列数据,能够自动学习到输入数据之间的关系。文献[9]首先用Pearson相关系数选择出对风电功率影响较大的因素作为模型的输入,然后利用LSTM网络对多变量时间序列建模,有效地减小了模型的复杂度,提高了预测准确度。文献[10]提出了一种利用LSTM网络滚动预测的方法,每15 min更新一次数据集,实现网络的滚动更新,有效地提高了预测精度。

本文提出了一种引入注意力机制的卷积神经网络(convolutional neural network,CNN)和LSTM复合预测模型。首先应用CNN对输入数据进行卷积处理,增强输入与输出之间的相关性;
然后通过LSTM网络对时序数据进行预测,并将注意力机制添加到LSTM输出中;
最后将训练好的网络预测风电出力。试验结果表明本文所提方法可以有效地提高预测精度。

1.1 卷积神经网络

卷积神经网络[11]是一种包含卷积处理的深度神经网络,它的主要特点是参数共享、稀疏连接和池化操作,其独特的结构可以减少深层网络所占的内存,并减少过拟合的风险。卷积神经网络具有提取特征的能力,其中一维卷积作为一种神经网络体系结构,它可以从时间序列数据中提取特征输入。

CNN的结构主要包括两部分,第一部分是卷积层,在这一层中,卷积核与前一层的局部区域连接并进行卷积计算,提取前一层的主要特征,计算公式如式(1)所示。

(1)

第二部分是池化层,为了减少网络模型的参数和复杂度,可以使用池化操作进行降采样,在这里选择最大池化,计算公式如式(2)所示。

(2)

1.2 长短期记忆网络

长短期记忆网络由循环神经网络(recurrent neural network, RNN)演变而来,RNN显著的特点是能够利用历史信息处理序列问题,一个典型的RNN结构具有输入层、隐藏层和输出层。输入层负责接收向量,然后将其传递给隐藏层,最后在输出层输出结果。但RNN网络无法很好地处理长距离依赖问题,因此有学者对它作出了改进,产生了长短期记忆网络,其单元块的结构如图1所示。

图1 LSTM单元块

图1中:ht-1、Ct-1为上一时刻的输出和单元状态;
Xt为当前时刻的输入;
ht、Ct为当前时刻的输出和单元状态。

除了循环神经网络的隐藏层状态外,它还有一个额外的状态C来处理记忆单元的长期依赖关系,LSTM使用门机制来控制单元状态C,包括输入门i、遗忘门f和输出门o,LSTM的单元状态与三个门的关系用式(3)~式(8)表示。

it=σ(Wiht-1+Uixt+bi)

(3)

ft=σ(Wfht-1+Ufxt+bf)

(4)

ot=σ(Woht-1+Uoxt+bo)

(5)

(6)

(7)

ht=ot×tanh(Ct)

(8)

式中:W为神经元的权重;
b为神经元的偏差;
σ为sigmoid函数。

LSTM通过其独特的门机制能够保留数据的重要特征,确保了梯度长时间不会消失,因此它有着很强的时序数据学习能力和信息选择能力,能够对时间序列数据做出准确的预测。

1.3 注意力模型

近年来,注意力模型(attention model,AM)被广泛应用在深度学习任务中,当大量信息输入到神经网络时,不同输入对输出的影响不同,为了提高神经网络的计算效率,将更多的计算能力分配给重要的输入信息,引入了注意力机制,其结构如图2所示。

图2 注意力模型

注意力机制的计算可分为两步:一是为所有的输入信息计算相应的权重系数;
二是根据权重系数计算输入信息的加权平均。计算公式如式(9)、式(10)所示。

(9)

(10)

式中:xi为输入向量;
q为查询向量;
s(x)为得分函数,得分的依据是xi与q的相关程度;
ai为注意力分布;
ε为输入值和注意力分布的加权平均值。

2.1 数据预处理

网络模型在进行训练之前,需要预处理原始数据。具体方法如下。

(1) 数据归一化:原始数据在输入网络之前需进行归一化处理,本文选择min-max标准化将结果映射到0~1之间,计算公式如式(11)所示。

(11)

(2) 数据分类处理:按时间把原始数据分为训练集和测试集,其中80%用于训练,剩下20%用于测试。

2.2 风电功率预测模型设计

采用CNN_LSTM_AM模型进行风电预测,模型结构如图3所示。首先将经过预处理的数据输入网络,通过CNN对序列数据进行特征提取,经卷积、池化处理后,通过一个全连接(FC)层转换为一维数据,输入LSTM网络中,其中卷积核的大小为1,激活函数采用relu函数。LSTM层用于处理长序列数据,本文选择的LSTM结构为2个隐层,隐层的单元数目为64,激活函数选择relu,并在LSTM网络后引入Attention模块,计算权重,最终通过全

连接层输出结果。Attention模块可以自动地学习和判断不同特征的重要程度,并根据重要性关系来分配权重,增强了LSTM模型对长输入序列的预测能力,有效地提高了预测的精度。

2.3 预测效果评估

为了验证本文所提模型的准确性,选择均方根误差(eRMSE)与平均绝对误差(eMAE)作为模型的误差评价指标,计算公式如下所示。

(12)

(13)

本文选取某地区2019年7月1日到2019年9月30日的实测风力发电数据进行试验验证,共计8 832个数据点,采样时间间隔为15 min。模型采用adam优化器,训练时损失函数选择eMAE函数,批次大小为256,迭代次数为200,进行15 min时间尺度的预测,图4为预测结果,图中横轴为采样点数,纵轴为风电功率数据归一值。

图4 CNN_LSTM_AM模型的预测结果

为了进一步评估本文模型的预测能力,在相同的历史数据下采用CNN和CNN_LSTM进行比较,图5为预测对比图,横轴选取了测试集中的100个数据点。可以看出,CNN_LSTM_AM模型的

图5 预测对比图

预测结果与真实值更加接近,相较于其他深度学习模型预测效果更好。

表1为不同模型进行15 min预测的误差值。从表1可以看出,本文模型的预测误差低于其他模型,预测性能更加优越,可以对未来数据进行精确的超短期预测。

表1 不同模型预测误差 单位:
%

本文在大量研究的基础上,提出了一种基于注意力机制的CNN和LSTM复合风电预测模型,该框架可以为后续的风能预报工作提供有效的帮助。在理论知识的基础上,进行了详细的试验。结果表明,基于CNN_LSTM_AM的方法比CNN_LSTM、CNN方法具有更好的预测性能,该模型可以明显地提高风电预测的精度。

猜你喜欢风电注意力卷积让注意力“飞”回来小雪花·成长指南(2022年1期)2022-04-09基于3D-Winograd的快速卷积算法设计及FPGA实现北京航空航天大学学报(2021年9期)2021-11-02卷积神经网络的分析与设计电子制作(2019年13期)2020-01-14从滤波器理解卷积电子制作(2019年11期)2019-07-04海上风电跃进隐忧能源(2018年6期)2018-08-01分散式风电破“局”能源(2018年6期)2018-08-01基于傅里叶域卷积表示的目标跟踪算法北京航空航天大学学报(2018年1期)2018-04-20风电:弃风限电明显改善 海上风电如火如荼能源(2018年8期)2018-01-15“扬眼”APP:让注意力“变现”传媒评论(2017年3期)2017-06-13A Beautiful Way Of Looking At Things第二课堂(课外活动版)(2016年2期)2016-10-21