一种用于雷达回波外推的深度时空预测神经网络训练方法与流程

文档序号:15230346发布日期:2018-08-21 19:20阅读:1081来源:国知局

本发明属于大气探测中地面气象观测技术领域,尤其涉及一种用于雷达回波外推的深度时空预测神经网络训练方法。



背景技术:

对流天气临近预报是指短时内高时空分辨率的对流天气系统发生与演变过程的预报,准确、可靠且及时的预报对于防灾减灾、危险天气预警和保障国民生命财产安全等都具有重要意义。现有对流天气临近预报技术主要包括雷达回波外推预报技术、数值预报技术和概念模型预报技术等,其中雷达回波外推预报技术是对流天气临近预报的最基础手段和最有效途径。

雷达回波外推是根据已有历史雷达回波,预测未来回波的形状、位置、强度和运动信息等,以实现对对流天气系统的跟踪预报。传统的雷达回波外推方法主要包括质心追踪法、交叉相关法和光流法。质心追踪法通过计算连续的回波单体质心来确定移动矢量,进而预测未来回波位置。但质心追踪法使用范围局限于回波较强、范围较小的对流天气系统。交叉相关法将回波划分不同的追踪区域,计算相邻时刻区域之间的最优相关系数,进而确定区域间拟合关系以及实现预测。光流法通过计算连续回波的光流场得到运动矢量场,再基于运动矢量实现外推。然而,对流天气系统是动态复杂的系统,它具有作非线性运动(如旋转)、运动中有形变(如扩张和缩小)以及生消发展变化快等特征。传统雷达回波外推方法只假设回波简单线性演变,且对历史雷达回波资料利用率不足,无法有效预测回波的旋转变化和生消发展,具有精确度低、预报时效短等缺陷。

近期,深度学习技术在计算机视觉、语音识别和自然语言处理等领域得到广泛应用。深度学习本质就是通过构建合理的神经网络结构(如卷积神经网络cnn,循环神经网络rnn),使用一定的训练方法从大量数据中提取所需要的模型。在雷达回波外推问题中,具有大量的观测数据用以训练,长期积累的历史雷达回波数据也隐含了雷达回波变化规律,因此从深度学习的观点出发,可以通过训练合理的神经网络模型来解决这一难题。在众多神经网络模型中,长短期记忆网络(long-shorttermmemory,lstm)是rnn的一种变体,它通过引入门结构和记忆单元来解决长期依赖问题,是目前被广泛用于解决序列学习问题的热门网络模型之一。

基于lstm网络结构,为提高雷达回波外推的准确度和预报时效,针对雷达回波的运动变化特点,设计深度时空预测神经网络,该网络由初始化网络、编码网络和预测网络组成,编码网络和预测网络则由空间形变-时序轨迹lstm(spatialvariationandtemporaltrajectorylstm,svtt-lstm)基本构造单元时序连接并堆叠构成,网络能够有效记忆回波非线性运动、生消变化等特征。训练网络使其从历史回波数据中充分学习雷达回波运动变化规律,对于提高雷达回波外推精确度和预报时效具有重要意义。



技术实现要素:

发明目的:本发明所要解决的技术问题是针对现有的雷达回波外推方法的准确度低、预报时效短,提出了一种用于雷达回波外推的深度时空预测神经网络训练方法,实现对雷达回波的外推预测,包括以下步骤:

步骤1,模型构造:首先构造用于向编码网络输出隐藏态与初始记忆的初始化网络initialize_network,再构造用于编码输入的编码网络encode_network,最后构造用于解码输出预测序列的预测网络forecast_network;

步骤2,设置训练超参数;

步骤3,输入训练序列样本;

步骤4,前向传播:对步骤3输入的每个序列样本,初始化网络将输入序列前2个数据作为输入,前向传播输出编码网络所需的隐藏态和初始记忆;编码网络将输入序列的后续数据和初始化网络的输出作为输入,前向传播输出编码输入得到的隐藏态和记忆;预测网络将编码网络的输出作为输入,最终解码输出预测序列;

步骤5,反向传播:对步骤4前向传播得到的预测序列,计算它与步骤3输入的序列样本中对照序列的损失函数,根据损失函数计算所有网络参数的梯度,最后根据梯度和学习率更新所有网络参数;

步骤6,迭代训练深度时空预测神经网络。

步骤1包括以下步骤:

步骤1-1,构造初始网络initialize_network:初始网络由3个网络层构成,第1层网络ini_layer1将输入序列的前两个数据x1、x2作为输入,输出第1层隐藏态第1层时序轨迹初始记忆和中间记忆s0、s1

第2层网络ini_layer2将第1层隐藏态输出作为输入,输出第2层隐藏态第2层时序轨迹初始记忆和中间记忆s2

第3层网络ini_layer3将第2层隐藏态和第1、2层中间记忆s0、s1、s2作为输入,输出第3层隐藏态第3层时序轨迹初始记忆中间记忆s3和空间形变初始记忆

步骤1-2,构造编码网络encode_network:编码网络采用编码-空间形变-时序轨迹长短期记忆网络(encodespatialvariationandtemporaltrajectorylongshorttermmemory,e-svtt-lstm)作为基本构造单元,e-svtt-lstm在时序上串联,并堆叠3个网络层构成编码网络;构造编码网络,首先构造e-svtt-lstm的空间形变记忆单元,再构造结构生成子网络和e-svtt-lstm的时序轨迹记忆单元,最后构造e-svtt-lstm的输出单元;

步骤1-3,构造预测网络forecast_network:预测网络采用预测-空间形变-时序轨迹长短期记忆网络(forecastspatialvariationandtemporaltrajectorylongshorttermmemory,f-svtt-lstm)作为基本构造单元,f-svtt-lstm在时序上串联,并堆叠3个网络层构成预测网络;构造预测网络,首先调整隐藏态和f-svtt-lstm的空间形变记忆在网络层间流动方向,并改变空间形变记忆单元中卷积操作为反卷积操作,再构造结构生成子网络和f-svtt-lstm的时序轨迹记忆单元,最后构造f-svtt-lstm的输出单元和预测输出单元。

