0 引言
基于LSTM进行时间序列预测方法简单有效。LSTM的出现为时间序列预测提供了一个新的研究方向。然而,与大部分网络模型一样,LSTM效果受其超参数设置的影响。为此,本文采用爬行动物搜索Reptile Search Algorithm (RSA)优化LSTM网络超参数,建立RSA-LSTM模型 , 实例验证表明 , RSA-LSTM 模型的预测效果明显提高。
1 原理
1.1 LSTM原理
1.2 爬行动物搜索算法
爬行动物搜索Reptile Search Algorithm (RSA)是由Laith Abualigah等人于 2020年提出的一种新的nature-inspired meta-heuristic optimizer,其灵感启发来源于鳄鱼在自然界中的社会行为,主要包含两个主要机制:包围机制、和狩猎机制。对这两种机制建立数学模型即提出了RSA算法。RSA算法是一种基于种群的无梯度方法,可以用来解决带特定约束的复杂或简单的优化问题。具体理论请参考文献《Reptile Search Algorithm (RSA): A novel nature-inspired meta-heuristic optimizer》
1.3 SMA优化LSTM原理
以最小化LSTM网络的误差为适应度函数,RSA的作用就是尽量去找一组最优超参数使得网络误差最小化。本文中LSTM的主要几个超参数分别是:学习率lr,batchsize,训练次数K,两个隐含层的节点数L1和L2。
2 代码实现
基于MATLAB2020b,进行模型搭建与优化。数据结构为时间序列,我们采用前n个时刻的值为输入,n+1时刻 的值为输出这样来进行滚动建模。
2.1 LSTM结果
2.2 RSA-LSTM结果
由于是最小化网络误差,因此适应度曲线是一条下降的曲线。从图上可以看出,在第二个寻优的时候就找到了最优超参数组合。
下图为不同超参数的变化曲线,从图中可以看出,学batchsize,两个隐含层的节点数L1和L2,训练次数K,习率lr,分别为:13, 95,44, 23,0.044
利用上述最优参数建立的RSA-LSTM模型结果为:
2.3 方法对比
3 结论
从以上分析可以看出,优化后的LSTM具有更好的精度。