APP下载

基于时间模式注意力机制的GRU短期负荷预测

2023-11-01张鹏超闫群民

电力系统及其自动化学报 2023年10期
关键词:神经网络精度负荷

乔 石,王 磊,张鹏超,闫群民,余 帆

(1.陕西理工大学电气工程学院,汉中 723001;2.陕西理工大学工业自动化重点实验室,汉中 723001)

电力能源是当代最重要的能源之一,目前新能源发展迅速,电力需求急剧增加,电力能源在能源中所占的比例迅速上升,负荷数据所呈现的特征变化趋势也随之改变。为确保电力负荷供需达到动态平衡,保证电力系统安全平稳高效地运行,负荷预测起着至关重要的作用[1-2]。短期负荷预测[3]是研究未来几天内的用电负荷,准确的负荷预测不仅可以保证电力供需平衡关系,还能提升发电设备的利用率[4-5]。

针对短期负荷预测的研究目前主要分为两大类,即单一算法预测模型和混合算法预测模型。单一算法预测模型最初包括自回归[6]、指数回归法[7]和卡尔曼滤波法[8]等。这些方法模型结构简单,计算速度较快,常用于预测规律性强、随机性低的负荷时间序列。但对受多种外界因素影响的强随机性负荷序列,往往难以取得较高的预测精度[9]。

近年来,神经网络以其强大的多元非线性映射能力成为短期负荷预测的研究热点[10-11]。文献[12]采用门控循环单元GRU(gated recurrent unit)神经网络算法克服了循环神经网络[13]RNN(recurrent neural network)算法会出现一定几率的梯度消失或爆炸的问题,同时相比长短期记忆LSTM(long short-term memory)网络[14]算法,GRU结构简单,预测效率更高;文献[15]提出对输入进行卷积处理,提取体现数据动态变化的特征信息,将所提取的特征输入GRU 神经网络进行训练,同时采用传统注意力机制优化重要信息的权重分配,提升了复杂数据的预测精度。但传统的注意力机制更适用于单负荷时间序列,无法有效提取多元时间序列的复杂特征。文献[16]提出时间模式注意力TPA(temporal pattern attention)机制,使用卷积对隐藏层进行运算,可以提取多元时间序列之间的内因约束条件,同时对不同因素的不同时间步长进行合理的权重分配。因此本文采用TPA机制分析多元时间序列间的内在联系,提升对复杂度高的负荷时间序列的预测精度。

随着大数据时代的到来,负荷数据的发展也逐渐规模化和复杂化,为适应此特点,混合预测的方法被提出。混合预测方法常分为两类,一类方法为基于不同预测算法的混合方法[17],即采用两种或多种算法进行负荷预测,然后通过简单叠加或权重分配进行整合,利用不同算法在预测中的性能差异优势,弥补算法存在的部分缺点,提升预测精度。不同数据需要再次更换算法,对数据进行深入分析,但上述方法仅利用不同算法的简单差异,存在很大的随机性,预测精度的提升十分有限。另一类方法为基于负荷数据分解的预测方法[18],该方法首先对数据进行分解处理,将混合在数据中的复杂信息分离为包含不同信息的子分量,再选择适合分量提取特征的算法进行合理的预测。文献[19]使用经验模态分解EMD(empirical mode decomposition)将负荷时间序列分解为多个本征模函数,再使用神经网络算法进行分组预测,最后叠加得到预测结果;虽然预测精度得到了一定的提升,但由于EMD 算法存在模态混叠的缺点,使分解可能不存在意义,无法达到提升预测精度的作用。文献[20]使用集合经验模态分解EEMD(ensemble empirical mode decomposition)算法先对负荷进行分解,得到若干本征模函数;再分别采用GRU 和多元线性回归MLR(multiple linear regression)对不同频率的IMF 分量进行预测;最后叠加重构得到预测结果。采用EEMD分解算法通过添加辅助白噪声,解决了模态混叠现象,降低了预测误差,但由于添加了白噪声,使原始数据噪声增大,分解后重构误差增加;同时EEMD 算法流程使用多次循环添加白噪声,运算量成倍增加,降低了分解效率。