步骤1-2包括以下步骤:

步骤1-2-1,构造空间形变记忆单元:t时刻第l层编码网络的空间形变记忆从编码网络的l-1层垂直传递到l层,在编码网络顶层时则传递到下一时刻的最底层;在传递过程中,空间形变记忆在t时刻第l层编码网络的输入门和遗忘门的控制下实现信息的更新;构造空间形变记忆单元,首先构造控制信息输入进记忆的输入门,再构造控制信息被记忆所遗忘的遗忘门,最后构造空间形变记忆,构造公式如下:

其中,l∈[1,3]表示网络层数,t∈[3,10]表示时刻,σ表示sigmoid函数ο表示hadamard矩阵点积;对于当l=1时,有对于当前时刻输入当l=1时,有否则有其中xt为输入序列t时刻数据,为t时刻第l-1层的隐藏态;

对卷积核当l=1时,尺寸设为5×5,数量设为1×128,初始值设为当l=2时,尺寸设为5×5,数量设为128×64,初始值设为当l=3时,尺寸设为7×7,数量设为64×32,初始值设为对卷积核当l=1时,尺寸设为5×5,数量设为32×128,初始值设为当l=2时,尺寸设为5×5,数量设为128×64,初始值设为当l=3时,尺寸设为7×7,数量为64×32,初始值设为对偏置当l=1时,特征图数量设为128,初始值设为0,当l=2时,特征图数量设为64,初始值设为0,当l=3时,特征图数量设为32,初始值设为0;

步骤1-2-2,构造结构生成子网络:构造结构生成子网络,即构造包含1个隐藏层的卷积神经网络,网络的输入为当前时刻输入和前一时刻隐藏态输出为流场矢量网络构造公式如下:

其中,[]表示在特征维上串联叠加,c1为输入的特征图数量,c2为输入的特征图数量;则卷积核尺寸设为5×5,数量设为(c1+c2)×32,初始值设为卷积核尺寸设为5×5,数量设为32×n,初始值设为其中n表示动态连接总数;偏置特征图数量设为32,初始值设为0;偏置特征图数量设为n,初始值设为0;

步骤1-2-3,构造时序轨迹记忆单元:时序轨迹记忆在第l层编码网络中,从t-1时刻水平传递到当前时刻t;在传递过程中,时序轨迹记忆根据结构生成子网络动态调整连接拓扑,同时在输入门和遗忘门的控制下实现信息的更新;构造时序轨迹记忆单元,首先构造控制信息输入进记忆的输入门,再构造控制信息被记忆所遗忘的遗忘门,最后构造时序轨迹记忆,构造公式如下:

其中,为扭曲函数,令流场则:

其中,为流场矢量的第n个特征,表示分辨率为240×240;流场m∈rc×240×240,其特征图数量c和第l层隐藏态相同;mc,i,j表示m第c个特征图坐标为(i,j)处的值,hc,m,n表示第c个特征图坐标为(m,n)处的值,vi,j、ui,j分别表示坐标为(i,j)处的值、坐标为(i,j)处的值;

对卷积核当l=1时,尺寸设为5×5,数量设为1×128,初始值设为当l=2时,尺寸设为5×5,数量设为128×64,初始值设为当l=3时,尺寸设为7×7,数量设为64×32,初始值设为对卷积核其中n∈[1,n],当l=1时,尺寸设为1×1,数量设为128×128,初始值设为当l=2时,尺寸设为1×1,数量设为64×64,初始值设为当l=3时,尺寸设为1×1,数量设为32×32,初始值设为对卷积核当l=1时,尺寸设为5×5,数量设为128×128,初始值设为当l=2时,尺寸为5×5,数量设为64×64,初始值设为当l=3时,尺寸设为7×7,数量设为32×32,初始值设为对偏置当l=1时,特征图数量设为128,初始值设为0,当l=2时,特征图数量设为64,初始值设为0,当l=3时,特征图数量设为32,初始值设为0;

步骤1-2-4,构造e-svtt-lstm输出单元:e-svtt-lstm输出单元在输出门的控制下,融合空间形变记忆和时序轨迹记忆输出隐藏态首先构造控制信息输出的输出门,再构造隐藏态输出,构造公式如下:

其中,对卷积核当l=1时,尺寸设为5×5,数量设为1×128,初始值设为当l=2时,尺寸设为5×5,数量设为128×64,初始值设为当l=3时,尺寸设为7×7,数量设为64×32,初始值设为对卷积核当l=1时,尺寸设为1×1,数量设为128×128,初始值设为当l=2时,尺寸设为1×1,数量设为64×64,初始值设为当l=3时,尺寸设为1×1,数量设为32×32,初始值设为对卷积核当l=1时,尺寸设为5×5,数量设为128×128,初始值设为当l=2时,尺寸设为5×5,数量设为64×64,初始值设为当l=3时,尺寸设为7×7,数量设为32×32,初始值设为对卷积核当l=1时,尺寸设为5×5,数量设为256×128,初始值设为当l=2时,尺寸设为5×5,数量设为128×64,初始值设为当l=3时,尺寸设为7×7,数量设为64×32,初始值设为对偏置当l=1时,特征图数量设为128,初始值设为0,当l=2时,特征图数量设为64,初始值设为0,当l=3时,特征图数量设为32,初始值设为0。

步骤1-3包括以下步骤:

步骤1-3-1,构造空间形变记忆单元:t时刻第l层预测网络的空间形变记忆从预测网络的l+1层垂直传递到l层,在预测网络最底层时则传递到下一时刻的顶层,在传递过程中,空间形变记忆在t时刻第l层预测网络的输入门和遗忘门的控制下实现信息的更新;构造空间形变记忆单元,首先构造控制信息输入进记忆的输入门,再构造控制信息被记忆所遗忘的遗忘门,最后构造空间形变记忆,构造公式如下:

其中,l∈[1,3]表示网络层数,t∈[11,20]表示时刻;表示反卷积;对于当l=3且t≠11时,有当l=3且t=11时,有对于当前时刻输入

