基于LSTM神经网络的逐时气温预报

2023-06-21 09:28金郁淇李知何
现代信息科技 2023年9期
关键词:深度学习

金郁淇 李知何

摘  要:气温的变化对于社会生产、人民生活以及生态环境都有着重要影响。为了实现气温的精细化预報,提出一种基于长短期记忆神经网络(LSTM)的逐时气温预报模型。实验使用仙居国家基本气象站2017—2021年的每日逐小时气象观测数据,通过气压、降水、风速等多要素的历史数据预报未来12小时的逐小时气温值,平均绝对误差值为1.14 ℃,相比循环神经网络(RNN)模型的1.21 ℃,其精度更高,利用该模型对气温进行分析可为气象工作者提供一定的参考。

关键词:气温预报;长短期记忆神经网络;循环神经网络;深度学习

中图分类号:TP18;TP39 文献标识码:A 文章编号:2096-4706(2023)09-0026-04

Abstract: The change of temperature has an important impact on social production, people's life and ecological environment. In order to achieve the refined prediction of temperature, an hourly temperature prediction model based on Long Short-Term Memory (LSTM) is proposed. We use the daily hourly meteorological observation data of Xianju National Basic Meteorological Station from 2017 to 2021 to forecast the hourly temperature in the next 12 hours through the historical data of pressure, precipitation, wind speed and other factors. The average absolute error is 1.14 ℃, which is more accurate than the 1.21 ℃ of the recurrent neural network (RNN) model. The analysis of temperature using this model can provide certain reference for meteorologists.

Keywords: temperature prediction; Long Short-Term Memory; recurrent neural network; deep learning

0  引  言

气温的变化与人类的生产生活密切相关,在医疗卫生[1]、交通运输[2]、生态环境保护[3]等方面影响重大。随着经济社会的发展,社会各界对气象预报的需求越来越精细化,每日最高与最低气温的预报不能满足众多行业和公众的特殊需求,人们对天气的要求在不同时段也会不同,因此需要不断提升气象预报服务的精细化水准[4]。随着气象观测设备的升级换代,气象领域内产生了大量的数据,为开展天气现象的精细化预报带来了众多可能性。

气温的变化受多种条件影响,可以看作受多种因素影响的时间序列数据[5]。而长短期记忆神经网络(LSTM)作为一种时间递归神经网络,能够有效地学习长期的时间序列信息[6],将过去的数据与未来的数据变化紧密结合,在电力负荷预测[7]、月降水量预测[8]、疫情防控[9]等方面都已有了先例。

目前已有相关研究使用LSTM对未来一天的日均气温进行预测[10]。为了进一步提高预报的精度,使用气象站观测所得数据,提出了一种基于LSTM的逐时气温预报模型,实现对未来12小时的逐小时气温预报,并将其与RNN模型的预报结果进行比较。实验结果表明,利用该模型可以综合学习历史天气数据,对未来气温进行相对准确的预报,进而对未来的天气现象开展分析。

1  气温预测模型

1.1  RNN模型

RNN是一种可以用于处理时间序列数据的模型,RNN模型的基本结构如图1所示,包含输入层、隐藏层、输出层,其中W表示每个时刻间的权重矩阵,它将上一个隐藏层的输出与当前时刻的输入进行拼接后一起进入神经网络中,即每一时刻的隐藏层都由当前时刻的输入和上一时刻的隐藏层共同决定,因此RNN模型具备一定的记忆能力,从而可以挖掘数据中的时序信息。但是将模型按照时间线展开后,如图1右侧所示,随着输入信息的不断增多,最早输入的信息就会逐渐消退,导致模型偏重短期记忆,在面对长期时间信息时预测误差变大,一种改进的RNN即LSTM较好地解决了这个问题。

1.2  LSTM模型

LSTM是RNN的一个优秀的改进模型,继承了大部分RNN模型的特性,并在此基础上增加了门控结构和记忆单元来控制信息的流通,解决了梯度反传过程由于逐步缩减而产生的梯度消失问题。LSTM模型的内部结构如图2所示,通过其中的三个门控结构,遗忘门、输入门和输出门,可以实现对输入信息选择性的保存或遗忘,使模型更有效地学习更长时间的序列信息,从而具备长期记忆的功能。

遗忘门控制上一单元状态的遗忘程度,将上一单元的输出和ht-1和本单元的输入xt放入sigmoid函数中,得到一个介于0和1之间的数值,计算公式为式(1)。输入门由一个sigmoid函数与tanh函数配合控制新信息的输入量,如式(2)、式(3),然后将经过遗忘门与输入门得到的信息进行合并,计算公式为式(4)。最后的输出门通过一个sigmoid函数来控制此时的内部状态输出Ct输出到外部状态的ht的比例,计算过程为式(5)、式(6)。

