CN112862090A - 一种基于深度时空神经网络的气温预报方法 - Google Patents

一种基于深度时空神经网络的气温预报方法 Download PDF

Info

Publication number
CN112862090A
CN112862090A CN202110087773.8A CN202110087773A CN112862090A CN 112862090 A CN112862090 A CN 112862090A CN 202110087773 A CN202110087773 A CN 202110087773A CN 112862090 A CN112862090 A CN 112862090A
Authority
CN
China
Prior art keywords
time
model
input
temperature
tensor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110087773.8A
Other languages
English (en)
Other versions
CN112862090B (zh
Inventor
吕之豪
潘斌
谢仲铭
王健禹
王昊辰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nankai University
Original Assignee
Nankai University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nankai University filed Critical Nankai University
Priority to CN202110087773.8A priority Critical patent/CN112862090B/zh
Publication of CN112862090A publication Critical patent/CN112862090A/zh
Application granted granted Critical
Publication of CN112862090B publication Critical patent/CN112862090B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/11Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Computational Mathematics (AREA)
  • Molecular Biology (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Algebra (AREA)
  • Operations Research (AREA)
  • Remote Sensing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供了一种基于深度时空神经网络的气温预报方法,基于带有社会池化层的长短期记忆神经网络(Social LSTM),构建时空结合的深度学习模型用于气温预报:获取待预报区域历史气温数据,预处理为可输入模型的时间序列样本并划分训练集测试集;建立模型,其特征在于将每个子区域分别建立长短期记忆网络(LSTM)单元,将上一时刻LSTM单元输出的隐藏状态整合为社会张量,与下一时刻温度数据合并输入LSTM单元,针对网格;设定模型超参数,使用训练集训练模型,根据模型在测试集上的预测误差调整超参数设置;最终,将待预报时间之前的一段时间内的温度数据调整为适配模型输入的温度序列,输入模型得到预报结果。

Description

一种基于深度时空神经网络的气温预报方法
技术领域
本发明涉及气象预报领域,尤其是涉及一种基于深度时空神经网络的气温预报方法。
背景技术
气温是天气预报中最重要的要素之一。由于气温是连续的数值型变量,人工分析难以给出精确的预测,传统的气温预报依靠人工经验判断与求解大气动力学方程的数值预报方法相结合,其缺点在于:人工分析需要对大量气象数据做人工标注;求解方程对计算机性能要求高,在时间和空间的分辨率要求较高时,预测的速度慢且短时临近的预测效果不理想。相比传统方法,端到端的神经网络模型对原始数据兼容和利用能力强,端到端的模型使用便捷,推理速度快(完善的模型在经过优化后,预测速度可以达到秒级)。
现有的气温预报神经网络模型分为循环网络,卷积网络和卷积循环结合的混合网络三种,气温预报是明显具有空间相关性的时间序列预测问题,上述三种模型也可解释为以时间信息为主、以空间信息为主、时空信息融合的神经网络。
以长短期记忆神经网络(LSTM)为代表的循环网络,将上一时间点计算得到的神经网络隐含层输入下一时间点,使网络具有对历史数据的“记忆”能力,能够充分挖掘间信息,但对空间信息的缺乏挖掘能力,尤其难以处理网格的气象数据。
卷积神经网络(CNN)中的卷积和池化操作能够高效挖掘空间信息,但对于时间序列的预测较差,现有的技术,如将每一个时刻的气象网格数据视为图像的一个通道、使用因果卷积的序列到序列(Seq2Seq)模型等方法,在较长的时间序列上效果不好,没有充分利用历史数据。
混合网络一般是多层结构,现有的模型有:CNN-LSTM模型只是简单耦合了两层网络,没有深度结合,无法有效挖掘时间信息与空间信息之间的关联;卷积长短期记忆网络(ConvLSTM)将LSTM中全连接运算替换为卷积,使其支持对二维的输入并能够捕捉空间信息,但是需要采用两层以上的ConvLSTM堆叠为自编码器才能取得较好的预测效果,对此一些改进的模型,在ConvLSTM层后引入多层的注意力机制(如谷歌的MetNet),或采用更多层的LSTM和CNN单元堆叠,虽然提升了预测精度,但是网络结构过于复杂,使模型的时间和空间复杂度增大,导致实际应用时对计算机硬件的要求更高,增加模型部署的成本。
综上所述,研究一种高效的深度时空神经网络,能够同时利用时间和空间信息并挖掘二者联系,以提升气温预报精度,有十分重要的意义。
发明内容
本发明要解决的技术问题是针对现有技术存在的不足,提供一种基于深度时空神经网络的气温预报方法,提高预测精度的同时保证模型的预测速度和内存开销,并且能够适配不同形式的输入数据(地面气象观测站点数据、小规模气温网格数据、遥感图像)。
为此,本发明采用如下的技术方案:改进朴素LSTM模型,提出一种基于带有社会池化层的长短期记忆网络(Social LSTM)的深度时空结合的神经网络模型,先对各个预测区域建立LSTM单元,再通过在捕捉时序信息的LSTM单元中嵌入整合空间信息的社会张量(Social Tensor),高效地实现时空信息的深度融合,并且针对不同的输入格式对模型结构进行微调。
本发明提供一种基于深度时空神经网络的气温预报方法,其特征在于包括以下具体步骤:
步骤1:数据预处理。针对需要预报的目标区域,用该区域历史气温数据,建立符合适合LSTM输入格式的时间序列数据集,将数据集划分为训练集和测试集,具体方法为:
步骤11:规定数据集中每个输入样本的温度序列的长度,即时间步长(Timestep,下简记为ts),每个样本的输入为连续t个单位时间的温度序列,标签为紧邻输入序列之后ts个单位时间的温度序列;若温度数据为气象站点温度,设待预报的目标区域中气象站点数为N,则每个样本的输入和标签维度均为ts×N,若温度数据为温度网格或遥感图像,设待预报的目标区域长宽为H、W,则每个样本的输入和标签维度均为ts×H×W。
步骤12:将样本按照输入温度序列的第一个时间点的真实日期升序排序得到数据集全体,按一定比例划分为两部分,前一部分为训练集,后一部分为测试集。
步骤2:建立模型。根据数据集格式(气象站点、小规模温度网格、遥感图像)建立不同的Social LSTM模型,参照图1和图2,具体设计如下:
步骤21:对于空间离散的气象站温度数据,使用Embedding嵌入层变换输入,样本输入的温度序列记为
Figure BDA0002910970550000021
Figure BDA0002910970550000022
为t时刻站点j的温度,具体设计如下:
步骤211:设定LSTM隐含层尺寸Sizeh,对每个站点,将社会张量
Figure BDA0002910970550000023
细胞状态
Figure BDA0002910970550000024
隐含状态
Figure BDA0002910970550000025
均初始化为Sizeh维的零张量。
步骤212:从t=1时刻开始的每一个时刻t,对于每一站点j,计算社会张量,按照一个固定的距离公式(如欧式距离或曼哈顿距离),找到离当前站点最近的K个站点,将其对应t-1时刻的隐含状态相加,再经过Embedding嵌入层变换得到t时刻站点j的社会张量
Figure BDA0002910970550000026
计算公式为
Figure BDA0002910970550000027
其中Wse,bse为Sizeh×Sizeh和Sizeh×1权值矩阵,ReLU为激活函数ReLU(x)=max{0,x},Dropout特指神经网络中的Dropout操作,在训练过程中随机选择一些神经元不参与训练。
步骤213:类似地,对t时刻站点j的输入温度
Figure BDA0002910970550000028
做Embedding嵌入层的变换,
Figure BDA0002910970550000029
其中Wte,bte为Sizeh×1的权值矩阵,故
Figure BDA00029109705500000210
也是Sizeh维的张量,ReLU,Dropout与步骤212中定义相同。将
Figure BDA00029109705500000211
Figure BDA00029109705500000212
直接拼接得到t时刻站点j输入LSTM单元的输入张量
Figure BDA00029109705500000213
它是2Sizeh维的。
步骤214:建立输入尺寸2Sizeh,隐含层尺寸Sizeh的LSTM单元,计算公式如下
Figure BDA00029109705500000214
Figure BDA00029109705500000215
Figure BDA00029109705500000216
Figure BDA00029109705500000217
Figure BDA00029109705500000218
Figure BDA00029109705500000219
其中Wii,Wif,Wig,Wio为2Sizeh×Sizeh权值矩阵,Whi,Whg,Who为Sizeh×Sizeh的权值矩阵,bii,bif,big,bio,bhf,bhg,bho为Sizeh×1的权值矩阵,
Figure BDA00029109705500000220
即为t时刻站点j的细胞状态和隐含状态,tanh为双曲正切函数,σ为Sigmoid函数,⊙为Hadamard积,即张量的按位乘法。
步骤215:通过全连接层得到t时刻输出
Figure BDA00029109705500000221
其中Wse,bse为Sizeh×1和1×1权值矩阵,
Figure BDA00029109705500000222
即为模型输出。
步骤22:对于H×W的小规模温度网格数据,分区域下采样转化为一维问题。将网格划分为L×L个小区域,将每个小区域视为一个气象站点,即N=L2,每个小区域取平均池化、最大池化以及中心点温度,下采样为
Figure BDA0002910970550000031
Figure BDA0002910970550000032
为t时刻站点j的维度为3的特征张量,进行步骤211-215,修改步骤212,直接将所有小区域的隐含层状态相加(即K=L2),最终得到的输出视为每个小区域整体温度的预报。
步骤23:对于H×W的遥感图像,建立带有社会张量的卷积长短期记忆网络(Social-ConvLSTM),样本输入的图像序列记为
Figure BDA00029109705500000318
具体设计如下:
步骤231:将网格划分为L1×L2个小区域,使每个区域均为H1×W1的矩形,此时输入图像序列为
Figure BDA0002910970550000033
设定ConvLSTM的卷积核大小为Kernelh×Kernelw,设定隐含层通道数为Channel,将每个小区域的细胞状态
Figure BDA0002910970550000034
隐含状态
Figure BDA0002910970550000035
均初始化为Channel×H1×W1维的零张量。
步骤232:从t=1时刻开始的每一个时刻t,将所有小区域的隐含状态张量按空间相对位置拼接为Channel×(L1·H1)×(L2·W1)的张量S′t,经过二维卷积变换为1×H1×W1的社会张量St
步骤233:将t时刻的小区域
Figure BDA0002910970550000036
与社会张量合并为2×H1×W1的输入张量
Figure BDA0002910970550000037
步骤234:建立输入为2×H1×W1,隐含状态维度为Channel×H1×W1的ConvLSTM,公式如下,
Figure BDA0002910970550000038
Figure BDA0002910970550000039
Figure BDA00029109705500000310
Figure BDA00029109705500000311
Figure BDA00029109705500000312
Figure BDA00029109705500000313
其中Wii,Wif,Wig,Wio,Whi,Whg,Who为Channel×2×Kernelh×Kernelw的卷积核,bii,bif,big,bio,bhf,bhg,bho为Channel×Kernelh×Kernelw的权值矩阵;*为带有填充(Padding)的卷积,横向填充大小为
Figure BDA00029109705500000314
纵向填充大小为
Figure BDA00029109705500000315
σ,tanh,⊙定义与步骤214相同。
步骤235:通过1×1卷积,基于Channel×H1×W1维的隐含状态
Figure BDA00029109705500000316
计算H1×W1维的预测结果
Figure BDA00029109705500000317
步骤3:训练优化模型。设定模型超参数,使用训练集训练模型,根据在测试集上的预测误差调整超参数,具体步骤如下:
步骤31:将步骤12中得到的训练集重塑,即将多个样本合为一个批次输入模型,设每批中样本个数为B,则最终得到的训练集每一批的输入和标签维度均为ts×B×N(站点数据)或ts×B×H×W(网格或图像)。
步骤32:设定超参数,初始化神经网络权值,设定梯度下降优化器(如RMSprop)优化模型中神经网络参数,设定学习速率、平滑常数、迭代次数、批大小(即为步骤31中的B)等超参数,使用均方根误差(RMSE)或平均绝对误差(MAE)作为损失函数。
步骤33:使用步骤31得到的训练集训练模型,对于每一批样本输入,将输入张量在神经网络中前向传播得到输出,通过损失函数计算模型输出的预测值与样本标签的真实值之间的误差及其梯度,将梯度在神经网络中反向传播,并使用优化器更新每一层的参数值(即步骤2中的权值矩阵和卷积核)。
步骤34:将测试集样本依次输入模型,得到模型输出的预测值,使用与步骤32、33中相同的损失函数衡量预测值与标签之间的误差,可作为评估模型精度的指标,损失函数越小,误差越小,模型预测精度越高,对于不同的数据集,模型最优的超参数设置不同,因此实际使用时既可参照“具体实施方式”一节中给出的超参数设置,也可根据实际误差对超参数做出调整,若更改超参数设置则需要重新进行步骤33。
步骤4:输出预报结果。将待预报时刻t1之前一段时间(t1-ts~t1-1)的温度数据,按类似步骤1中的方法调整格式,生成长度为ts的温度序列,输入模型,得到从待预报时刻开始的ts个单位时间内(t1~t1+ts-1)的温度预报,更进一步地,预报t1+ts~t1+2ts-1时间内的温度时,如果在预报时已有t1~t1+ts-1的真实温度,则以真实温度作为模型输入,如果没有,则以模型对t1~t1+ts-1时间的预测值作为模型的输入,t1+2ts时刻之后的预报任务与t1+ts~t1+2ts-1采取类似的方法。
本发明具有如下的有益效果:
(1)通过在捕捉时序信息的LSTM单元中嵌入整合空间信息的社会张量,高效地实现时空信息的深度融合:随时间推移,每预测一个时刻之前,时序层LSTM输出的隐含状态都会计算一次社会张量以实现空间信息的整合,输入LSTM的温度时间序列的长度即是时空信息融合的次数,时空信息深度融合。
(2)Social LSTM先划分待预报区域进行时序预测,再整合空间信息,使得模型既能适用于空间中离散的气象观测站数据,又适用于密集的温度网格数据和遥感图像,实现端到端的快速温度预报。
(3)社会张量是嵌入LSTM结构中的且计算方法固定没有需要学习的参数,相比于多层堆叠的混合网络,本发明的模型更加轻量,参数少且推理速度快。
附图说明
图1:带有社会池化层的长短期记忆网络(Social LSTM)预测气温网格数据的计算流程示意图。
图2:Social LSTM局部结构示意图,其中图2a为对于每一个LSTM单元的输入输出张量(特别是社会张量Social Tensor)的示意图,其中三维长方体为张量,二维矩形为神经网络层;图2b为图2a中Embedding嵌入层的内部结构示意图。
图3:实施方式流程图。
具体实施方式
下面将结合附图3和具体实施例对本发明进行进一步详细说明。在发明内容的具体步骤中,由于网格数据在下采样后与离散网格点类似,没有详细展开说明,故选取网格气温数据为例做进一步说明。
步骤1:数据预处理。选取北纬8度至南纬54度,西经80度至25度作为待预报的目标区域,从气候预报系统再分析(CFSR)数据集中获取该地区数据1979年1月至2015年12月,以6小时为间隔,空间分辨率为温度数据0.5度×0.5度的温度数据。
步骤11:规定数据集中每个输入样本的温度序列的长度(即时间步长)ts=5,此时每个样本的输入温度对应时间为t=0h,6h,12h,18h,24h,标签温度对应时间为t=30h,36h,42h,48h,54h。由1)中的目标区域经纬度范围和空间分辨率可知,每一时刻的温度网格大小32×32,故样本构造输入和标签均为5×32×32维度的张量,设t时刻32×32的原始网格为
Figure BDA0002910970550000041
步骤12:按照步骤11裁剪得到的数据集共有54056个样本,按照0.7,0.3的比例划分训练集和测试集,取整后训练集包含37840个样本,测试集包含16216个样本。
步骤2:使用开源深度学习框架Pytorch建立模型,由于输入数据是小规模温度网格,采取如下步骤:
步骤22:由于网格的长宽为H=32,W=32,设L=2,小区域个数为2×2,每个区域范围坐标范围分别为:区域(1,1)横坐标1-16,纵坐标1-16;区域(1,2)横坐标1-16,纵坐标17-32;区域(2,1)横坐标17-32,纵坐标1-16,区域(2,2)横坐标17-32,纵坐标17-32。对每个区域(i,j)计算t时刻样本输入的温度特征
Figure BDA0002910970550000042
Figure BDA0002910970550000043
Figure BDA0002910970550000044
Figure BDA0002910970550000045
Figure BDA0002910970550000046
这是由区域(i,j)在t时刻的温度网格取中心温度、最大值池化、平均池化三个下采样操作得到的3维向量。注:由于网格长宽为偶数,故取中心附近的4个网格点均值作为中心温度;而对于奇数个区域如L=3时,区域长宽取32除以3的上取整,为11,此时中心温度直接去小区域网格的中心点即可,但在划分区域时相邻区域需要有1的重合,如横轴纵轴不同区域的划分为1-11,12-22,22-32。
步骤221:设定LSTM隐含层尺寸Sizeh=32,对每个小区域(i,j),将社会张量
Figure BDA0002910970550000051
细胞状态
Figure BDA0002910970550000052
隐含状态
Figure BDA0002910970550000053
均初始化为32维的零张量。
步骤222:从t=1时刻开始的每一个时刻t,对于每个小区域(i,j),计算社会张量。将t-1时刻的四个小区域的隐含状态相加,再经过Embedding嵌入层变换得到t时刻站点j的社会张量
Figure BDA0002910970550000054
Figure BDA0002910970550000055
其中Wse,bse为32×32和32×1权值矩阵,ReLU为激活函数ReLU(x)=max{0,x},Dropout特指神经网络中的Dropout操作,在训练过程中随机丢弃一些神经元不参与训练,丢弃概率设为0.5。
步骤223:类似地,对t时刻小区域(i,j)的输入温度特征向量
Figure BDA0002910970550000056
做Embedding嵌入层的变换,
Figure BDA0002910970550000057
其中Wte,bte为32×3的权值矩阵,故
Figure BDA0002910970550000058
也是32维的张量,ReLU,Dropout与步骤212中定义相同。将
Figure BDA0002910970550000059
Figure BDA00029109705500000510
直接拼接得到t时刻小区域(i,j)输入LSTM单元的输入张量
Figure BDA00029109705500000511
它是64维的。
步骤224:建立输入尺寸为64,隐含层尺寸为32的LSTM单元,计算公式如下
Figure BDA00029109705500000512
Figure BDA00029109705500000513
Figure BDA00029109705500000514
Figure BDA00029109705500000515
Figure BDA00029109705500000516
Figure BDA00029109705500000517
其中Wii,Wif,Wig,Wio为64×32权值矩阵,Whi,Whg,Who为32×32的权值矩阵,
bii,bif,big,bio,bhf,bhg,bho为32×1的权值矩阵,
Figure BDA00029109705500000518
即为t时刻站点j的细胞状态和隐含状态,tanh为双曲正切函数
Figure BDA00029109705500000519
σ为Sigmoid函数
Figure BDA00029109705500000520
⊙为Hadamard积,即张量的按位乘法<xij>⊙<yij><xij·yij>。
步骤225:通过全连接层得到t时刻输出
Figure BDA00029109705500000521
其中Wse,bse为32×1和1×1权值矩阵,
Figure BDA00029109705500000522
即为模型输出。
步骤3:训练优化模型。设定模型超参数,使用训练集训练模型,根据在测试集上的预测误差调整超参数,具体步骤如下:
步骤31:将步骤12中得到的训练集重塑,即将多个样本合为一个批次输入模型,设每批中样本个数为B=32,则最终得到的训练集每一批的输入和标签维度均为5×32×32×32,由于训练集样本数为37840(除以32余16),最后不足一批的样本可以丢弃或作为一个B=16的批次。
步骤32:设定优化器为RMSprop,学习速录lr=0.001,平滑常数alpha=0.9,迭代次数为epoch=100,损失函数Loss使用RMSE或MAE,对单个样本的损失函数公式如下
Figure BDA00029109705500000523
其中
Figure BDA0002910970550000061
为模型预测值,
Figure BDA0002910970550000062
为样本标签的温度网格经过步骤2中的中心温度下采样得到的小区域的整体温度的真实值。对于批样本,则将每个样本的损失函数值相加取平均。
步骤33:使用步骤31得到的训练集训练模型,对于每一批样本输入,将输入张量在神经网络中前向传播得到输出,通过损失函数计算模型输出的预测值与样本标签的真实值之间的误差及其梯度,将梯度在神经网络中反向传播,并使用优化器更新每一层的参数值(即步骤2中的权值矩阵和卷积核)。RMSprop优化器的优化过程如下:
初始化累积变量r=0
计算当前批样本的损失函数
Figure BDA0002910970550000063
对于神经网络中某一层的参数θ,求损失函数关于θ的梯度
Figure BDA0002910970550000064
累积平方梯度r=αr+(1-α)g⊙g,其中⊙为Hadamard积;
计算参数更新
Figure BDA0002910970550000065
(逐维度计算)
更新参数θ=θ+ΔΘ
当迭代超过epoch次时停止更新,结束训练。
步骤34:将测试集的16216个样本依次输入模型,将输出与样本标签按照步骤32中的损失函数计算误差损失,取所有样本误差函数的平均值,即为模型的经验误差,经验误差越小,模型预报精确度越高。本实施例中,超参数包括步骤1中的ts、步骤22中的L、步骤221中的Sizeh,步骤31中的B,步骤32中的lr,alpha,epoch,Loss。在上述步骤中给出的具体数值是经实验验证后较好的设置,根据数据集的不同,实际使用本发明时,若测试集上的损失函数平均值过大,可对超参数作出调整,根据经验,一般情况下:ts可设为5-50之间整数值,L为2、3、4、5等较小的正整数值,为方便计算机内存对齐提高计算效率,Sizeh和B取2的正整数次幂且不超过256,lr为接近0的小数,alpha为接近1的小数,epoch取100-500的整数值,Loss可使用RMSE、MAE、MSE(均方误差)、rMAE(相对平均绝对值误差)等可用于回归问题的损失函数。
步骤4:输出预报结果。将待预报时刻t1之前一段时间(t1-5~t1-1)的温度数据,按类似步骤1中的方法调整格式,生成长度为ts的温度序列,输入模型,得到从待预报时刻开始的ts个单位时间内(t1~t1+4)的温度预报,更进一步地,预报t1+5~t1+9时间内的温度时,如果在预报时已有t1~t1+4的真实温度,则以真实温度作为模型输入,如果没有,则以模型对t1~t1+4时间的预测值作为模型的输入,t1+10时刻之后的预报任务与t1+5~t1+9采取类似的方法。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术方案和权利要求的范围内,可轻易想到的任何简单修改、等同变化与修饰,都应涵盖在本发明的保护范围之内。

Claims (8)

1.一种基于深度时空神经网络的气温预报方法,其特征在于以下步骤:
步骤1:数据预处理,针对需要预报的目标区域,用该区域历史气温数据,建立符合适合长短期记忆神经网络(LSTM)输入格式的时间序列数据集,将数据集划分为训练集和测试集。
步骤2:建立模型,根据数据集格式(气象站点、小规模温度网格、遥感图像)建立不同的带社会张量的长短期记忆神经网络(Social LSTM)模型。
步骤3:训练优化模型,设定模型超参数,使用训练集训练模型,根据在测试集上的预测误差调整超参数。
步骤4:输出预报结果,将待预报时间之前的一段时间内的温度数据调整为适配模型输入的温度序列,输入模型得到预报结果。
2.根据权利要求1所述一种基于深度时空神经网络的气温预报方法,其特征在于,所述步骤1针对需要预报的目标区域,用该区域历史气温数据,建立符合适合LSTM输入格式的时间序列数据集,将数据集划分为训练集和测试集,具体步骤为:
步骤11:规定数据集中每个输入样本的温度序列的长度,即时间步长(Timestep,下简记为ts),每个样本的输入为连续t个单位时间的温度序列,标签为紧邻输入序列之后ts个单位时间的温度序列;若温度数据为气象站点温度,设待预报的目标区域中气象站点数为N,则每个样本的输入和标签维度均为ts×N,若温度数据为温度网格或遥感图像,设待预报的目标区域长宽为H、W,则每个样本的输入和标签维度均为ts×H×W。
步骤12:将样本按照输入温度序列的第一个时间点的真实日期升序排序得到数据集全体,按一定比例划分为两部分,前一部分为训练集,后一部分为测试集。
3.根据权利要求1所述一种基于深度时空神经网络的气温预报方法,其特征在于,所述步骤2根据数据集格式(气象站点、小规模温度网格、遥感图像)建立不同的带社会张量的长短期记忆神经网络(Social LSTM)模型,具体设计为:
步骤21:对于空间离散的气象站温度数据,使用Embedding嵌入层变换输入。
步骤22:对于H×W的小规模温度网格数据,分区域下采样转化为一维问题。
步骤23:对于H×W的遥感图像,建立带有社会张量的卷积长短期记忆网络。
4.根据权利要求3所述一种基于深度时空神经网络的气温预报方法,其特征在于,所述步骤21对于空间离散的气象站温度数据,使用Embedding嵌入层变换输入,样本输入的温度序列记为
Figure FDA0002910970540000011
Figure FDA0002910970540000012
Figure FDA0002910970540000013
为t时刻站点j的温度,具体设计如下:
步骤211:设定LSTM隐含层尺寸Sizeh,对每个站点,将社会张量
Figure FDA0002910970540000014
细胞状态
Figure FDA0002910970540000015
隐含状态
Figure FDA0002910970540000016
均初始化为Sizeh维的零张量。
步骤212:从t=1时刻开始的每一个时刻t,对于每一站点j,计算社会张量,按照一个固定的距离公式(如欧式距离或曼哈顿距离),找到离当前站点最近的K个站点,将其对应t-1时刻的隐含状态相加,再经过Embedding嵌入层变换得到t时刻站点j的社会张量
Figure FDA0002910970540000017
计算公式为
Figure FDA0002910970540000018
其中Wse,bse为Sizeh×Sizeh和Sizeh×1权值矩阵,ReLU为激活函数ReLU(x)=max{0,x},Dropout特指神经网络中的Dropout操作,在训练过程中随机选择一些神经元不参与训练。
步骤213:类似地,对t时刻站点j的输入温度
Figure FDA0002910970540000019
做Embedding嵌入层的变换,
Figure FDA00029109705400000110
其中Wte,bte为Sizeh×1的权值矩阵,故
Figure FDA00029109705400000111
也是Sizeh维的张量,ReLU,Dropout与步骤212中定义相同。将
Figure FDA00029109705400000112
Figure FDA00029109705400000113
直接拼接得到t时刻站点j输入LSTM单元的输入张量
Figure FDA00029109705400000114
它是2Sizeh维的。
步骤214:建立输入尺寸2Sizeh,隐含层尺寸Sizeh的LSTM单元,计算公式如下
Figure FDA0002910970540000021
Figure FDA0002910970540000022
Figure FDA0002910970540000023
Figure FDA0002910970540000024
Figure FDA0002910970540000025
Figure FDA0002910970540000026
其中Wii,Wif,Wig,Wio为2Sizeh×Sizeh权值矩阵,Whi,Whg,Who为Sizeh×Sizeh的权值矩阵,bii,bif,big,bio,bhf,bhg,bho为Sizeh×1的权值矩阵,
Figure FDA0002910970540000027
即为t时刻站点j的细胞状态和隐含状态,tanh为双曲正切函数,σ为Sigmoid函数,⊙为Hadamard积,即张量的按位乘法。
步骤215:通过全连接层得到t时刻输出
Figure FDA0002910970540000028
其中Wse,bse为Sizeh×1和1×1权值矩阵,
Figure FDA0002910970540000029
即为模型输出。
5.根据权利要求3所述一种基于深度时空神经网络的气温预报方法,其特征在于,所述步骤22对于H×W的小规模温度网格数据,分区域下采样转化为一维问题。将网格划分为L×L个小区域,将每个小区域视为一个气象站点,即N=L2,每个小区域取平均池化、最大池化以及中心点温度,下采样为
Figure FDA00029109705400000210
Figure FDA00029109705400000211
Figure FDA00029109705400000212
为t时刻站点j的维度为3的特征张量,进行步骤211-215,修改步骤212,直接将所有小区域的隐含层状态相加(即K=L2),最终得到的输出视为每个小区域整体温度的预报。
6.根据权利要求3所述一种基于深度时空神经网络的气温预报方法,其特征在于,所述步骤23对于H×W的遥感图像,建立带有社会张量的卷积长短期记忆网络(Social-ConvLSTM),样本输入的图像序列记为
Figure FDA00029109705400000213
具体设计如下:
步骤231:将网格划分为L1×L2个小区域,使每个区域均为H1×W1的矩形,此时输入图像序列为
Figure FDA00029109705400000214
设定ConvLSTM的卷积核大小为Kernelh×Kernelw,设定隐含层通道数为Channel,将每个小区域的细胞状态
Figure FDA00029109705400000215
隐含状态
Figure FDA00029109705400000216
均初始化为Channel×H1×W1维的零张量。
步骤232:从t=1时刻开始的每一个时刻t,将所有小区域的隐含状态张量按空间相对位置拼接为Channel×(L1·H1)×(L2·W1)的张量S′t,经过二维卷积变换为1×H1×W1的社会张量St
步骤233:将t时刻的小区域
Figure FDA00029109705400000217
与社会张量合并为2×H1×W1的输入张量
Figure FDA00029109705400000218
步骤234:建立输入为2×H1×W1,隐含状态维度为Channel×H1×W1的ConvLSTM,公式如下,
Figure FDA00029109705400000219
Figure FDA00029109705400000220
Figure FDA00029109705400000221
Figure FDA00029109705400000222
Figure FDA00029109705400000223
Figure FDA00029109705400000224
其中Wii,Wif,Wig,Wio,Whi,Whg,Who为Channel×2×Kernelh×Kernelw的卷积核,bii,bif,big,bio,bhf,bhg,bho为Channel×Kernelh×Kernelw的权值矩阵;*为带有填充(Padding)的卷积,横向填充大小为
Figure FDA00029109705400000225
纵向填充大小为
Figure FDA00029109705400000226
σ,tanh,⊙定义与步骤214相同。
步骤235:通过1×1卷积,基于Channel×H1×W1维的隐含状态
Figure FDA00029109705400000227
计算H1×W1维的预测结果
Figure FDA00029109705400000228
7.根据权利要求1所述一种基于深度时空神经网络的气温预报方法,其特征在于,所述步骤3设定模型超参数,使用训练集训练模型,根据在测试集上的预测误差调整超参数,具体步骤如下:
步骤31:将步骤12中得到的训练集重塑,即将多个样本合为一个批次输入模型,设每批中样本个数为B,则最终得到的训练集每一批的输入和标签维度均为ts×B×N(站点数据)或ts×B×H×W(网格或图像)。
步骤32:设定超参数,初始化神经网络权值,设定梯度下降优化器(包括但不限于RMSprop)优化模型中神经网络参数,设定学习速率、平滑常数、迭代次数、批大小(即为步骤31中的B)等超参数,使用包括但不限于均方根误差(RMSE)或平均绝对误差(MAE)的损失函数。
步骤33:使用步骤31得到的训练集训练模型,对于每一批样本输入,将输入张量在神经网络中前向传播得到输出,通过损失函数计算模型输出的预测值与样本标签的真实值之间的误差及其梯度,将梯度在神经网络中反向传播,并使用优化器更新每一层的参数值。
步骤34:将测试集样本依次输入模型,得到模型输出的预测值,使用与步骤32、33中相同的损失函数衡量预测值与标签之间的误差,可作为评估模型精度的指标,损失函数越小,误差越小,模型预测精度越高,对于不同的数据集,若实际误差过大,调整超参数重新进行步骤33。
8.根据权利要求1所述一种基于深度时空神经网络的气温预报方法,其特征在于,所述步骤4输出预报结果,将待预报时刻t1之前一段时间(t1-ts~t1-1)的温度数据,按类似步骤1中的方法调整格式,生成长度为ts的温度序列,输入模型,得到从待预报时刻开始的ts个单位时间内(t1~t1+ts-1)的温度预报,更进一步地,预报t1+ts~t1+2ts-1时间内的温度时,如果在预报时已有t1~t1+ts-1的真实温度,则以真实温度作为模型输入,如果没有,则以模型对t1~t1+ts-1时间的预测值作为模型的输入,t1+2ts时刻之后的预报任务与t1+ts~t1+2ts-1采取类似的方法。
CN202110087773.8A 2021-01-22 2021-01-22 一种基于深度时空神经网络的气温预报方法 Active CN112862090B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110087773.8A CN112862090B (zh) 2021-01-22 2021-01-22 一种基于深度时空神经网络的气温预报方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110087773.8A CN112862090B (zh) 2021-01-22 2021-01-22 一种基于深度时空神经网络的气温预报方法

Publications (2)

Publication Number Publication Date
CN112862090A true CN112862090A (zh) 2021-05-28
CN112862090B CN112862090B (zh) 2023-01-31

Family

ID=76007931

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110087773.8A Active CN112862090B (zh) 2021-01-22 2021-01-22 一种基于深度时空神经网络的气温预报方法

Country Status (1)

Country Link
CN (1) CN112862090B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113468820A (zh) * 2021-07-21 2021-10-01 上海眼控科技股份有限公司 数据训练方法、装置、设备及存储介质
CN114091647A (zh) * 2021-11-12 2022-02-25 北部湾大学 一种基于bp神经网络的太阳10.7厘米射电流量预报方法
CN114298389A (zh) * 2021-12-22 2022-04-08 中科三清科技有限公司 一种臭氧浓度预报方法及装置
CN114994800A (zh) * 2022-08-02 2022-09-02 南京航天宏图信息技术有限公司 一种大气细颗粒物的反演方法及装置
CN114997490A (zh) * 2022-05-30 2022-09-02 北京环境特性研究所 温度廓线预测模型的构建方法、预测方法、装置及设备
CN115032720A (zh) * 2022-07-15 2022-09-09 国网上海市电力公司 基于随机森林的多模式集成预报在地面气温预报中的应用
CN115510767A (zh) * 2022-11-21 2022-12-23 四川省气象服务中心(四川省专业气象台 四川省气象影视中心) 基于深度时空网络的区域气温预测方法
CN115759413A (zh) * 2022-11-21 2023-03-07 合肥本源量子计算科技有限责任公司 一种气象预测方法、装置、存储介质及电子设备
CN117409557A (zh) * 2023-12-14 2024-01-16 成都格理特电子技术有限公司 基于动态分析的检测高温报警方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108564118A (zh) * 2018-03-30 2018-09-21 陕西师范大学 基于社会亲和力长短期记忆网络模型的拥挤场景行人轨迹预测方法
CN109635793A (zh) * 2019-01-31 2019-04-16 南京邮电大学 一种基于卷积神经网络的无人驾驶行人轨迹预测方法
CN109978279A (zh) * 2019-04-10 2019-07-05 青岛农业大学 海洋表面温度区域预测方法
CN110675430A (zh) * 2019-09-24 2020-01-10 中国科学院大学 一种基于运动和表观适应融合的无人机多目标跟踪方法
CN111652425A (zh) * 2020-05-29 2020-09-11 重庆工商大学 一种基于粗糙集和长短期记忆网络的河流水质预测方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108564118A (zh) * 2018-03-30 2018-09-21 陕西师范大学 基于社会亲和力长短期记忆网络模型的拥挤场景行人轨迹预测方法
CN109635793A (zh) * 2019-01-31 2019-04-16 南京邮电大学 一种基于卷积神经网络的无人驾驶行人轨迹预测方法
CN109978279A (zh) * 2019-04-10 2019-07-05 青岛农业大学 海洋表面温度区域预测方法
CN110675430A (zh) * 2019-09-24 2020-01-10 中国科学院大学 一种基于运动和表观适应融合的无人机多目标跟踪方法
CN111652425A (zh) * 2020-05-29 2020-09-11 重庆工商大学 一种基于粗糙集和长短期记忆网络的河流水质预测方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
ALEXANDRE ALAHI ET.AL: "Social LSTM:Human Trajectory Prediction in Crowded Spaces", 《2016 IEEE CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION》 *
XIAODONG LI ET.AL: "Using LSTM GRU and Hybrid Models for Streamflow Forecasting", 《MLICOM 2019》 *
孙亚圣 等: "基于注意力机制的行人轨迹预测生成模型", 《计算机应用》 *

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113468820A (zh) * 2021-07-21 2021-10-01 上海眼控科技股份有限公司 数据训练方法、装置、设备及存储介质
CN114091647A (zh) * 2021-11-12 2022-02-25 北部湾大学 一种基于bp神经网络的太阳10.7厘米射电流量预报方法
CN114298389A (zh) * 2021-12-22 2022-04-08 中科三清科技有限公司 一种臭氧浓度预报方法及装置
CN114997490A (zh) * 2022-05-30 2022-09-02 北京环境特性研究所 温度廓线预测模型的构建方法、预测方法、装置及设备
CN115032720A (zh) * 2022-07-15 2022-09-09 国网上海市电力公司 基于随机森林的多模式集成预报在地面气温预报中的应用
CN114994800B (zh) * 2022-08-02 2022-11-08 南京航天宏图信息技术有限公司 一种大气细颗粒物的反演方法及装置
CN114994800A (zh) * 2022-08-02 2022-09-02 南京航天宏图信息技术有限公司 一种大气细颗粒物的反演方法及装置
CN115510767A (zh) * 2022-11-21 2022-12-23 四川省气象服务中心(四川省专业气象台 四川省气象影视中心) 基于深度时空网络的区域气温预测方法
CN115759413A (zh) * 2022-11-21 2023-03-07 合肥本源量子计算科技有限责任公司 一种气象预测方法、装置、存储介质及电子设备
CN115510767B (zh) * 2022-11-21 2023-10-27 四川省气象服务中心(四川省专业气象台 四川省气象影视中心) 基于深度时空网络的区域气温预测方法
CN115759413B (zh) * 2022-11-21 2024-06-21 本源量子计算科技(合肥)股份有限公司 一种气象预测方法、装置、存储介质及电子设备
CN117409557A (zh) * 2023-12-14 2024-01-16 成都格理特电子技术有限公司 基于动态分析的检测高温报警方法
CN117409557B (zh) * 2023-12-14 2024-02-20 成都格理特电子技术有限公司 基于动态分析的检测高温报警方法

Also Published As

Publication number Publication date
CN112862090B (zh) 2023-01-31

Similar Documents

Publication Publication Date Title
CN112862090B (zh) 一种基于深度时空神经网络的气温预报方法
US20220214322A1 (en) Air pollutants concentration forecasting method and apparatus and storage medium
CN109492822B (zh) 空气污染物浓度时空域关联预测方法
CN108197739B (zh) 一种城市轨道交通乘客流量预测方法
CN109142171B (zh) 基于特征扩张的融合神经网络的城市pm10浓度预测方法
CN114092832B (zh) 一种基于并联混合卷积网络的高分辨率遥感影像分类方法
CN110517482B (zh) 一种基于3d卷积神经网络的短时交通流预测方法
US20200135017A1 (en) Transportation network speed foreeasting method using deep capsule networks with nested lstm models
CN106651036A (zh) 空气质量预报系统
CN110766942A (zh) 一种基于卷积长短期记忆网络的交通路网拥堵预测方法
CN112906989B (zh) 一种基于cnn-lstm的区域海表面温度预测方法
CN110619419B (zh) 城市轨道交通的客流预测方法
CN111047078B (zh) 交通特征预测方法、系统及存储介质
CN113627093A (zh) 一种基于改进Unet网络的水下机构跨尺度流场特征预测方法
CN115907122A (zh) 区域电动汽车充电负荷预测方法
CN114167898A (zh) 一种无人机收集数据的全局路径规划方法及系统
CN114495036A (zh) 一种基于三阶段注意力机制的车辆轨迹预测方法
CN115760213A (zh) 短期电价预测模型的构建方法、短期电价预测方法、计算机可读介质、电子设备
Han et al. CoolVox: Advanced 3D convolutional neural network models for predicting solar radiation on building facades
CN117950082A (zh) 一种基于微地形的深度学习气象数据预报方法及装置
CN116108761B (zh) 一种耦合深度学习和hasm的区域气候模拟方法和系统
CN116403071A (zh) 基于特征重构的少样本混凝土缺陷检测方法及装置
Lestari et al. Rainfall Prediction using Spatial Convolutional Neural Networks and Recurrent Neural Networks
CN112784477A (zh) 一种基于WRF-LES和BP-PSO-Bagging相结合的风功率预测方法
Zhang Deep learning-based hybrid short-term solar forecast using sky images and meteorological data

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant