基于改进和声搜索算法的回声状态网络优化研究

2023-03-02 02:54侯瑞华赵月爱
关键词:搜索算法储蓄权值

侯瑞华,赵月爱*

(太原师范学院 数学与统计学院,山西 晋中 030619)

0 引言

回声状态网络(Echo State Networks,ESN)[1]由Jaeger和Haas于2001年提出,算法的本质是将递归神经网络的隐含层替代为储蓄池(大规模随机稀疏网络)的计算,使得传统递归神经网络收敛速度慢、训练复杂度高等问题得到了解决,开辟了递归神经网络研究的新道路.目前回声状态网络已成功应用到动态模式分类、机器人控制、目标检测等多个领域.但ESN中输入权值和储备池权值是随机给定的,可能会导致储蓄池内神经元结点无效,而盲目地增加储蓄池规模来提高精度又会导致网络复杂,一些学者对此提出了相应的改进策略:Yang等[2]为了解决ESN在输出权值的迭代训练过程中其输入权值(Win)以及储备池权值(W)的随机性影响网络精度,提出了PESN网络模型,该模型由可反映输入变量到输出权值的多项式函数与回声状态网络结合所得,其中模型的储备池通过奇异值分解的方法进行构造,不仅保证了网络具有回声状态的特性,且提高了网络预测精度和速度;王磊等[3]针对网络的储备池结构过大的问题提出了一种修剪型模块化回声状态网络,利用灵敏度分析将灵敏度低的子模块进行删除;赵月爱等[4]则通过Xavier初始化的方法确定权值的选取范围,各层激活值的方差以及状态梯度的方差在传播过程中也可以保持一致.此外,一部分学者尝试利用启发式搜索算法对网络进行改进,并经过多次实验验证是一种十分有效的策略.

启发式搜索是通过指导搜索向最有希望的方向前进直至到达目标,往往很快可以得到一个搜索问题的最优解,一经提出便得到了广泛的应用,郭利进等[5]采用遗传算法优化了BP神经网络,郝可青等[6]采用鲸鱼算法解决了长短期记忆神经网络的参数选择问题,均取得良好效果.其中,和声搜索算法(HS)只需要较少的计算量即可得到有效的向量解,相较于其他启发式算法收敛速度更快且容易实现,因此得到广泛应用.算法的原理与处理优化问题的过程类似,式中的决策变量通过对自身值的不断调节,再进行迭代优化,最终达到全局最优.这些优点使其被广泛地应用到神经网络优化方面及多个研究领域中,例如无线传感器网络[7-8]、BP神经网络[9]、数据挖掘[10]、车间调度[11]等.

为此提出一种和声搜索算法优化ESN的方法,将回声状态网络的输入权值矩阵和储蓄池权值矩阵利用和声搜索算法进行搜索得到最优解,从而得到新的预测模型.实验分析表明,回声状态网络的Win和W经过和声搜索算法优化后可以使网络模型的平均精度得到很大的提升.

1 回声状态网络

回声状态网络主要由三层结构构成:输入层、储备池以及输出层,ESN网络结构[4]如图1所示.假设在t时刻输入层u(t)包含n×1维输入向量;储蓄池x(t)由d个稀疏连接的神经元组成,其接受两个方向的输入:一个来自于输入层,另外一个来自储蓄池前一个状态的输出x(t-1);输出层包含n×1维输出向量u(t),其中

图1 ESN网络结构

u(t)=[u1(t),u2(t),…,un(t)]T,

x(t)=[x1(t),x2(t),…,xd(t)]T,y(t)=[y1(t),y2(t),…,yn(t)]T.

储备池的状态更新方程和输出状态方程分别为x(t+1)=f(Winu(t+1)+W(t)),y(t+1)=fout(Wout(u(t+1),x(t+1))).

式中f为储层内部激活函数,一般为tanh函数,fout为输出激活函数,一般为线性函数;Win、W、Wout分别为输入权值矩阵、储备池矩阵和输出权值矩阵.Win和W用来决定网络内部单元的连接,且都在网络训练之前已随机确定并在之后的迭代训练过程中为固定的矩阵,再通过线性回归过程最小化得到Wout.

2 和声搜索算法及其改进

2.1 和声搜索算法

和声搜索(harmony search,HS) 算法是Geem[12]在2001年提出的一种智能搜索算法,该算法是模拟了乐师们对音乐的创作过程,将目标问题的解化成由不同的乐器产生的音调,进而不断调整,最终达到一个完美的和声状态,即该目标问题得到最优解.其搜索寻优的步骤如下:

Step1 确定要优化的目标函数及其约束条件,对算法中的参数初始化.和声搜索算法中包括4个参数:HMS(和声记忆库大小)、HMCR(和声记忆库的保留概率)、PAR(音调微调概率)、BW(音调微调带宽)以及T(最大创作次数).

Step2 初始化和声记忆库(HM).将随机产生的HMS个和声放入和声记忆库中,每个变量的取值范围为xi∈[Li,Ui],其中Li是变量下界,Ui为变量上界.HM表示如下:

Step3 生成新的和声.首先产生rand1,如果rand1

Step4 更新和声库.产生的新和声向量Xnew计算适应度函数值,如果优于原和声库的最差值,则进行替换更新,否则保持不变.

Step5 重复Step3和Step4,直至到达最大迭代步数T次.

2.2 改进的和声搜索算法

改进和声搜索算法一般有两种方法:一种是对算法本身进行参数调整,如设置自适应参数,或者通过调整算法步骤来改变和声记忆库的更新方式;另一种是与其他算法融合,结合其优点进行改进.对于前者的改进方法,有相关自适应算法IHS[13],GHS[14],SAHS[15]等,都是和声搜索算法根据个体及种群的信息以及在进化搜索过程中所收集到的信息对参数进行自适应调节,此方法均使和声搜索算法的准确性得到了极大的提升;对于后者,有包括差分和声搜索算法[16]、和声搜索算法与人工蜂群算法融合[17]、狩猎搜索算法与和声搜索算法结合[18]、混合鲸鱼-灰狼优化算法结合和声搜索技术[19]等,这类方法是通过结合各类算法优点对和声搜索算法进行了改进,准确性也得到了很大提升,但此方法会使算法模型变复杂,时间成本升高。为此提出为和声算法参数找到更为合适的自适应值调整方式来进行改进,使其可以更好地兼顾全局和局部搜索同时精度更高.具体改进步骤如下:

softsign激活函数相较于tanh曲线变换更为平缓,有更慢的下降导数,因此它可以更高效地学习,可进一步弥补此类双向软饱和“S”型激活函数所存在的梯度弥散问题.其函数图像如图2所示。

图2 softsign激活函数

2)对HMCR的调整.每次和声记忆库都是当前最好的目标函数值所组成的解矩阵,所以我们希望它尽可能的保留,但前期适量减小保留概率可以让和声库进行适当的更新,避免太早陷入局部搜索,所以利用了激活函数的负半轴进行调低和声保留概率;进行到中期后则可以通过逐步缓慢地提升保留概率,让其尽可能在当前解向量中进行搜索.因此对和声记忆库的保留概率调整为:

S_HMCR=HMCR+(1-HMCR)×f(2×i-T)/i).

此外考虑到HMCR为概率值,所以该式可使其值始终保持在[0,1]范围内,而激活函数内的式子则可使函数的变量值在零的左右两端均可取值.

3)对PAR的调整.在对原记忆库进行保留之后,不仅要尽可能的保留当前最优权值信息,同时又要尽可能增加和声记忆库的多样性.因此对音调微调概率调整为S_PAR=PAR-PAR×f(2×i-T)/i).

3 用改进HS算法优化回声状态网络

由于HS算法具有较强的全局寻优性和鲁棒性,而回声状态网络中的输入权值矩阵和储备池权值矩阵一经生成后续训练都不再发生变化,所以权值矩阵的选取十分重要,因此本文利用改进的HS算法来优化ESN中的权值.

其次利用ESN中的权重矩阵对和声记忆库初始化.先用rand值随机生成Win和W,构成初始和声记忆库[Win,W].之后利用改进的和声搜索算法生成新的和声库,带入ESN作为权值矩阵继续求解新的方差值msenew,与原权值矩阵产生的mse进行比较后若msenew

4 实验结果及分析

4.1 HS算法改进对比