1.3  模型搭建

实验于Python 3.8环境下开发,使用Google的开源架構Tensor flow 2.4.0进行LSTM的搭建。模型具备2个LSTM层、2个Droupout层,并使用Dense层作为输出层,模型的流程及各层输入输出的数组形状如图3所示。模型的输入层数据为一个三维向量(None,168,9),第二维度为168条历史小时数据,第三维度是数据的特征。第一层LSTM层输出格式为(None,168,64),为了提升模型的泛化能力,添加Dropout层对神经网络单元随机舍弃,第二层LSTM层接收上一层的输入后其输出格式转为二维向量(None,32),经过随机舍弃后使用Dense层输出作为气温预报值的二维向量(None,12)。

2  数据与训练

2.1  数据选取

气象观测数据来源于仙居国家基本气象站(站号:58652),文中选用2017年1月1日至2021年12月31日的每日逐小时观测数据,包含本站的气压、气温、水汽压、露点、相对湿度、降水、最大风速、最大风向、地温、蒸发10项要素,剔除空值与错值后共有43 801条有效数据。由于气温的变化受多种因素影响,各项变量与气温变化的关联程度各不相同,为确定用于训练预报模型的特征变量,实验使用Matplotlib工具绘制气温与不同特征的二维频次直方图,如图4所示,当颜色越深表示出现频次越高,两个值之间的关系越大。观察两要素之间的相关性,例如图4a,当气压在1 000 hPa左右时气温往往更高,且气压与气温呈负相关,气压升高时气温通常较低。通过对不同特征关联程度的判断,并结合气象预报员的工作经验,选择加入历史气温、气压、相对湿度、降水、最大风速5个要素用于模型训练。

此外对气温小时数据绘制二维线图观察其分布,可以看出气温在每日的昼夜循环及一年的四季循环内具有周期性变化,例如在无大尺度天气系统(例如寒潮、台风等)和强对流中尺度系统(例如多单体风暴、飑线等)影响的情况下,在一天之中,午后2时左右气温最高,日出前后气温最低;在一年之中,7月到8月气温最高,12月到1月气温最低,如图5所示。若在训练中直接添加时间数据,会使模型忽视如23点和0点、12月和1月之间在时间上的连续性,为使模型精准地捕捉到这种循环特征,研究通过三角函数提取其周期信息,即分别对时间序列内的小时与月份值在[0, 2π]的区间内平均划分取得对应的正弦值和余弦值,通过两个值可确定一个唯一的时间信息。将处理后的小时与月份信息添加为训练模型的变量,进而可以根据不同时间段与月份开展针对性的气温预报,进一步提升该模型的预测准确率。

2.2  数据预处理

实验通过滑窗法对数据进行重构,步长设置为1,将前168个时间点的9个特征作为输入,后12个时间点的气温值作为输出,将原始气象数据重构为具有输入和输出的数据集,把重构后的输入与输出样本按序组合在一起,使数据集转换为三维数组,以符合LSTM模型的输入要求。再将数据集按照7:3的比例把各个连续的序列信息划分为训练集与测试集,对训练集内的各个片段作随机打乱处理。

由于各个气象要素具有不同的单位尺度,直接使用会使模型过于偏重数值较大的气压等变量,削弱其他要素对气温的影响。因此需对数据进行标准化处理,根据原始数据的均值(mean)和标准差(std)计算得出新的变量值,计算公式为:

2.3  训练参数与调优

训练过程中对过去168小时的数据序列进行学习,用于预报未来12小时的气温,批次大小为64个样本,训练100轮次。为了提升学习速率与收敛速率,实验中使用Adam优化器,学习率设置为0.001,并通过回调函数ReduceLROnPlateau对验证损失率进行监测,当数轮训练后模型性能不再提升时,便减小学习率。为了避免出现过拟合现象,提高模型的预报准确度,在模型中的LSTM层中加入L1L2正则化,同时加入Dropout层,参数设置为0.2,并对LSTM层的输入使用tanh激活函数。

3  结果与分析

3.1  评价指标

实验选用平均绝对误差(MAE)作为评价指标之一,代表模型预测值f (x)与样本真实值y之间绝对误差的平均值,MAE越低证明模型预测准确率越高,计算公式为:

根据日常气象业务的需要,当预报误差小于2.0 ℃时,视为预报结果准确,因此添加准确率ACC作为评价指标,表示预报气温与实际气温之差的绝对值小于2.0 ℃的个数在实际个数中所占的比例,当ACC越接近1时模型效果越好,计算公式为:

3.2  预测结果分析