对卷积核当l=1时,尺寸设为5×5,数量设为64×128,初始值设为当l=2时,尺寸设为7×7,数量设为32×64,初始值设为对卷积核当l=1时,尺寸设为5×5,数量设为64×128,初始值设为当l=2时,尺寸设为7×7,数量设为32×64,初始值设为当l=3且t≠11时,尺寸设为5×5,数量设为128×32,初始值设为当l=3且t=11时,尺寸设为5×5,数量设为32×32,初始值设为对偏置当l=1时,特征图数量设为128,初始值设为0,当l=2时,特征图数量设为64,初始值设为0,当l=3时,特征图数量设为32,初始值设为0;

步骤1-3-2,构造结构生成子网络:构造结构生成子网络,即构造包含1个隐藏层的卷积神经网络,网络的输入为当前时刻输入和前一时刻隐藏态输出为流场矢量网络构造公式如下:

其中,c1为输入的特征图数量,c2为输入的特征图数量,当l=3时,无输入则记c1为0;则卷积核尺寸设为5×5,数量设为(c1+c2)×32,初始值设为卷积核尺寸设为5×5,数量设为32×n,初始值设为其中n表示动态连接总数;偏置特征图数量设为32,初始值设为0;偏置特征图数量设为n,初始值设为0;

步骤1-3-3,构造时序轨迹记忆单元:时序轨迹记忆在第l层预测网络中,从t-1时刻水平传递到当前时刻t;在传递过程中,时序轨迹记忆根据结构生成子网络动态调整连接拓扑,同时在输入和遗忘门的控制下实现信息的更新;构造时序轨迹记忆单元,首先构造控制信息输入进记忆的输入门,再构造控制信息被记忆所遗忘的遗忘门,最后构造时序轨迹记忆,构造公式如下:

其中,对卷积核当l=1时,尺寸设为5×5,数量设为64×128,初始值设为当l=2时,尺寸设为7×7,数量设为32×64,初始值设为对卷积核其中n∈[1,n],当l=1时,尺寸设为1×1,数量设为128×128,初始值设为当l=2时,尺寸设为1×1,数量设为64×64,初始值设为当l=3时,尺寸设为1×1,数量设为32×32,初始值设为对卷积核当l=1时,尺寸设为5×5,数量设为128×128,初始值设为当l=2时,尺寸设为5×5,数量设为64×64,初始值设为当l=3时,尺寸设为7×7,数量设为32×32,初始值设为对偏置当l=1时,特征图数量设为128,初始值设为0,当l=2时,特征图数量设为64,初始值设为0,当l=3时,特征图数量设为32,初始值设为0;

步骤1-3-4,构造f-svtt-lstm输出单元:f-svtt-lstm输出单元在输出门的控制下,融合空间形变记忆和时序轨迹记忆输出隐藏态构造输出单元,首先构造控制信息输出的输出门,再构造隐藏态输出,构造公式如下:

其中,对卷积核当l=1时,尺寸设为5×5,数量设为64×128,初始值设为当l=2时,尺寸设为7×7,数量设为32×64,初始值设为对卷积核当l=1时,尺寸设为1×1,数量设为128×128,初始值设为当l=2时,尺寸设为1×1,数量设为64×64,初始值设为当l=3时,尺寸设为1×1,数量设为32×32,初始值设为对卷积核当l=1时,尺寸设为5×5,数量设为128×128,初始值设为当l=2时,尺寸设为5×5,数量设为64×64,初始值设为当l=3时,尺寸设为7×7,数量设为32×32,初始值设为对卷积核当l=1时,尺寸设为5×5,数量设为256×128,初始值设为当l=2时,尺寸设为5×5,数量设为128×64,初始值设为当l=3时,尺寸设为7×7,数量设为64×32,初始值设为对偏置当l=1时,特征图数量设为128,初始值设为0,当l=2时,特征图数量设为64,初始值设为0,当l=3时,特征图数量设为32,初始值设为0;

步骤1-3-5,构造预测输出单元:预测输出单元将预测网络第1层输出的隐藏态转化为预测输出构造公式如下:

其中,卷积核whx-f尺寸设为5×5,数量设为128×1,初始值设为偏置bhx-f特征图数量设为1,初始值设为0。

步骤2包括:将网络初始学习率λ0设为0.0001,学习率衰减系数α设为0.95,衰减速度β设为100,当前网络学习率λ根据训练步数train_step确定,公式如下:

其中,训练步数train_step初始设为1,每进行一次网络训练训练步数将加1;

训练时每次输入网络的序列样本数量batch_size设为10;每一轮迭代的最大批训练次数设为max_batch_step,初始批训练次数batch_step设为1;训练的最大迭代次数为max_iteration_step=100,初始迭代次数iteration_step=1;其中最大批训练次数由如下公式确定:

其中,count_of_sequence表示序列总数。

步骤3包括:采用批训练的形式,从训练序列样本集中读取batch_size个序列样本输入网络中进行训练,每个序列样本为sequence={input,contrast},共20个数据,其中input={x1,x2,...,x10}作为输入序列,x1,x2,...,x10是输入序列中第1到第10个数据,contrast={x11,x12,...x20}作为对照序列,x11,x12,...,x20是输入序列中第1到第10个数据。

步骤4前向传播包括以下步骤:

步骤4-1,输出初始状态:对步骤3输入的batch_size个序列样本的每个序列样本,初始化网络将其输入序列10个数据中的前2个数据x1、x2作为输入,其中x1,x2∈r1×240×240,r表示实数域,1×240×240表示特征数为1,分辨率为240×240;

x1、x2输入初始化网络的第1层网络ini_layer1,经过前向传播后得到第1层网络输出第1层隐藏态第1层时序轨迹初始记忆和中间记忆s0、s1,前向传播公式如下:

其中,卷积核和偏置的初始值在步骤1-1构造时已确定,之后每迭代训练一次将更新一次;输出s0,s1∈r32×240×240

输入初始化网络的第2层网络ini_layer2,经过前向传播后得到第2层网络输出第2层隐藏态第2层时序轨迹初始记忆和中间记忆s2,前向传播公式如下:

其中,卷积核和偏置的初始值在步骤1-1构造时已确定,之后每迭代训练一次将更新一次;输出s2∈r32×240×240

s0、s1、s2输入初始化网络的第3层网络ini_layer3,经过前向传播后得到第3层网络输出第3层隐藏态第3层时序轨迹初始记忆中间记忆s3和空间形变初始记忆前向传播公式如下:

其中,卷积核和偏置的初始值在步骤1-1构造时已确定,之后每迭代训练一次将更新一次;输出

经过前向传播,初始化网络完成隐藏态和记忆的初始化,最终向编码网络输出隐藏态时序轨迹初始记忆和空间形变初始记忆

步骤4-2,输入序列编码:对步骤3输入的batch_size个序列样本的每个序列样本,编码网络将其输入序列10个数据中的后8个数据x3、x4、...、x10,以及步骤4-1初始化网络输出的隐藏态和初始记忆共同作为输入,其中x3,...,x10∈r1×240×240

当t=3时,x3、输入第1层e-svtt-lstm,输出随后输入第2层e-svtt-lstm,输出最后输入第3层e-svtt-lstm,输出e-svtt-lstm的前向传播公式如下:

其中,卷积核和偏置的初始值在步骤1-2构造时已确定,之后每迭代训练一次将更新一次;输出

当t=10时,x10、输入第1层e-svtt-lstm,输出随后输入第2层e-svtt-lstm,输出最后输入第3层e-svtt-lstm,输出其中,

经过前向传播,编码网络完成对输入序列的编码,最终向预测网络输出隐藏态时序轨迹记忆和空间形变记忆

步骤4-3,预测序列输出:预测网络将步骤4-2编码网络编码输入得到的状态和记忆作为输入;

当t=11时,输入第3层f-svtt-lstm,输出随后输入第2层f-svtt-lstm,输出最后输入第1层f-svtt-lstm,输出输入f-svtt-lstm的预测输出单元,输出预测序列第1帧f-svtt-lstm的前向传播公式如下:

其中,卷积核和偏置的初始值在步骤1-3构造时已确定,之后每迭代训练一次将更新一次;输出

当t=20时,输入第3层f-svtt-lstm,输出随后输入第2层f-svtt-lstm,输出最后输入第1层f-svtt-lstm,输出输入f-svtt-lstm的预测输出单元,输出预测序列第10帧

经过前向传播,预测网络完成对编码得到的隐藏态和记忆的解码,最终输出预测序列

步骤5包括以下步骤:

步骤5-1,计算损失函数:对步骤4前向传播得到的预测序列和步骤3输入的序列样本中的对照序列x11,x12,...,x20计算均方误差和平均绝对误差之和作为损失函数l:

其中,表示batch_size个序列样本的第n个序列样本中,时刻为t的数据的坐标为(i,j)的数据值,表示batch_size个序列样本的第n个序列样本前向传播得到的预测序列中,时刻为t的数据的坐标为(i,j)的数据值;

步骤5-2,计算网络参数梯度:通过求偏导计算步骤5-1得到的损失函数对每个网络参数的梯度

其中,步骤1模型构造中所有卷积核和偏置参数构成网络参数总体,θi(i∈[1,n])表示第i个网络参数,n表示参数总数;

步骤5-3,更新网络参数:用当前网络学习率λ乘以步骤5-2计算得到的网络参数梯度得到网络参数修正项,将原网络参数和修正项相减即实现网络参数的更新,公式如下:

其中,θ′i表示更新后的网络参数。

步骤6中,迭代训练深度时空预测神经网络的过程包括以下三种情况:

若训练序列样本集中存在未用于训练的序列样本,即batch_step<max_batch_step,则返回步骤3继续读取batch_size个序列样本输入网络进行训练;

若训练序列样本集中所有序列样本均已用于训练,即batch_step=max_batch_step,且当前迭代次数小于最大迭代次数,即iteration_step<max_iteration_step,则设置batch_step=1,返回步骤3继续读取batch_size个序列样本输入网络进行训练;

若训练序列样本集中所有序列样本均已用于训练,即batch_step=max_batch_step,且当前迭代次数等于最大迭代次数,即iteration_step=max_iteration_step,则结束深度时空预测神经网络训练。

有益效果:基于深度时空预测神经网络,在雷达回波数据集上进行训练,并利用训练好的网络进行雷达回波外推,有效提高了雷达回波外推的准确度和预报时效。

具体而言本发明与已有方法相比有以下优点:1、外推准确度高,与其他方法比较,本发明中深度时空预测神经网络能够有效记忆回波非线性运动、生消变化等特征,精确度更高;2、外推时效长,可以通过调整网络结构增加预测序列输出数据帧数来进一步提高外推时效。

附图说明

下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述或其他方面的优点将会变得更加清楚。

图1为本发明流程图。

图2为深度时空预测神经网络模型图。

图3为e-svtt-lstm结构图。

图4为f-svtt-lstm结构图。

具体实施方式

本发明公开一种用于雷达回波外推的深度时空预测神经网络训练方法,如图1所示,包括以下步骤:

步骤1,模型构造:如图2所示,构造深度时空预测神经网络模型;首先构造用于向编码网络输出隐藏态与初始记忆的初始化网络initialize_network,再构造用于编码输入的编码网络encode_network,最后构造用于解码输出预测序列的预测网络forecast_network;

步骤2,设置训练超参数;

步骤3,输入训练序列样本;

步骤4,前向传播:对步骤3输入的每个序列样本,初始化网络将输入序列前2个数据作为输入,前向传播输出编码网络所需的隐藏态和初始记忆;编码网络将输入序列的后续数据和初始化网络的输出作为输入,前向传播输出编码输入得到的隐藏态和记忆;预测网络将编码网络的输出作为输入,最终解码输出预测序列;

步骤5,反向传播:对步骤4前向传播得到的预测序列,计算它与步骤3输入的序列样本中对照序列的损失函数,根据损失函数计算所有网络参数的梯度,最后根据梯度和学习率更新所有网络参数;

步骤6,迭代训练深度时空预测神经网络。

