当前位置:首页 期刊杂志

基于改进LSTMs模型的区域中长期气温预测方法研究

时间:2024-06-19

杨 乐,马 驰,胡 辉,黄 冬

(1.辽宁科技大学 计算机与软件工程学院,辽宁 鞍山114044;2.惠州学院 计算机科学与工程学院,广东 惠州 516007;3.深圳亿达盛投资管理有限公司,广东 深圳 518000)

国内外学者对气温预测进行了大量的研究,其中包括:使用决策树方法对气温的预测[4]、通过统计方法进行气温预测[5]、基于支持向量回归预测气温[6]、通过构建神经网络方法[7-8]对气温预测的研究.在这几类方法中的前三种模型都是将当前的输入通过普通的数学映射函数或者算法将最终的预测输出.这其中就忽视了很重要的概念——时序依赖性.气象数据对时序的依赖性很强,所以导致很多方法无法对中长期的气温进行精准的预测.而基于神经网络的预测方法虽然可以对中长期气温进行预测,但针对于长期的气温预测,这些模型的预测精度还不能令人满意.

通过对现有的中长期气温预测方法对比后发现,由于中长期时间天气变化的复杂性,导致中长期气温对时序依赖性和其他气象要素之间的关系也错综复杂,这就给中长期的气温预测带来一定的难度.在现有的预测方法中基于深度学习的LSTM模型预测方法的预测精确度相对较高.

中长期气温预测的难度远大于短期气温预测,结合残差网络优势的神经网络——深度LSTMs网络模型,该论文提出一种基于BiLSTM(Bi-directional Long Short-Term Memory)和LSTM(Long Short-Term Memory).该模型能很好地对中长期气温进行预测,其预测的准确率也较其他模型更高.

1 LSTM模型和BiLSTM模型

深度学习(Deep Leaning)是一种机器学习方法,它作为人工神经网络可以根据学习过程中的示例数据来独立地构建出基本规则.深度学习模型通过组合低层特征形成更抽象的高层数据的特征表示[9].深度学习的方法对图像识别、医学指标预测和股票预测等领域起到了很大的推动作用.

总体而言,温度变化预测的过程是:首先,利用传统的统计方法对气象数据进行处理,得到温度的主要影响因素;然后,利用传统的预测模型对温度进行预测,但这种预测方法的缺点是不能使用大量的数据,因此很难挖掘更多的温度预测信息.这里采用主成分分析法,归纳出影响气温的主要因素:2 min平均风速、10 min平均风速、相对湿度、气压、露点温度、水汽压、蒸发、地温、最低温度、最高温度.将这些因素与温度按一定的时间顺序排列,然后利用基于时间序列的预测模型对区域中长期温度进行预测.

1.1 LSTM模型

为解决长时间的序列预测问题,在“深度学习”方面大部分算法都是在长短期记忆网络LSTM算法的基础上进行改进的.该模型的提出就是为了解决在数据预测方面对时间序列依赖性较长和循环神经网络RNN(Recurrent Neural Network)模型梯度消失的问题.LSTM的模型结构如图1所示,图中的A、B分别表示当前t时刻的前一时刻、下一时刻的气温预测过程,这种预测过程与当前t时刻预测过程相同.

图1 LSTM模型结构图

对整个LSTM工作流程的数学抽象如下式:

在运用习题变式的教学过程中,教师要引导学生主动的参与到变式当中来,而不是仅仅让教师变学生做.教师应该鼓励学生充分的拓展思维,将自己能想到的知识点加入到原题中,让学生自己也参与变式.这样学生才能从“改变”中发现“不变”的本质;相反,也可以从动态的变化中抓住不变的规律.

