尹麒名 甘建红 漆慧 胡文东 张莹 黎仁国 唐旺
(1 成都信息工程大学,成都 610200; 2 西华师范大学,南充 637002)
雷达回波图像外推可视为对时间序列图像变化趋势的估计和预测,即用“现在”之前的一段时间内雷达回波图像预测“未来”一定时间内的雷达回波图像。这项工作在气象领域称为雷达预测外推或直接称为雷达外推。临近预报通常是指对未来0~2 h内的天气预报,临近强降水预报目标是准确、及时地预报未来0~2 h内区域降水强度和分布[1],较短时预报、短期预报、中期预报而言更具有挑战性,雷达回波外推结果能为临近降水预报提供直观的雷达图象参考,是临近预报主要参考气象资料之一[2],如何快速、准确地外推出气象雷达图像序列已成为气象领域研究的热点之一。
雷达回波外推目的是指根据气象雷达图象预测“未来”的雷达图象,确定回波的强度分布、回波体的移动速度和方向,进而分析强回波相关状态生成、发展、消亡的过程。传统基于形态学的雷达回波外推技术主要有单体质心法[3]和交叉相关法[4]。单体质心法是简化目标,适用于较大目标跟踪预报,当雷达回波比较零散或出现合并、分裂现象时,外推预报的准确度会受到很大影响[5]。交叉相关法是选取两个连续时次的空间优化相关系数建立拟合关系,对于回波变化较为快速的强对流天气过程,很难保证外推追踪的精度,外推效果将会降低[6]。光流法由Gibson于1950提出[7],在图像和视频处理领域光流法常用于运动矢量估计,正是具有能捕捉运动信息的功能,近年来光流法也应用于多普勒天气雷达回波图像外推[8-12]。光流法本质是利用相邻两个图像估计运动矢量,在时间域内没有充分利用更长时间上图像信息。
陈家慧等[13]将BP人工神经网络应用于回波图象外推,神经网络通过“学习”掌握了一定的规律,得到了较高准确度的外推结果,但是BP网络输入特征需要通过特征工程手工方式获取,所获取特征的质量对外推结果影响很大。
深度学习是机器学习中近几年发展最为迅速的领域,在图像识别、自然语言处理、决策分析等领域表现出优良的性能。雷达回波图像外推本质上是时间序列数据预测,目前深度学习中的循环神经网络(Recurrent Neural Network,RNN)模型和长短期记忆(Long Short-Term Memory,LSTM)模型[14-16]是解决时序问题的有效模型。
施行健改进全连接FC-LSTM(Fully Connected LSTM)深度学习模型提出了基于卷积运算的长短记忆模型(ConvLSTM)[17]和TrajGRU模型[18],在雷达回波图像外推试验中效果得到明显提升,其中ConvLSTM模型是针对FC-LSTM没有考虑空间相关性而将卷积应用于模型“输入到状态”和“状态到状态”计算改进模型,去除了大量空间冗余数据,该模型从输入到状态以及状态到状态的转换中都具有卷积结构,通过堆叠多个ConvLSTM层形成编码预测网络结构,构建用于临近预报的端到端训练模型。但是ConvLSTM的卷积尺寸固定且不会随空间位置变化而变化,施行健进一步改进得到TrajGRU模型,该模型可以主动学习循环连接中的位置变量结构,比ConvLSTM更灵活。文献[17]将ConvLSTM与两种基于光流的外推算法(ROVER及其非线性变体)进行试验对比,光流法中首先对输入图像进行非线性变化,然后计算基于变化图像的运动矢量场。试验结果均表明,基于作者改进后的循环网络深度学习模型外推效果优于传统光流法。
针对雷达回波图像的外推领域,本文从两个方面进行了改进:①对错报、漏报的像素给以不同的权重改进损失函数;②增加更多高度层数据作为深度学习模型输入,以反应空间中上下层空间的相关性。该改进方法具有一定的通用性,能应用于ConvLSTM模型和TrajGRU模型进行改进。试验证明,进行算法改进后的雷达外推图像更为清晰准确。
长短期记忆网络作为一种特殊的RNN结构,已经证明在处理各种长期依赖性问题(Long Term Dependency)中具有很好的稳健性和高性能[19]。LSTM中引入了3个门函数:输入门、遗忘门和输出门来控制输入值、记忆值和输出值。而GRU模型中只有两个门,分别是更新门和重置门。由图1可以看出它与LSTM记忆块的区别在于:它只有一个重置门单元和一个更新门单元,不含记忆和遗忘门单元。图1为LSTM与GRU的具体结构。
图1 ConvLSTM与TrajGRU结构(xt为t时刻的输入,Ct-1和Ct为上一个单元输出的单元状态(cell state),ht-1和ht分别为前一个单元输出隐藏状态(hidden state)和当前单元输出隐藏状态。 σ是输出范围为[0,1]的logistic sigmoid函数,tanh是输出范围为[-1,1]的双曲正切函数)
ConvLSTM和TrajGRU是目前用深度学习方法进行雷达回波图像外推研究的常用参考模型,是多输入多输出的“编码-预测”模型,为了便于叙述,本节中的模型输入只有两个时刻的数据,同样,输出也只考虑两个时刻的数据,即输入和输出都只有两个时刻的数据,模型结构如图2所示。
图2 编码-预测模型(其中I1和I2为输入图像,I3和I4为输出图像(即预测外推图像),h为隐藏状态,RNNCells表示RNN的单元)
RNNCells内可以是多层ConvLSTM或多层TrajGRU,该模型前部分实现了I1和I2的编码。ConvLSTM将LSTM所有点乘计算都换成卷积操作,算法中编码、预测网络都是通过堆叠多个ConvLSTM层形成,如图3所示。
图3 ConvLSTM网络结构
在捕获数据时空相关性方面,ConvLSTM的不足之处比较明显,它的连接结构和权重对于所有位置都是固定的。而TrajGRU的连接结构是动态的,TrajGRU的参数数量更少,模型可以更有效的使用参数。图4是对图2进一步具体描述TrajGRU模型的编码解码预测网络结构,该结构使用3个RNN结构,其中空间坐标G被拼接到输入帧以确保网络具有空间位置信息。模型中采用经典的均方误差(mean square error MSE)损失函数。
图4 TrajGRU网络结构
文献[17][18]中试验已经证明TrajGRU模型比ConvLSTM模型更能有效地捕获时空相关性,在天气雷达回波图像外推中TrajGRU具有更好的效果。本文对TrajGRU模型进行了两个方面改进:首先,在损失函数中对外推图像中的错报、漏报、误报情况分别考虑,计算MSE时使用不同权重;其次,增加一个高度的图像数据作为输入,每个高度层数据使用独立的TrajGRU模型,两个高度层的损失函数计算权重和作为整个模型的损失函数。
TrajGRU采用的损失函数为MSE损失函数(即均方损失函数),均方误差MSE是指参数估计值与参数真值之差平方的期望值,如式(1)所示。
在当前市场竞争相对激烈的环境和条件下,医院各层领导者在经营意识和成本理念中仍无法跟上时代发展的脚步,普遍存在着重医疗而轻管理、重收入而轻支出和重投入而轻效益等问题。医院现在都在实行预算会计的相关制度,而财务人员却缺乏有关成本核算的知识和理念,体现在管理机制和模式上就是比较重视业务部门的成本核算,而忽视了管理部门的成本核算。在管理部门或管理工作中存在着粗放式的成本核算管理制度,使管理者在成本核算时产生了一定的误导和偏差,最终导致管理者在管理决策上出现失误,从而影响到医院的可持续发展。
(1)
为了提高对错报、漏报的重视程度,构造损失函数时对错报、漏报、准报区域像素给以不同的权重。示意图如图5所示,图中椭圆形表示有回波区域,设图5a表示雷达实况图像数据,图5b为模型外推结果,将两张图重叠在一起如图5c所示。模型外推结果和实况值之间必然存在不同程度的差异,因此,外推结果图像中回波区域与实况图像中回波区域有重合部分,也有未重合部分。
图5 错报漏报示意:(a)实况,(b)模型外推,(c)实况叠加模型外推
本算法将完全重叠部分A区域称为准报区域,将B区域称为漏报区域(既未能预测到的部分),C区域称为错报区域(即预测错误的部分)。这样逐点计算损失值就不再是单纯的像素值相减,在错报与漏报处的像素点计算损失值之前加上一个权重w,公式为:
(2)
通常天气雷达一个体扫需要6 min,一个体扫包含多个仰角数据,在应用中会转换为多个高度层图像。大气流体运动变化过程是在三维空间中进行,任意一个高度层与附近的高度层具有很强的相关性,因此,为了解决只有一层雷达回波图像外推的局限性,本文将在每一个时刻输入相邻多个高度层回波图像。
试验数据包括成都站雷达数据、岳阳站雷达数据和CIKM AnalytiCup 2017公开数据集。本文首先在Visual Studio 2015中编写C++程序将图像转化为只有一个通道的灰度图,然后用深度学习模型进行外推。深度学习模型采用Pytorch 0.4.1在Pycharm中实现。
表1为ConvLSTM模型与TrajGRU模型预测外推结果对比。其中,第1行是预测时刻,第2行为ConvLSTM预测外推结果,第3行为TrajGRU模型预测外推结果,第4行为实况图像。试验中,模型迭代40次,学习率0.0001,训练集有500个图像序列。从表1可知,随着外推时刻的增加,图像质量变得越加模糊,细节减少,但是就TrajGRU而言,图像模糊的程度减少较小,可见TrajGRU模型比ConvLSTM模型更优,与文献[11][12]结果一致。从试验结果可知,TrajGRU模型比ConvLSTM模型外推结果好,因此,本研究将改进方法应用于TrajGRU进行改进并与TrajGRU进行比较分析。
表1 ConvLSTM与TrajGRU模型对比
表1~5中1,2,3,4,5,6,7分别表示预测估计的连续且具有先后顺序7个时刻回波图像编号。
表2 TrajGRU模型修改损失函数对比
表3为针对TrajGRU模型只增加输入图象层数而不考虑错报、漏报权重变化的结果对比。采用1层输入的深度学习网络和采用2层输入深度学习网络参数相同:循环次数100次,每层训练数据集包含1000个雷达图像序列,学习率为0.0001。从表3中可以看出,使用两层回波图像获取图像特征的能力更强,右下角小块回波保留得更好,而只输入1层的结果中右下角回波图未能很好保持。试验结果中迭代次数相同,输入两层回波图像结果对纹理细节保持要差一些,存在欠拟合现象,可增加迭代次数增加训练样本提高细节保持能力。
表3 增加输入层数结果对比
为了验证改进后的模型对真实雷达回波数据的有效性,将模型应用于2018年7—9月成都雷达数据进行试验。经过一定脱敏等预处理并转化为灰度图后作为模型的输入。试验采用参数为:循环次数40次,训练集包含2000个雷达图像序列,共14000幅雷达图像,学习率为0.0001。用于测试的数据为2018年7月2日08:00—08:42,共7幅图像,表4为外推预测图象与真实实况图像的对比,结果表明修改后的TrajGRU模型对图像细节保持较好,与真实图像数据一致性较好。
表4 真实雷达数据方面对比
为了验证模型改进的有效性,将成都雷达数据训练的模型应用于岳阳2018年4月29日雷达图象进行外推,表5为本文方法预测外推结果、TrajGRU外推结果、实况数据3者的对比。可以看出,对于强对流天气现象,改进后的TrajGRU模型仍然能够较好地保持图像细节,与实况数据基本保持一致。该试验证明,对于强对流雷达回波,改进后的TrajGRU模型在强对流天气下也能得到很好的外推效果。
表5 强对流雷达数据预测
试验中采用连续7个时刻的雷达图像外推后续7个时刻的雷达图像,由于气象雷达是每6 min完成一次体扫,此处相邻两个时刻时间间隔为6 min,即用42 min内的图像外推其后的42 min内7个时刻的图像。为了便于叙述,设预测的第1个6 min时刻为t1,预测的第2个6 min时刻为t2,依此类推,第7个6 min为t7。
图像相减的差值常用于描述图像的相似程度,据此,对于每个预测时刻(ti=1,2,3,4,5,6,7),将100个预测图与对应时刻实测雷达图像相减并取绝对值,该100个绝对值的平均值一定程度上反应了预测的准确程度,记为TD,计算公式如式(11)所示。
(11)
图6~9中横坐标1、2、3、4、5、6、7分别表示t1、t2、t3、t4、t5、t6、t7时刻,纵坐标为按照式(11)计算的值。4个图中柱状图随着时间的推移,TD值总体呈上升趋势,表明在时间维度上,预测外推过程中误差逐渐变大,时间上越靠后准确度越低。
图6和图7分别是TrajGRU和ConvLSTM模型进行错报、漏报损失函数修改结果对比,结果表明,修改了损失函数后,预测结果更加准确。
图6 TrajGRU模型损失函数(TD)改进前后对比
图7 ConvLSTM模型损失函数(TD)改进前后对比
图8中试验结果表明TrajGRU在时间维度上鲁棒性更好,整体预测外推性能也更优,因此,本文对于增加预测外推输入雷达层数的试验选择在TrajGRU中进行,结果如图9所示,增加输入雷达层数,图像预测外推结果明显提高,而且越近的时刻效果越加明显。
图8 TrajGRU与ConvLSTM模型对比
图9 TrajGRU模型1层数据与2层数据对比
本文研究了现有基于深度学习的气象雷达图像外推模型,对ConvLSTM模型与TrajGRU模型进行了分析。选择了TrajGRU模型为主要研究对象,在该模型的基础之上做出算法改进。针对成都雷达、岳阳雷达数据和CIKM AnalytiCup 2017竞赛数据集进行试验,得出以下结论:
TrajGRU模型处理时空相关性方面效果优于ConvLSTM。改进的TrajGRU模型能更准确地捕获雷达图片的时空相关性,并且图像质量进一步提高。改进模型的外推结果图像能够更好保持图像细节,雷达回波分布更接近真实雷达扫描图像。目前深度学习让雷达外推得到了很大地提升,但是距离真实实况图像仍有一定的距离,在后续研究中可考虑更多的气象要素纳入外推模型,充分反应时空特性和相关性,充分反应云和降水的微物理过程。