一 Elman神经网络介绍
Elman神经网络(Elman-NN)于1990年由Jeffrey. L. Elman首次提出,是一种典型的动态递归型网络,该网络在BP神经网络的原有基本结构上增加了一个相当于延时算子的承接层,使网络具备了记忆功能,能适应动态变化的数据输入。传统Elman神经网络的结构一般分为4层,包括输入层、隐含层、承接层和输出层。输入层和输出层分别仅起到信号传输和线性加权的作用;隐含层的传递函数通常情况下采用Sigmoid函数,即
承接层的作用是用来存储隐含层前一个时刻的输出值,然后再在下一个时刻传递给隐含层的节点,形成一个存在于系统内部的状态反馈。Elman神经网络的结结构如图1所示:
图1.1 Elman神经网络结构图
Elman神经网络的非线性状态表达式可描述为:
其中,输入层、隐含层、输出层的节点个数分别为:r、n、m,承接层的节点个数与隐含层的节点个数相同也为n,k表示第k个时刻,、
和
分别表示隐含层、承接层和输出层在k时刻的输出;u表示输入层的输入向量;w1和w2分别表示承接层和输入层到隐含层的连接权重,w3表示隐含层到输出层的连接权重;和分别表示输出层传递函数与隐含层激励函数。
Elman神经网络的预测流程图如图2所示。
图 1.2 Elman神经网络的预测流程图
Elman神经网络的预测流程是:首先对各个权值进行初始化处理,然后对数据进行归一化处理之后计算神经元,分别计算输入层、隐含层、输出层,在隐含层神经元输出后,反馈值经承接层计算后重新返回隐含层,之后计算误差并进行权值替换,之后判断训练结束与否,若否则返回数据归一化前,若训练完成,则数据测试完成预测结束。
Elman神经网络的预测流程是由构建合适的Elman神经网络开始的,然后对各个权值进行初始化处理,接着对数据进行归一化处理,之后进行神经元的计算。其主要特色在于其具有一个特殊的承接层,这就使得其具有一个返回结构单元,最后经过多次计算处理训练,达到预测的目的[19]。
二 Elman神经网络预测
Elman神经网络的预测流程是:首先对各个权值进行初始化处理,然后对数据进行归一化处理之后计算神经元,分别计算输入层、隐含层、输出层,在隐含层神经元输出后,反馈值经承接层计算后重新返回隐含层,之后计算误差并进行权值替换,之后判断训练结束与否,若否则返回数据归一化前,若训练完成,则数据测试完成预测结束。
Elman神经网络的预测流程是由构建合适的Elman神经网络开始的,然后对各个权值进行初始化处理,接着对数据进行归一化处理,之后进行神经元的计算。其主要特色在于其具有一个特殊的承接层,这就使得其具有一个返回结构单元,最后经过多次计算处理训练,达到预测的目的。
图 2.1 Elman神经网络的建立
图 2.2 4月30日的预测负荷曲线与实际负荷曲线(Elman神经网络)
表2.1 4月30日的负荷预测结果误差(Elman)
项目 | 数值 |
最大误差 | 0.122546198797098 |
平均误差 | 0.051563908370268 |
准确率 | 0.948436091629732 |
参考文献
[1]谢庆国, 万淑芸, 赵金.一种Elman回归网络的设计方法[J]. 华中科技大学学报(自然科学版), 2002, 030(003):22-24.
[2]国家电网,中电投. 国民经济行业用电分类调整方案.2004,6.
[3]叶锋, 何桦, 顾全,等. EMS中负荷预测不良数据的辨识与修正[J]. 电力系统自动化, 2006(15):89-92.
[4]田增尧, 张明理, 赵瑞. 短期电力负荷预报中异常负荷数据的识别和修正[J]. 吉林电力, 2004, 000(006):21-23.
[5]刘荣. 基于Elman神经网络的短期负荷预测[D]. 浙江大学, 2013.