其中,下标t、t-1与t+ 1分别表示当前时刻、前一时刻和下一时刻(例如:ft表示当前时刻的遗忘门,ft-1表示前一时刻的遗忘门,ft+1表示下一时刻的遗忘门).LSTM模型中时刻输入预测气温的特征向量xt,然后xt通过遗忘门计算后决定上一时刻的单元状态Ct-1有多少信息保留到当前时刻Ct中.同时,网络模型的输入门根据当前输入的气温预测的特征向量与当前输入的状态共同进行计算来决定当前时刻网络的输入xt有多少信息要保存到单元状态Ct中.最后网络模型通过输出门计算来决定控制单元Ct中有多少信息输出到LSTM的当前输出值ht中.因为控制单元C中保留了长时间的气温预测相关的历史信息,从而使LSTM模型能够使用历史气温的特征向量信息对未来的气温进行预测.

1.2 BiLSTM模型

气温数据的变化不仅与过去气象要素的变化有关,而且也与未来某一段时间内气象要素的变化有关,因此,使用RNNs预测气温的准确性会有误差.BiLSTM网络模型可以从过去和将来一段时间的数据中获取有用的信息,从而使预测数据更为精确[10].为了尽可能减少气温真实值与预测值之间的误差,该论文在建立网络模型时结合了双向长短期记忆网络BiLSTM.

图2是BiLSTM网络模型结构图,图中t- 1、t、t+1的分别表示当前时刻的前一时刻、当前时刻、当前时刻的下一时刻;其中ft表示模型前向计算层在传播过程中的记忆单元状态的变化;bt表示后向计算层在传播过程中的记忆单元的状态变化信息;yt表示模型计算的最终输出结果.

图2 BiLSTM网络模型结构图

BiLSTM模型的数学解释公式如下:

其中,bf、bb、bo分别表示前向计算层、后向计算层和输出层的偏置值.

双向LSTM通过正向迭代从1到T计算旧数据序列中的信息,同时反向迭代从T到1对未来数据中隐含的信息进行挖掘,最后对前向传播与后向传播的数据进行综合计算得到预测序列的值.

2 Deep LSTMs模型提出与分析

2.1 DeepLSTMs模型的提出

对于区域中长期气温预测问题的解决,提出了一种深度DeepLSTMs模型预测方法.该模型是在LSTM和BiLSTM模型的基础上,结合残差网络步长连接的优点建立的.DeepLSTMs神经网络模型设计的详细结构图如图3所示.

图3 DeepLSTMs网络模型结构图

图3中,每一个小方框代表LSTM记忆单元.虚线框中是模型的输入层和第一隐藏层采用的是BiLSTM结构,剩余的网络部分采用带有残差[11-13]的LSTM神经网络模型与LSTM层相结合的结构.DeepLSTMs网络模型结构设计原理:网络模型的前两层采用BiLSTM结构设计,能够充分提取温度预测数据中历史数据和未来数据中的有用信息.其他层采用带残差的LSTM网络结构,可以有效解决网络模型反向传播过程中梯度消失的问题.

2.2 DeepLSTMs模型算法分析

图3中的实线框是带有残差的LSTM结构,其结构的详细计算流程如图4所示,其主要计算公式如下:

图4 带有残差的LSTM网络模型结构图

在DeepLSTMs网络模型中,采用带有残差的多层LSTM结构,可以在一定程度上记忆之前的气象数据状态.下面详细分析推导了带残差的LSTM结构的反向传播计算,对式(10)递归更新,可得:对带有残差的LSTM结构的反向传播计算的详细分析推导公式是公式(12),对于该网络整体模型结构的深层还是浅层结构,DeepLSTMs网络模型的反向传播计算公式是公式(13).

其中J为DeepLSTMs模型的整体损失函数.从式(13)中可以看出反向传播计算最后分为2部分:第一部分偏导数可以反向传播到网络的任何一个层;第二部分在一个很小批次的输入数据的情况下,其值不总是等于-1.因此,在误差反向传播的过程中,即使是中间层的权值很小也不会出现梯度消失问题.这样就保证了整个网络模型结构能够具有很强的数据表达能力.

3 实验与分析

3.1 模型评估

DeepLSTMs模型会在气温预测数据集上进行实验分析、验证和评估.对于3种模型的评估方法,选择最常用的具有代表性的均方根误差(Root Mean Square Error)评估方法.该方法的数学定义如下:

在实验模型中使用带有残差的3层LSTM结构的原因是:当实验模型仅使用LSTM或BiLSTM时,虽然模型的训练时间较短,但模型的RMSE结果不是很理想.采用DeepLSTMs模型且模型中采用不同的带有残差的LSTM结构的层数进行训练的RMSE的结果(表1)可知:随着残差LSTM结构层数的增加,模型的RMSE值逐渐减小.增加层数为4时,模型过拟合的现象出现在训练的过程中,当再次层数增加时,整个网络模型的表达能力没有提高,与此同时,模型的训练时间越来越耗时.因此,带有残差的3层LSTM结构是最优结果.

表1 模型训练阶段的RMSE

3.2 实验过程

实验中采用的数据集来源于哈尔滨市气象局2007—2018年的气象基础数据.使用主成分分析方法PCA(Principal Component Analysis)[14-16]对气象基础数据进行处理,实验中所需测试的元素有:2 min平均风速、10 min平均风速、相对湿度、气压、露点温度、水汽压、蒸发、地温、最低温度、最高温度.实验过程:首先,为构建上述的数据值的样本矩阵,将其矩阵标准化变换处理;然后,对标准化矩阵计算出相关系数矩阵,并将其指标变量转换为主成分;最后,计算各主成分的贡献率和其累积贡献率,以确定主成分.通过使用PCA方法对气象数据集的分析结果如表2所示:

表2 PCA方法对特征数据集的分析

3.3 实验分析

在测试DeepLSTMs模型在训练阶段与测试阶段的损失值的变化后,因为DeepLSTMs模型在迭代过程开始时的训练损失大于测试损失,说明测试数据集的批处理数据和训练数据集的批处理数据在训练开始时高度相似.到一万次迭代训练时,模型的测试损耗和训练损耗恢复到正常状态.从中说明了DeepLSTMs模型对气温预测的有效性.

在用PCA方法对气象数据集的分析结果上,分别采用LSTM、BiLSTM、DeepLSTMs模型对2017-09-25日到2017-11-14日的气温预测.由结果(图5)可知:(1)在50天内的前25天属于短期气温预测,所以3种模型气温的预测结果近似;在50天内的后25天属于中长期气温预测,这时体现出3种模型的差别,也说明了DeepLSTMs模型的优势.(2)仅使用LSTM模型或BiLSTM模型预测区域中长期温度时,模型的表达能力会随着时间的增加而降低.特别是在利用LSTM模型对中长期气温进行预测时,在后期的预测中,模型的预测能力不足.而将前2种模型作为中长期温度预测的基础,可以看到DeepLSTMs模型的表达能力要强于前2种模型.

图5 3种模型对中长期气温预测结果

由2017-10-20日至2017-11-14日共25天的3种区域中长期气温预测模型的RMSE值(表3)可知:DeepLSTMs模型的RMSE值小于其他2种模型.这进一步验证了DeepLSTMs模型在区域中长期温度预测中的性能,也说明了该模型在区域中长期温度预测中的有效性.

表3 3种模型预测的RMSE结果

4 结论

在深度学习网络模型LSTM和BiLSTM的基础上,提出了一种新的改进的深度学习网络模型方法——DeepLSTMs.同时将残差网络整合到DeepLSTMs神经网络模型中,解决了网络模型训练过程中出现梯度消失的问题.

本文首先测试DeepLSTMs模型在训练阶段与测试阶段的损失值的变化,然后结合DeepLSTMs网络模型,对哈尔滨市中长期气温进行了大量的预测实验.通过3种模型对中长期气温预测实验,结果表明:利用DeepLSTMs网络模型对该地区中长期气温的预测精度高于现有的LSTM及BiLSTM网络模型的预测精度.由此总结,通过对比实验,DeepLSTMs模型的RMSE值小于其他2种模型,该模型能够很好的对中长期气温进行预测,其预测的准确率也较其他2种模型更高.

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!