步骤1包括以下步骤:

步骤1-1,构造初始网络initialize_network:初始网络由3个网络层构成,第1层网络ini_layer1将输入序列的前两个数据x1、x2作为输入,输出第1层隐藏态第1层时序轨迹初始记忆和中间记忆s0、s1,网络构造公式如下:

其中,*表示卷积,tanh为激活函数双曲正切卷积核尺寸设为5×5,数量设为1×128,初始值设为random表示以均匀分布方式随机取值;卷积核尺寸设为5×5,数量设为128×128,初始值设为卷积核尺寸设为5×5,数量设为1×32,初始值设为卷积核尺寸设为5×5,数量设为128×32,初始值设为偏置特征图数量设为128,初始值设为0;偏置特征图数量设为32,初始值设为0;

第2层网络ini_layer2将第1层隐藏态输出作为输入,输出第2层隐藏态第2层时序轨迹初始记忆和中间记忆s2,网络构造公式如下:

其中,卷积核尺寸设为5×5,数量设为128×64,初始值设为卷积核尺寸设为5×5,数量设为64×64,初始值设为卷积核尺寸设为5×5,数量设为64×32,初始值设为偏置特征图数量设为64,初始值设为0;偏置特征图数量设为32,初始值设为0;

第3层网络ini_layer3将第2层隐藏态和第1、2层中间记忆s0、s1、s2作为输入,输出第3层隐藏态第3层时序轨迹初始记忆中间记忆s3和空间形变初始记忆网络构造公式如下:

其中,卷积核尺寸设为7×7,数量设为64×32,初始值设为卷积核尺寸设为7×7,数量设为32×32,初始值设为偏置bhs-i特征图数量设为32,初始值设为0;

步骤1-2,构造编码网络encode_network:编码网络采用编码-空间形变-时序轨迹长短期记忆网络(encodespatialvariationandtemporaltrajectorylongshorttermmemory,e-svtt-lstm)作为基本构造单元,e-svtt-lstm结构如图3所示,e-svtt-lstm在时序上串联,并堆叠3个网络层构成编码网络;构造编码网络,首先构造e-svtt-lstm的空间形变记忆单元,再构造结构生成子网络和e-svtt-lstm的时序轨迹记忆单元,最后构造e-svtt-lstm的输出单元;

步骤1-3,构造预测网络forecast_network:预测网络采用预测-空间形变-时序轨迹长短期记忆网络(forecastspatialvariationandtemporaltrajectorylongshorttermmemory,f-svtt-lstm)作为基本构造单元,f-svtt-lstm结构如图4所示,f-svtt-lstm在时序上串联,并堆叠3个网络层构成预测网络;构造预测网络,首先调整隐藏态和f-svtt-lstm的空间形变记忆在网络层间流动方向,并改变空间形变记忆单元中卷积操作为反卷积操作,再构造结构生成子网络和f-svtt-lstm的时序轨迹记忆单元,最后构造f-svtt-lstm的输出单元和预测输出单元。

步骤1-2包括以下步骤:

步骤1-2-1,构造空间形变记忆单元:t时刻第l层编码网络的空间形变记忆从编码网络的l-1层垂直传递到l层,在编码网络顶层时则传递到下一时刻的最底层;在传递过程中,空间形变记忆在t时刻第l层编码网络的输入门和遗忘门的控制下实现信息的更新;构造空间形变记忆单元,首先构造控制信息输入进记忆的输入门,再构造控制信息被记忆所遗忘的遗忘门,最后构造空间形变记忆,构造公式如下:

其中,l∈[1,3]表示网络层数,t∈[3,10]表示时刻,σ表示sigmoid函数ο表示hadamard矩阵点积;对于当l=1时,有对于当前时刻输入当l=1时,有否则有其中xt为输入序列t时刻数据,为t时刻第l-1层的隐藏态;

对卷积核当l=1时,尺寸设为5×5,数量设为1×128,初始值设为当l=2时,尺寸设为5×5,数量设为128×64,初始值设为当l=3时,尺寸设为7×7,数量设为64×32,初始值设为对卷积核当l=1时,尺寸设为5×5,数量设为32×128,初始值设为当l=2时,尺寸设为5×5,数量设为128×64,初始值设为当l=3时,尺寸设为7×7,数量为64×32,初始值设为对偏置当l=1时,特征图数量设为128,初始值设为0,当l=2时,特征图数量设为64,初始值设为0,当l=3时,特征图数量设为32,初始值设为0;

步骤1-2-2,构造结构生成子网络:构造结构生成子网络,即构造包含1个隐藏层的卷积神经网络,网络的输入为当前时刻输入和前一时刻隐藏态输出为流场矢量网络构造公式如下:

其中,[]表示在特征维上串联叠加,c1为输入的特征图数量,c2为输入的特征图数量;则卷积核尺寸设为5×5,数量设为(c1+c2)×32,初始值设为卷积核尺寸设为5×5,数量设为32×n,初始值设为其中n表示动态连接总数;偏置特征图数量设为32,初始值设为0;偏置特征图数量设为n,初始值设为0;

步骤1-2-3,构造时序轨迹记忆单元:时序轨迹记忆在第l层编码网络中,从t-1时刻水平传递到当前时刻t;在传递过程中,时序轨迹记忆根据结构生成子网络动态调整连接拓扑,同时在输入门和遗忘门的控制下实现信息的更新;构造时序轨迹记忆单元,首先构造控制信息输入进记忆的输入门,再构造控制信息被记忆所遗忘的遗忘门,最后构造时序轨迹记忆,构造公式如下:

其中,为扭曲函数,令流场则:

其中,为流场矢量的第n个特征,表示分辨率为240×240;流场m∈rc×240×240,其特征图数量c和第l层隐藏态相同;mc,i,j表示m第c个特征图坐标为(i,j)处的值,hc,m,n表示第c个特征图坐标为(m,n)处的值,vi,j、ui,j分别表示坐标为(i,j)处的值、坐标为(i,j)处的值;