综上,本文提出基于自适应白噪声完整经验模态分解的时间模式注意力机制的门控循环单元CEEMDAN-TPA-GRU(complete ensemble empirical modal decomposition with adaptive white noise-gated recurrent unit neural network based on temporal pattern attention)短期负荷预测方法。首先,采用自适应白噪声的完整经验模态分解CEEMDAN(complete ensemble empirical mode decomposition with adaptive white noise)对负荷数据进行处理,降低数据复杂度,得到若干频率由高到低的本征模函数IMF(intrinsic mode function)。其次,通过最大互信息系数MIC(maximal information coefficient)进行相关性分析筛选特征,优化输入数据的特征维度。然后,构建基于时间模式注意力的门控循环单元

TPA-GRU(gated recurrent unit neural network based on temporal pattern attention)神经网络预测模型分别对子分量进行训练,利用TPA 机制提升GRU 神经网络对多元负荷时间序列的预测能力,再采用自回归AR(auto-regressive)优化线性特征提取能力。最后,通过实例分析,证明所提模型能有效提高短期负荷预测精度;并利用Umass 数据集和PJM区域用电数据集验证了该模型具有一定的普适性。

1 负荷模态分解与MIC 相关性分析

1.1 CEEMDAN 分解

电力负荷数据在受到天气、季节和用户行为等多重因素影响下,表现出不明显的规律性。只对负荷数据进行预处理之后,输入神经网络算法或者机器学习算法进行负荷预测无法提取数据的全部特征,预测结果存在一定的局限性。CEEMDAN 分解可以将复杂的电力负荷时间序列分解为若干频率范围不同的IMF,有效降低了预测难度。CEEMDAN分解算法流程如图1所示。

图1 CEEMDAN 分解流程Fig.1 Flow chart of CEEMDAN

CEEMDAN 算法的优势在于无模态混叠现象,同时改进EEMD 算法流程,可使分解效率大幅提升;优化EEMD 算法白噪声添加机制,可使重构误差几乎为零。

1.2 MIC 相关性分析

为了精确预测未来的负荷变化规律就必须考虑外部因素对负荷变化的影响,但由于多种因素并非全部对提升预测模型性能有所帮助,因此必须优化输入特征维度,删除冗余特征,提升输入数据的质量。

MIC 相关性分析可有效计算两个变量之间的关联程度。MIC具有普适性和公平性,普适性是指在MIC中可以探索数据之间更加复杂的关联性;公平性是指不同噪声对数据之间的关联性影响较小。可以认为,电力负荷数据与影响负荷因素的数据之间的MIC值越大,该因素对电力负荷的影响越大,则可将其视为“优秀特征”,MIC 相关性分析的具体步骤如下。

步骤1定义影响负荷因素为A={ai} ,i=1,2,…,n,负荷为B={bj} ,j=1,2,…,m,其中,n、m分别为影响负荷的因素和负荷数据的数量。则互信息MI(mutual information)值fMI(A,B)的表达式为

式中:p(ai)、p(bj)分别为变量A和B的边际密度函数;p(ai,bj)为变量A和B的联合概率密度函数。

步骤2做一个网格记作G=(x,y),将数据集D={ai,bj} 中ai和bj的值分别匹配到坐标的x、y中,计算得到D在网格G的划分下最大MI值为

式中,fMI(D|G)为数据集在G下的MI值。

步骤3对于数据集D,将网格G上所有的MI值归一化至(0,1)区间内,归一化的表达式为

步骤4MIC 为归一化的最大MI 值,MIC 表达式为

式中,B(n)为数据集量的0.6次方。

2 负荷模态分解与MIC 相关性分析

2.1 TPA-GRU 神经网络

本文提出的TPA-GRU 预测模型,是将模态分解后的IMF 子分量通过GRU 神经网络提取数据中的长短期时间序列特征,并通过TPA机制提取重要信息,提升预测性能,最后加入AR优化模型线性特征提取能力,其结构如图2所示。

图2 短期负荷预测模型Fig.2 Short-term load prediction model

2.1.1 GRU 神经网络模块

预测模型的第1个模块为GRU神经网络,GRU是一种专门用于处理时间序列的神经网络,与LSTM相比有计算效率高,拓展性强的优点,其结构如图3所示。

图3 GRU 神经网络结构Fig.3 Structure of GRU neural unit

GRU神经网络内部计算可表示为

式中:⊙为矩阵相关元素对应相乘;σ为sigmoid函数;xt为输入;rt为遗忘门;ct为更新门;ht为隐藏层;Wxr、Whr、Wxu、Whu、Wxc和Whc分别为对应变量的权重;br、bu和bc分别为rt、ut和ct的偏置向量,RELU为Relu激活函数。

2.1.2 TPA 机制