由计算结果可得,改进的HS算法与原始HS算法的计算时间相比增加较少,但在适应度值f的升序上有显著地提升.其中改进的HS算法中适应度函数值在进行1000次迭代时可达到0.9416,与原始HS算法中适应度函数值0.8445相比有较明显的提高,提升了约11.5%左右.具体如表1所示.

表1 原始HS及改进HS不同迭代次数的适应度函数对比

图4和图5分别是原始HS算法和改进HS算法的适应度函数及其收敛性的曲线变化图,其中横坐标为迭代次数,最大为1000次.纵坐标上方为适应度函数值,下方为收敛值,容易观察到在原始HS算法中函数到达0.8附近开始收敛缓慢,难以继续寻找最优值,改进的HS算法则保持较快的速度持续收敛且得到更优的搜索值,证明改进方法优于原始算法.

图4 原始HS算法图

图5 改进的HS算法

4.2 时间序列预测结果对比

为了验证与和声搜索算法(HS)结合后的回声状态网络(ESN)的性能是否有所提升,将所有模型中的参数设置为相同数值,包括HS算法的参数以及ESN网络,HMCR=0.995,PAR=0.1,每个算法均单独运行10次后取均值.数据集选用MackeyGlass_17序列数据进行测试,MackeyGlass_17数据集是均匀分布在[-1,1]区间上的10 000组数据,其中2000组用于训练,挑选了500组进行测试.实验分为两部分:第一部分为储蓄池规模固定,在所有模型中均为500,比较各方法分别迭代50、100、150、200、250以及300次时的预测误差.第二部分为迭代次数固定选择为150次,再比较当ESN网络中储蓄池规模分别为200、400、600、800、1000层时各方法的预测误差.

计算结果表明,ESN单独运行时误差较大,这是由于每次权值矩阵均为随机取值,因此迭代次数不同时误差随机,无明显降低.使用Xavier初始化后的ESN在精度上有了一定的提升,当HS算法与ESN结合时,由于进行整个权值矩阵的搜索替换时间略长,但误差减少非常明显.为了得到更好的结果,将ESN与改进的HS算法结合,精度得到了进一步的提升,在迭代次数为150次,储蓄池规模为1000层时误差值降为1.1946×10-5.具体结果见表2,表3:

表2 MackeyGlass_17数据集不同迭代次数仿真结果

表3 MackeyGlass_17数据集不同储蓄池规模仿真结果

在图6中分别展示了单独ESN,XESN,原始HS_ESN和改进HS_ESN四种模型在150次迭代次数,600层储蓄池时真实值与预测值的对比图,可明显看出在原始HS_ESN算法和改进HS_ESN算法中预测值与真实值非常接近,而ESN和XESN单独预测结果中则相差较大.

图6 150次迭代600层真实值与预测值的对比图

图7展示了单独ESN,XESN,原始HS_ESN算法和改进HS_ESN算法在150次迭代次数,600层储蓄池时MSE的对比图,可明显看出,原始HS_ESN算法和改进HS_ESN算法迅速找到了较准确的权值并在其范围下进行搜索,寻求最优,且改进HS_ESN算法更快的找到了使误差最小的权值.而ESN单独预测结果中误差值始终很大.证明了结合方法及其改进方法的有效性.

图7 150次迭代600层MSE对比图

5 结论

本文针对传统的回声状态网络中输入权值矩阵以及储蓄池权值矩阵随机给出导致预测误差较大的问题,引入了和声搜索算法来使其进行有目的地更换,从而得到更好的初始权值使网络模型预测误差减少.并在此基础上引入了激活函数使和声搜索算法在搜索时能同时兼顾全局性和局部搜索,所以进一步提高了网络精度,让其预测数据的性能更好.今后将进行算法的简化,考虑预测多维数据以便于更广泛的应用.

猜你喜欢
搜索算法储蓄权值
一种融合时间权值和用户行为序列的电影推荐模型
改进的和声搜索算法求解凸二次规划及线性规划
CONTENTS
爱心储蓄
储蓄方法面面观
基于权值动量的RBM加速学习算法研究
试论民国时期外国在华有奖储蓄会
基于汽车接力的潮流转移快速搜索算法
基于逐维改进的自适应步长布谷鸟搜索算法
基于跳点搜索算法的网格地图寻路