实验采用仙居国家基本气象站近5年内气温、气压、相对湿度等5个气象要素的观测数据,同时与时间、月份信息结合作为模型训练特征,通过历史168小时的序列信息预测未来12小时的气温变化。

根据前期对数据集的划分,剔除部分空报与错报的气象观测数据后,训练集包含30 534个样本,测试集包含13 087个样本,每个样本内有168条历史序列信息和12条未来序列信息用于分析学习。从测试集内随机抽取时间序列,使用LSTM模型预测后进行观察,结果如图6所示。将未来12小时的预测气温值与真实气温值绘制曲线进行比对,如图6(a)、图6(b)、图6(d),可以看到模型预测结果与真实值之间波动方向与幅度大体一致,能够较好地拟合真实气温变化,但在一些气温转折点的位置重合度不高,如图6(c)。

为了比较LSTM的有效性,实验中将其与RNN模型预测结果进行对比,表1记录了2种模型对测试集全部样本进行预测后的平均绝对误差与准确率的计算结果。从表1来看,LSTM模型预测结果的平均绝对误差为1.14 ℃,相比RNN模型减少了5.79%,预报准确率提升了1.84%,说明实验所搭建的LSTM模型对气温预测误差更小,且相比RNN模型的预测准确率更高。

为进一步判断LSTM模型的预测效果,实验对LSTM模型所预测的157 044条时间序列信息进行分析,并使用直方图工具查看预报气温绝对误差值的分布情况,如图7所示。经过统计,LSTM模型预测的绝对误差值的中位数为0.76 ℃,前25%的绝对误差值在0.33 ℃以下,前75%的绝对误差值小于1.51 ℃。实验结果说明LSTM模型对气温的逐时预报得了较好的结果,误差在可接受的范围内,可以满足部分气象业务的需要。

4  结  论

文中基于LSTM神经网络提出了一种多变量多步长的时间序列预测模型,使用气象站观测所得的数据,实现了对气温变化时间序列的多次预测分析。对比分析RNN模型,该模型可以更为有效的预报未来12小时的逐时气温值,具有一定的实用性,可以为精细化气象业务的开展提供参考,应用于重大活动保障、景区旅游预报、农业气象服务等多种场景。在进一步的研究中可以考虑加入多种地理位置的气象台站的数据,分析使用更多的气象要素,并综合考虑台风、寒潮、强对流等天气过程,对不同环境下温度的短时变化规律进行更深入的挖掘。

图7  絕对误差值分布情况

参考文献:

[1] 焦浩然.极端气温对东北地区城市人群健康风险的影响研究 [D].兰州:兰州大学,2021.

[2] 张宏芳,梁佳,沈姣姣,等.西安市气象条件对交通事故的影响分析 [J].陕西气象,2021(6):47-54.

[3] 姚永慧,张百平.青藏高原气温空间分布规律及其生态意义 [J].地理研究,2015,34(11):2084-2094.

[4] 李波,唐宁琳,李思萍,等.新时期气象预报服务的需求与发展 [J].江西农业,2019(10):41.

[5] 赵成兵,刘丹秀,谢新平,等.基于时间序列的季节性气温预测研究 [J].安徽建筑大学学报,2022,30(3):83-89.

[6] 蔡游游.基于RNN-LSTM网络的车辆轨迹预测研究 [D].长春:吉林大学,2021.

[7] 刘海峰,王艳如.基于LSTM的短期电力负荷预测算法研究 [J].现代信息科技,2021,5(23):40-42+47.

[8] 刘新,赵宁,郭金运,等.基于LSTM神经网络的青藏高原月降水量预测 [J].地球信息科学学报,2020,22(8):1617-1629.

[9] 胡海文.基于LSTM模型的新冠病情预测和影响因素分析 [J].现代信息科技,2021,5(7):91-94.

[10] 杨孟达.基于改进PSO-LSTM神经网络的气温预测 [J].现代信息科技,2020,4(4):110-112.

作者简介:金郁淇(2000—),男,汉族,浙江台州人,助理工程师,本科,研究方向:气象数据应用;李知何(1998—),男,汉族,浙江金华人,助理工程师,本科,研究方向:气象数据应用。

猜你喜欢
深度学习
从合坐走向合学:浅议新学习模式的构建
面向大数据远程开放实验平台构建研究
基于自动智能分类器的图书馆乱架图书检测
搭建深度学习的三级阶梯
有体验的学习才是有意义的学习
电子商务中基于深度学习的虚假交易识别研究
利用网络技术促进学生深度学习的几大策略
MOOC与翻转课堂融合的深度学习场域建构
大数据技术在反恐怖主义中的应用展望
深度学习算法应用于岩石图像处理的可行性研究