对卷积核当l=1时,尺寸设为5×5,数量设为1×128,初始值设为当l=2时,尺寸设为5×5,数量设为128×64,初始值设为当l=3时,尺寸设为7×7,数量设为64×32,初始值设为对卷积核其中n∈[1,n],当l=1时,尺寸设为1×1,数量设为128×128,初始值设为当l=2时,尺寸设为1×1,数量设为64×64,初始值设为当l=3时,尺寸设为1×1,数量设为32×32,初始值设为对卷积核当l=1时,尺寸设为5×5,数量设为128×128,初始值设为当l=2时,尺寸为5×5,数量设为64×64,初始值设为当l=3时,尺寸设为7×7,数量设为32×32,初始值设为对偏置当l=1时,特征图数量设为128,初始值设为0,当l=2时,特征图数量设为64,初始值设为0,当l=3时,特征图数量设为32,初始值设为0;

步骤1-2-4,构造e-svtt-lstm输出单元:e-svtt-lstm输出单元在输出门的控制下,融合空间形变记忆和时序轨迹记忆输出隐藏态首先构造控制信息输出的输出门,再构造隐藏态输出,构造公式如下:

其中,对卷积核当l=1时,尺寸设为5×5,数量设为1×128,初始值设为当l=2时,尺寸设为5×5,数量设为128×64,初始值设为当l=3时,尺寸设为7×7,数量设为64×32,初始值设为对卷积核当l=1时,尺寸设为1×1,数量设为128×128,初始值设为当l=2时,尺寸设为1×1,数量设为64×64,初始值设为当l=3时,尺寸设为1×1,数量设为32×32,初始值设为对卷积核当l=1时,尺寸设为5×5,数量设为128×128,初始值设为当l=2时,尺寸设为5×5,数量设为64×64,初始值设为当l=3时,尺寸设为7×7,数量设为32×32,初始值设为对卷积核当l=1时,尺寸设为5×5,数量设为256×128,初始值设为当l=2时,尺寸设为5×5,数量设为128×64,初始值设为当l=3时,尺寸设为7×7,数量设为64×32,初始值设为对偏置当l=1时,特征图数量设为128,初始值设为0,当l=2时,特征图数量设为64,初始值设为0,当l=3时,特征图数量设为32,初始值设为0。

步骤1-3包括以下步骤:

步骤1-3-1,构造空间形变记忆单元:t时刻第l层预测网络的空间形变记忆从预测网络的l+1层垂直传递到l层,在预测网络最底层时则传递到下一时刻的顶层,在传递过程中,空间形变记忆在t时刻第l层预测网络的输入门和遗忘门的控制下实现信息的更新;构造空间形变记忆单元,首先构造控制信息输入进记忆的输入门,再构造控制信息被记忆所遗忘的遗忘门,最后构造空间形变记忆,构造公式如下:

其中,l∈[1,3]表示网络层数,t∈[11,20]表示时刻;表示反卷积;对于当l=3且t≠11时,有当l=3且t=11时,有对于当前时刻输入

对卷积核当l=1时,尺寸设为5×5,数量设为64×128,初始值设为当l=2时,尺寸设为7×7,数量设为32×64,初始值设为对卷积核当l=1时,尺寸设为5×5,数量设为64×128,初始值设为当l=2时,尺寸设为7×7,数量设为32×64,初始值设为当l=3且t≠11时,尺寸设为5×5,数量设为128×32,初始值设为当l=3且t=11时,尺寸设为5×5,数量设为32×32,初始值设为对偏置当l=1时,特征图数量设为128,初始值设为0,当l=2时,特征图数量设为64,初始值设为0,当l=3时,特征图数量设为32,初始值设为0;

步骤1-3-2,构造结构生成子网络:构造结构生成子网络,即构造包含1个隐藏层的卷积神经网络,网络的输入为当前时刻输入和前一时刻隐藏态输出为流场矢量网络构造公式如下:

其中,c1为输入的特征图数量,c2为输入的特征图数量,当l=3时,无输入则记c1为0;则卷积核尺寸设为5×5,数量设为(c1+c2)×32,初始值设为卷积核尺寸设为5×5,数量设为32×n,初始值设为其中n表示动态连接总数;偏置特征图数量设为32,初始值设为0;偏置特征图数量设为n,初始值设为0;

步骤1-3-3,构造时序轨迹记忆单元:时序轨迹记忆在第l层预测网络中,从t-1时刻水平传递到当前时刻t;在传递过程中,时序轨迹记忆根据结构生成子网络动态调整连接拓扑,同时在输入门和遗忘门的控制下实现信息的更新;构造时序轨迹记忆单元,首先构造控制信息输入进记忆的输入门,再构造控制信息被记忆所遗忘的遗忘门,最后构造时序轨迹记忆,构造公式如下:

其中,对卷积核当l=1时,尺寸设为5×5,数量设为64×128,初始值设为当l=2时,尺寸设为7×7,数量设为32×64,初始值设为对卷积核其中n∈[1,n],当l=1时,尺寸设为1×1,数量设为128×128,初始值设为当l=2时,尺寸设为1×1,数量设为64×64,初始值设为当l=3时,尺寸设为1×1,数量设为32×32,初始值设为对卷积核当l=1时,尺寸设为5×5,数量设为128×128,初始值设为当l=2时,尺寸设为5×5,数量设为64×64,初始值设为当l=3时,尺寸设为7×7,数量设为32×32,初始值设为对偏置当l=1时,特征图数量设为128,初始值设为0,当l=2时,特征图数量设为64,初始值设为0,当l=3时,特征图数量设为32,初始值设为0;

步骤1-3-4,构造f-svtt-lstm输出单元:f-svtt-lstm输出单元在输出门的控制下,融合空间形变记忆和时序轨迹记忆输出隐藏态构造输出单元,首先构造控制信息输出的输出门,再构造隐藏态输出,构造公式如下:

其中,对卷积核当l=1时,尺寸设为5×5,数量设为64×128,初始值设为当l=2时,尺寸设为7×7,数量设为32×64,初始值设为对卷积核当l=1时,尺寸设为1×1,数量设为128×128,初始值设为当l=2时,尺寸设为1×1,数量设为64×64,初始值设为当l=3时,尺寸设为1×1,数量设为32×32,初始值设为对卷积核当l=1时,尺寸设为5×5,数量设为128×128,初始值设为当l=2时,尺寸设为5×5,数量设为64×64,初始值设为当l=3时,尺寸设为7×7,数量设为32×32,初始值设为对卷积核当l=1时,尺寸设为5×5,数量设为256×128,初始值设为当l=2时,尺寸设为5×5,数量设为128×64,初始值设为当l=3时,尺寸设为7×7,数量设为64×32,初始值设为对偏置当l=1时,特征图数量设为128,初始值设为0,当l=2时,特征图数量设为64,初始值设为0,当l=3时,特征图数量设为32,初始值设为0;

步骤1-3-5,构造预测输出单元:预测输出单元将预测网络第1层输出的隐藏态转化为预测输出构造公式如下:

其中,卷积核whx-f尺寸设为5×5,数量设为128×1,初始值设为偏置bhx-f特征图数量设为1,初始值设为0。

步骤2包括:将网络初始学习率λ0设为0.0001,学习率衰减系数α设为0.95,衰减速度β设为100,当前网络学习率λ根据训练步数train_step确定,公式如下:

其中,训练步数train_step初始设为1,每进行一次网络训练训练步数将加1;

训练时每次输入网络的序列样本数量batch_size设为10;每一轮迭代的最大批训练次数设为max_batch_step,初始批训练次数batch_step设为1;训练的最大迭代次数为max_iteration_step=100,初始迭代次数iteration_step=1;其中最大批训练次数由如下公式确定:

其中,count_of_sequence表示序列总数。

步骤3包括:采用批训练的形式,从训练序列样本集中读取batch_size个序列样本输入网络中进行训练,每个序列样本为sequence={input,contrast},共20个数据,其中input={x1,x2,...,x10}作为输入序列,x1,x2,...,x10是输入序列中第1到第10个数据,contrast={x11,x12,...x20}作为对照序列,x11,x12,...,x20是输入序列中第1到第10个数据。

步骤4前向传播包括以下步骤:

步骤4-1,输出初始状态:对步骤3输入的batch_size个序列样本的每个序列样本,初始化网络将其输入序列10个数据中的前2个数据x1、x2作为输入,其中x1,x2∈r1×240×240,r表示实数域,1×240×240表示特征数为1,分辨率为240×240;

x1、x2输入初始化网络的第1层网络ini_layer1,经过前向传播后得到第1层网络输出第1层隐藏态第1层时序轨迹初始记忆和中间记忆s0、s1,前向传播公式如下:

其中,卷积核和偏置的初始值在步骤1-1构造时已确定,之后每迭代训练一次将更新一次;输出s0,s1∈r32×240×240

输入初始化网络的第2层网络ini_layer2,经过前向传播后得到第2层网络输出第2层隐藏态第2层时序轨迹初始记忆和中间记忆s2,前向传播公式如下:

其中,卷积核和偏置的初始值在步骤1-1构造时已确定,之后每迭代训练一次将更新一次;输出s2∈r32×240×240

s0、s1、s2输入初始化网络的第3层网络ini_layer3,经过前向传播后得到第3层网络输出第3层隐藏态第3层时序轨迹初始记忆中间记忆s3和空间形变初始记忆前向传播公式如下:

其中,卷积核和偏置的初始值在步骤1-1构造时已确定,之后每迭代训练一次将更新一次;输出

经过前向传播,初始化网络完成隐藏态和记忆的初始化,最终向编码网络输出隐藏态时序轨迹初始记忆和空间形变初始记忆

步骤4-2,输入序列编码:对步骤3输入的batch_size个序列样本的每个序列样本,编码网络将其输入序列10个数据中的后8个数据x3、x4、...、x10,以及步骤4-1初始化网络输出的隐藏态和初始记忆共同作为输入,其中x3,...,x10∈r1×240×240

当t=3时,x3、输入第1层e-svtt-lstm,输出随后输入第2层e-svtt-lstm,输出最后输入第3层e-svtt-lstm,输出e-svtt-lstm的前向传播公式如下:

其中,卷积核和偏置的初始值在步骤1-2构造时已确定,之后每迭代训练一次将更新一次;输出

当t=10时,x10、输入第1层e-svtt-lstm,输出随后输入第2层e-svtt-lstm,输出最后输入第3层e-svtt-lstm,输出

其中,

经过前向传播,编码网络完成对输入序列的编码,最终向预测网络输出隐藏态时序轨迹记忆和空间形变记忆

步骤4-3,预测序列输出:预测网络将步骤4-2编码网络编码输入得到的状态和记忆作为输入;

当t=11时,输入第3层f-svtt-lstm,输出随后输入第2层f-svtt-lstm,输出最后输入第1层f-svtt-lstm,输出输入f-svtt-lstm的预测输出单元,输出预测序列第1帧f-svtt-lstm的前向传播公式如下:

其中,卷积核和偏置的初始值在步骤1-3构造时已确定,之后每迭代训练一次将更新一次;输出

当t=20时,输入第3层f-svtt-lstm,输出随后输入第2层f-svtt-lstm,输出最后输入第1层f-svtt-lstm,输出输入f-svtt-lstm的预测输出单元,输出预测序列第10帧

经过前向传播,预测网络完成对编码得到的隐藏态和记忆的解码,最终输出预测序列

步骤5包括以下步骤:

步骤5-1,计算损失函数:对步骤4前向传播得到的预测序列和步骤3输入的序列样本中的对照序列x11,x12,...,x20计算均方误差和平均绝对误差之和作为损失函数l:

其中,表示batch_size个序列样本的第n个序列样本中,时刻为t的数据的坐标为(i,j)的数据值,表示batch_size个序列样本的第n个序列样本前向传播得到的预测序列中,时刻为t的数据的坐标为(i,j)的数据值;

步骤5-2,计算网络参数梯度:通过求偏导计算步骤5-1得到的损失函数对每个网络参数的梯度