典型的注意力机制能模仿人脑,它通过对已提出的特征进行加权处理来提取重要信息,广泛应用于时间序列处理和自然语言处理;典型的注意力机制选择与当前时间步骤相关的信息,适合时间序列中包含单一时间序列的任务。每个时间步骤中有多个变量,难以对影响目标的重要信息分配权重。由于在短期负荷预测中不仅包含电力负荷时间序列,还包括温度、天气等气候数据,多种气候数据与电力负荷时间序列组成了多元时间序列,使典型注意力机制对预测精度提升较小。此外,由于典型的注意力机制是对多个时间步骤信息进行平均,无法检测到对预测有用的时间模式。而TPA 机制通过卷积运算,实现对多元时间序列的内在联系的提取,其算法结构如图4所示。

图4 TPA 机制结构Fig.4 Structure of TPA mechanism

由图4 可知,输入数据通过GRU 进行处理后,得到时间序列的隐藏特征ht-w~ht,w为滤波器长度。定义H={ht-w,ht-w+1,…,ht-1} 为隐藏特征,利用一维卷积提取其中时间模式矩阵HC,C为滤波器。

利用卷积捕获可变的信号模式为

定义f为评估函数,选取sigmoid 函数作为权重计算的激活函数,则权重计算的结果可表示为

将αi和HC进行权重求和,得到注意力公式,即

将ht和vt线性映射相加后可得TPA-GRU模型的预测值yt-1+Δ为

式中:Wh'、Wh和Wv为矩阵参数权重;Δ为不同预测任务的预测时间尺度。

2.1.3 AR 模块

采用对线性识别能力较强的AR 模块,可以增强模型的线性提取能力,优化预测结果。

AR 模型是对数据本身变量进行回归运算,利用x1~xt-i来预测,其表达式为

式中:εi为常系数,i=1,2,…,p,p为数据量;βi为随机误差。

AR 模型预测结果ya与TPA-GRU 预测模型的结果yt-1+Δ,通过线性权重组合成复杂度高的子分量预测结果y1可表示为

式中,α、β为权重系数,且α+β=1。

2.2 参数设定

为了充分发挥预测模型的性能,提升预测精度,对TPA-GRU 神经网络进行结构参数优化尤为重要。针对本文实例分析数据,采用网格搜索法遍历搜索最优参数,最终选取包含两层隐藏层的GRU神经网络。设置隐藏层神经网络单元为128和96,输入层神经网络单元为128,dropout 值为0.2;卷积核尺寸为4,迭代次数为80;激活函数选择收敛速度快的Relu 函数;优化器选择计算高效、内存需求少的Adam优化器。其余参数通过网格遍历法搜索得到,具体参数设置见表1。

表1 TPA-GRU 模型参数设定Tab.1 Parameter setting for TPA-GRU model

2.3 模型步骤

基于CEEMDAN-TPA-GRU短期负荷预测方法流程如图5所示,具体步骤如下。

图5 预测流程Fig.5 Flow chart of prediction

步骤1将原始数据进行预处理。首先,将数据转化为等时间间隔排列,并通过线性插值法对缺失值进行填补;然后,采用箱盒图进行异常值检测,删除异常值并使用插值法进行填补;最后,标准化样本数据,消除量纲对数据的影响。

步骤2采用MIC相关系数分析负荷时间序列与气候因素及构建的日期特征等之间的相关性,选取MIC大的特征序列。

步骤3将样本数据中电力负荷时间序列进行CEEMDAN分解,得到若干IMF子分量,各子分量与MIC筛选结果组合构成输入向量。

步骤4搭建TPA-GRU负荷预测模型,并使用AR 模型优化线性特提取能力,将处理好的数据输入神经网络进行训练。

步骤5使用训练完成的网络在测试集样本上进行单日和多日预测,将预测的分量结果进行重构得到最后的预测结果。最终取20次预测结果的平均值。

2.4 评价指标

为保证能准确评价模型性能,本文采用两种评价指标,分别为均绝对百分比误差MAPE和均方根误差RMSE,其表达式分别为

3 实例分析

3.1 数据说明及数据预处理

实例分析的数据来源于Umass 公开数据集[21]。数据分为两部分,第1 部分为2015年公寓用电负荷数据,采样时间间隔为1 min;第2部分为2015年公寓所在地区天气数据,包括温度和天气等因素,采样时间间隔为1 h。本文采用2015年2月15日00:00—2015年4月30日24:00 共计75 d,即1 800 h用电负荷作为预测对象。

