基于Matlab的深度学习LSTM模型时间序列多步预测——单对单

       深度学习模型现在很火,应用的领域也是各方各面。在序列预测方面,当属LSTM模型的应用最广。我基于matlab编写了用LSTM模型实现多步预测时间序列的程序代码。序列数据是我随机生成的,如果有自己的数据,就可以自己简单改一下代码,读取txt或excel都可以。注意读取后的序列必须命名为行向量。代码最后还提供了误差分析部分,展示了绝对误差、MAE、RMSE、MAPE共4个误差指标,可供参考。代码基于matlab2021版编写,适用于2018版之后的所有版本。

       下面展示代码的部分内容。

基于Matlab的深度学习LSTM模型时间序列多步预测——单对单_第1张图片

         以下是模型训练过程,每次运行过程可能会存在差异。

基于Matlab的深度学习LSTM模型时间序列多步预测——单对单_第2张图片

        下面是程序运行结果。

基于Matlab的深度学习LSTM模型时间序列多步预测——单对单_第3张图片

        结果展示了单步预测(即1步预测)和24步预测的结果。数据为随机生成。若有自己的数据可以读取,然后自行调参。这里横坐标的意义为:<=0的表示历史数据,>0的表示为未来数据。

        下面详细分析了24步预测误差结果。包括绝对误差、MAE、RMSE、MAPE。总体来说结果还行,但是这个是因为序列本身具有一定规律。如果是类似股票数据的话,预测结果未必会这么好了。

基于Matlab的深度学习LSTM模型时间序列多步预测——单对单_第4张图片

       本文的程序代码只有一个m文件,下载链接见:基于Matlab的LSTM模型时间序列多步预测——单对单(非免费)。欢迎讨论~

你可能感兴趣的:(深度学习,Matlab,时间序列预测,matlab,lstm,深度学习)