其中,步骤1模型构造中所有卷积核和偏置参数构成网络参数总体,θi(i∈[1,n])表示第i个网络参数,n表示参数总数;

步骤5-3,更新网络参数:用当前网络学习率λ乘以步骤5-2计算得到的网络参数梯度得到网络参数修正项,将原网络参数和修正项相减即实现网络参数的更新,公式如下:

其中,θ′i表示更新后的网络参数。

步骤6中,迭代训练深度时空预测神经网络的过程包括以下三种情况:

若训练序列样本集中存在未用于训练的序列样本,即batch_step<max_batch_step,则返回步骤3继续读取batch_size个序列样本输入网络进行训练;

若训练序列样本集中所有序列样本均已用于训练,即batch_step=max_batch_step,且当前迭代次数小于最大迭代次数,即iteration_step<max_iteration_step,则设置batch_step=1,返回步骤3继续读取batch_size个序列样本输入网络进行训练;

若训练序列样本集中所有序列样本均已用于训练,即batch_step=max_batch_step,且当前迭代次数等于最大迭代次数,即iteration_step=max_iteration_step,则结束深度时空预测神经网络训练。

本发明方法中,通过如下方式获取训练序列样本集:对给定的多普勒天气雷达基数据,通过数据插值得到等高平面位置显示(constantaltitudeplanpositionindicator,cappi)数据,将cappi数据转换为归一化灰度数据,基于归一化灰度数据集划分得到训练序列样本集,具体包括如下步骤:

步骤a-1,数据插值:基于反距离加权法进行数据插值,首先通过坐标变换将多普勒天气雷达基数据的空间极坐标转化为空间直角坐标,并划分插值网格,再遍历所有空间直角坐标点,计算其对影响范围内所有插值网格点的权重和贡献值,最后遍历所有网格点,计算插值后网格点数据,得到cappi数据;

步骤a-2,数据转换:对步骤a-1数据插值得到的cappi数据,通过分辨率调整转化为分辨率240×240的数据,再通过数据映射和归一化将反射率数据转化为归一化灰度数据;

步骤a-3,样本集划分:对步骤a-2数据转换得到的归一化灰度数据集按时间顺序排列,将数据分段划分为序列并汇总得到序列样本总集,再划分得到训练序列样本集。

本发明步骤a-1数据插值包括以下步骤:

步骤a-1-1,坐标变换:通过坐标变换将多普勒天气雷达基数据的空间极坐标数据转化为空间直角坐标数据;多普勒天气雷达基数据根据空间极坐标确定空间位置,可表示为(r,θ,φ),其中r表示坐标点到原点距离,θ表示仰角,φ表示方位角,将其变换为空间直角坐标(x,y,z),其中x表示水平橫坐标,y表示水平纵坐标,z表示垂直高度,变换公式如下:

其中,r表示地球半径。

步骤a-1-2,插值网格划分:设定插值网格橫、纵坐标值域为[-480,480],网格分辨率为1,划分出分辨率为960×960的插值网格;

步骤a-1-3,权重和贡献值计算:遍历步骤a-1-1坐标变换后得到的每一空间直角坐标点,计算其对所有影响插值网格点的权重和贡献值,并存储于对应网格点的权重矩阵weight_matrix和贡献值矩阵contribution_matrix中。其中,空间直角坐标点影响的插值网格点集表示为:

其中,(x,y,z)表示空间直角坐标点坐标,(x′,y′)表示插值网格点坐标,height表示cappi高度,affect_radius表示影响半径。

基于反距离加权进行数据插值,则坐标点对网格点影响权重w随两者距离增加指数级衰减,贡献值c则等于权重和坐标点数据值乘积,计算公式如下:

w=d-2

c=w×reflectivity

其中,d表示空间直角坐标点和网格点间的距离,reflectivity表示空间直角坐标点的反射率数据值;

步骤a-1-4,插值数据计算:对步骤a-1-2插值网格划分得到的每一插值网格点,cappi数据cappi_data等于坐标点数据值的加权平均;可通过对其贡献值矩阵contribution_matrix中所有贡献值c求和,除以权重矩阵weight_matrix中所有权重w的和来计算得到,计算公式如下:

本发明步骤a-2数据转换包括以下步骤:

步骤a-2-1,分辨率调整:对步骤a-1数据插值得到的cappi数据,通过裁剪保留中间区域分辨率为480×480部分数据,再通过数据压缩将裁剪后数据分辨率压缩至240×240,将分辨率调整后的反射率cappi数据记为adjustment_data;

步骤a-2-2,数据映射和归一化:对步骤a-2-1分辨率调整后得到的反射率数据adjustment_data,将其映射为值域[0,255]的灰度pixel数据,再通过归一化处理得到归一化灰度数据normalization_pixel。数据映射公式如下:

其中,表示向下取整。

数据归一化公式为:

最终得到的归一化灰度数据特征数为1,分辨率为240×240。

本发明步骤a-3样本集划分包括以下步骤:

步骤a-3-1,序列划分:将步骤1-2数据转换得到的归一化灰度数据normalization_pixel汇总得到归一化灰度数据集,再将其中数据分段划分为序列;首先将数据按时间顺序排列,随后将每20个数据划分为一个序列sequence,其中,前10个数据作为输入序列input,后10个数据作为对照序列contrast,且在划分时相邻序列之间有10个重叠数据,即前一序列的对照序列将作为后一序列的输入序列,序列可表示为:

sequence={input,contrast}

其中,input={x1,x2,...,x10},contrast={x11,x12,...,x20},x1,x2,...,x10表示输入序列input中第1到第10个数据,x11,x12,...,x20表示对照序列contrast中第1到第10个数据;

序列总数count_of_sequence则由如下公式确定:

其中,n表示归一化灰度数据集数据总数;

步骤a-3-2,序列集划分:对步骤a-3-1序列划分得到的所有序列汇总为序列样本总集total_sequence_set,按照比例将序列样本总集中所有序列随机划分出训练序列样本集train_sequence_set。

本发明提供了一种用于雷达回波外推的深度时空预测神经网络训练方法,具体实现该技术方案的方法和途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各组成部分均可用现有技术加以实现。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1