通过归一化消除量纲,使负荷预测模型能适应不同数据类型。采用归一化将数据压缩到[-1,1]之间,其归一化可表示为

式中:y*为消除量纲及缩放之后的数据;y为原始数据;ymin为数据中最小值;ymax为数据中最大值。

3.2 负荷模态分解及分析

样本负荷如图6所示。原始负荷数据包含大量的高频分量,同时还存在一定噪声,若直接采用未经处理的负荷数据进行预测,将增加预测模型的训练难度。

图6 原始负荷数据Fig.6 Data of raw load

将负荷数据使用CEEMDAN 分解,得到10 个频率范围由高到低的本征模函数如图7所示。由图7可以看出,各分量没有出现明显的模态混叠现象,且与原负荷相比数据复杂度明显降低。为验证CEEMDAN 分解所具有的优势,将其与EEMD分解算法进行重构误差对比与运算效率对比研究。

图7 CEEMDAN 分解结果Fig.7 Decomposition results of CEEMDAN

EEMD 算法虽通过白噪声添加克服模态混叠现象,但由于添加了白噪声,使原始数据中噪声更大,因此负荷分解后存在较大的噪声,增加了之后的预测误差。CEEMDAN算法的重构误差数量级为10-12,其中,部分点的重构误差几乎为0;而EEMD算法的重构误差数量级为100,远大于CEEMDAN分解误差。

由于EEMD 算法分解过程中多次使用了EMD算法,使分解次数成倍增加,降低了分解效率。在实验中,使用EEMD 对数据分解迭代次数为23 542次,CEEMDAN 分解迭代次数为4 520 次,故使用CEEMDAN算法极大地提高了分解效率。

3.3 MIC 相关性分析及对比

原始数据中包含11 个天气特征因素,全部特征如表2所示。

表2 原始数据特征Tab.2 Characteristics of raw data

采用MIC相关系数分析,筛选出其中相关性大于0.5 的特征作为输入的特征向量,可降低相关性低的特征对预测能力造成的反作用,提升预测精度。MIC 相关系数分解结果见表3,结果保留了温度、露点温度和体感温度。

表3 MIC 相关系数分析结果Tab.3 Analysis results of MIC correlation coefficient

为验证MIC 相关性分析对负荷预测精度的影响,选取MI系数、主成分分析法和未进行特征优化进行对比分析,预测模型全部选择本文所提TPAGRU预测模型,所得预测误差见表4。

表4 不同特征优化方法性能对比Tab.4 Comparison of performance among different feature optimization methods

由表4 可知,未进行特征优化,预测误差最大,表明存在冗余特征影响预测精度;使用MI 系数及皮尔逊相关系数分析的实验预测误差也高于MIC相关性分析的实验误差。这是因为MIC 相关性分析可以有效筛选出与负荷时间序列高度相关的特征,优化输入特征维度,减少冗余特征对预测误差的影响,提升预测的精度。

3.4 预测结果分析及对比实验研究

将输入特征优化后,结合CEEMDAN 分解得到的IMF 分量,输入到TPA-GRU 预测模型中进行负荷预测,预测结果与真实值对比如图8所示。

图8 CEEMDAN-TPA-GRU 预测结果Fig.8 Prediction result based on CEEMDAN-TPA-GRU

为进一步验证基于CEEMDAN-TPA-GRU短期负荷预测方法的优越性能,分别进行单一和混合预测模型对比分析。

单一预测模型为TPA-GRU、GRU-Attention、XGBoost及GRU预测模型。

各种混合预测模型如下:

(1)在使用EEMD 算法分解负荷时间序列后,输入TPA-GRU预测模型进行预测,记为ETG;

(2)使用小波分解WT(wavelet transform)负荷时间序列后,输入TPA-GRU预测模型进行预测,记为WTG;

(3)使用CEEMDAN 算法分解负荷时间序列后,输入GRU 和MRL 预测模型进行预测,记为CGM;

(4)使用EEMD 算法分解负荷后,输入GRU 和MLR预测模型进行预测,记为EGM。

在对比研究中采用控制变量法,对数据处理和特征优化采取相同方法。对不同组的同类算法,各自优化参数使模型效果达到最佳,其对比结果见表5和表6。

表5 单一模型预测结果Tab.5 Prediction results based on single models

表6 混合模型预测结果Tab.6 Prediction results based on hybrid models

由表5、6 可以看出,本文所提的CEEMDANTPA-GRU 模型预测精度最优;与单一预测模型TPA-GRU、GRU-Attention、GRU 及XGBoost 预测模型相比较,单步预测精度分别提升0.545%、1.619%、2.690%和1.001%;结果说明CEEMDAN 通过将复杂时间序列分解为多个复杂度依次降低的IMF 分量,降低了预测难度,提升了负荷预测的精度。由于预测误差存在一定程度的累计效应,使各模型随着预测步长的增加误差逐渐变大。由表5、6也可以看出,随着步长的增加本文所提预测模型可以合理地预测短期负荷变化趋势,在预测尺度上存在一定的鲁棒性。

由表5 可以看出,与传统Attention 机制相比,TPA 机制有效提高了预测精度;由表6 可以看出,CEEMDAN算法优化了EEMD算法重构误差大的缺点,将处理的数据经过预测模型训练后误差明显小于EEMD 处理后的数据,同时与WT 相比预测精度也有一定优势。

3.5 模块拆分研究

为使模型中各模块对整体具有贡献,本节将模块拆分进行研究,依次删除模型的部分模块,并判断其预测能力。为消除不同参数对预测性能的影响,采用同一参数进行研究。模块拆分实验分为以下4组:

(1)不包含TPA 机制模块的预测模型,记为TPA-GRU/without-TPA;

(2)不包含AR 优化模块的预测模型,记为TPA-GRU/without-AR;

(3)不包含TPA 机制模块和AR 优化模块的预测模型,记为TPA-GRU/without-TPA&AR

实验结果见表7,由表7及模型分析可以得出,①移除TPA 机制模块,预测误差明显增加,表明TPA 机制使GRU 神经网络在复杂数据中的特征权重分配能力有效提高,进而预测精度得到了提升;②移除AR 优化模块,预测误差也有一定增加,表明AR 模型增强了模型的部分线性特征提取能力;③全部移除TPA 机制模块和AR 优化模块,预测误差增大最多,表明两模块共同提升了负荷预测精度。

3.6 不同数据集下的预测结果分析

为了验证本文所提模型在不同数据集上的负荷预测性能,选取另一组Umass 数据集和美国PJM区域集用电数据进行实验,预测结果见表8。

表8 两个数据集上各短期负荷预测算法误差对比Tab.8 Comparison of errors among short-term load prediction algorithms on two data sets

由表8 可知,本文所提出的基于CEEMDANTPA-GRU短期负荷预测方法在Umass 和PJM 数据集上均取得最佳预测精度。表明此方法可以应用于不同场景,具有一定的普适性。此外,负荷预测的精度与数据集样本有十分紧密的关系。与Umass数据集相比,本文算法在PJM数据集上的预测精度更具有优势;这是因为Umass数据集为居民用电负荷,PJM 数据集为区域用电负荷,居民用电属于低压侧,用电负荷波动性远远大于区域集用电负荷。同时PJM 区域集数据与气候、市场之间相关性更高,因此预测精度明显提升。

4 结论

本文针对负荷数据随机性强的特征,提出一种基于CEEMDAN-TPA-GRU短期负荷预测方法,通过实例分析得出以下结论。

(1)本文数据分解采用CEEMDAN 算法,有效改善其它模态分解算法分解误差大和分解速度低的缺点,提高了短期负荷预测的效率与精度。

(2)采用MIC相关性分析能够有效分析电力负荷序列与影响负荷因素之间的相关性,筛选出高相关性特征,优化预测模型的输入特征维度,相比未采用MIC算法有效提高了预测性能。

(3)TPA-GRU神经网络预测模型相比其他模型具有更强的数据挖掘能力,有效提升预测精度。

(4)基于CEEMDAN-TPA-GRU短期负荷预测方法在另一组Umass 数据集和PJM 区域数据集下与其它算法相比仍具有最高的预测精度,验证了该方法具有一定的普适性。

(5)未来可结合负荷数据平台,构建实时负荷预测,强化动态负荷预测能力。

猜你喜欢

神经网络精度负荷
神经网络抑制无线通信干扰探究
基于DSPIC33F微处理器的采集精度的提高
防止过负荷时距离保护误动新判据
主动降负荷才是正经事
GPS/GLONASS/BDS组合PPP精度分析
基于神经网络的拉矫机控制模型建立
复数神经网络在基于WiFi的室内LBS应用
负荷跟踪运行下反应堆一回路控制系统仿真与验证
基于支持向量机回归和RBF神经网络的PID整定
改进的Goldschmidt双精度浮点除法器