1 引言

暴雨不仅危害农作物生长与收获,还可能引发洪涝灾害及地质灾害,给工农业生产、人民生命财产和城市发展带来巨大威胁。以 2021 年 7 月郑州暴雨事件为例,该事件导致 292 人死亡,超过 10 万 ha2 农作物受灾,造成直接经济损失 532 亿元。提高暴雨预测水平,能够为防灾减灾提供风险信息与决策性建议,减少暴雨对工农业、运输、基础建设等多方面的负面影响,对于保障社会经济发展与人民财产安全具有十分重要的意义。

传统数值预报方法在面对短临暴雨预测任务时,仍然存在模型运转耗时、计算成本高、物理参数化方案难以真正模拟实际混沌过程等多种问题,往往不能提供精准的临近预报。相比之下,数据驱动的机器学习方法具有拟合高维非线性样本和构建预测模型的强大能力,已在天气预报实践应用中展现出了巨大的潜力,成为缓解大气不确定性问题的有效的工具。

尽管现在有部分深度学习模型考虑到了暴雨预测中的时空关联和样本不平衡等问题,但由于深度学习方法的黑盒子特性,上述方法并不一定遵守物理系统的基本定律。因此,深度学习驱动的气象预报研究已经开始在深度学习模型中融入物理先验知识并取得了显著进展,如以平流守恒定律为物理条件的生成性极端降水预测模型。

然而,上述预测方法没有充分考虑大气过程、观测和深度模型建模等各个环节中的不确定性问题。在不确定性因素的影响下,数据或者模型的微小偏差可能会导致预测结果的巨大差异,这阻碍了暴雨预测准确性和鲁棒性的进一步提升。

针对上述问题,本文提出基于滤波理论的卡尔曼"估计-校正"循环网络(Kalman Estimation-Correction Network, KalECNet)的暴雨临近预测方法,在深度学习模型中显式集成卡尔曼滤波理论和个别变化方程,通过误差估计与校正机制提高暴雨预测的精度和可信度。

2 研究方法

2.1 问题定义与整体框架

针对暴雨大气和建模等环节存在的不确定性,本文提出卡尔曼"估计-校正"循环网络在一个模型中同时完成暴雨预测和误差校正,缓解预测中的不确定性,提高暴雨预测精度和稳定性。

t+1,…, R̂t+h = F(Rt-m+1,…,Rt; Yt-m+1,…,Yt)

式中:研究区域被划分成 nw × nh 的格网。R̂t+1,…,R̂t+h ∈ ℝnw×nh 表示预测的研究区域内所有网格的未来 h 步的降水量,Rt-m+1,…,Rt 表示研究区域内所有格网在过去 m 步的降水量,Yt-m+1,…,Yt 表示研究区域内所有格网在过去 m 步的大气属性数据。

基于卡尔曼'估计-校正'循环网络的暴雨临近预测框架
图1 基于卡尔曼"估计-校正"循环网络的暴雨临近预测框架

图1说明了卡尔曼"估计-校正"循环网络的整体流程。整个方法循环"估计-校正"2个环节,通过对气象状态的估计与校正完成暴雨预测。具体计算步骤为:

  1. 状态编码:将t时刻实际气象观测值输入编码网络,获得嵌入观测状态
  2. 状态估计:基于上一时刻(t-1时刻)的气象状态,估计t时刻气象状态
  3. 状态校正:依据t时刻嵌入观测状态校正t时刻估计状态
  4. 状态解码:将t时刻校正的气象状态输入解码网络,转换为t时刻降水量值,完成对t时刻的暴雨预测

在实际预测过程中,t时刻的嵌入观测状态是未知的,初始化为全0矩阵。上述步骤的第①步和第④步对应了图1中的编解码过程,第②步和第③步分别对应了方法的2个核心单元。

2.2 个别变化约束的气象状态估计

在应用卡尔曼滤波相关理论时,首要步骤是建立状态空间方程与观测方程,这两者是构筑"估计-校正"循环过程的基础,其中状态方程描述系统状态的动态演变过程,观测方程表达系统状态与观测数据之间的关系。

为了提高预测模型建模大气动态变化以及暴雨时空关联的能力,本文根据描述大气运动时空变化的个别变化,设计气象状态方程,形成了基于个别变化的深度状态方程。如式(2)所示,个别变化表达式描述了大气运动的时空变化规律,可以推广应用至包括压力,温度和速度分量在内的多种物理量的描述中。

dX/dt = u·∂X/∂x + v·∂X/∂y + w·∂X/∂z + ∂X/∂t

个别变化约束的气象状态估计
图2 个别变化约束的气象状态估计

2.3 估计误差指导的气象状态校正

受卡尔曼滤波器的"估计-校正"思路启发,本文用嵌入观测状态 Zt 校正估计状态 X̂-t,得到校正状态 X̂t,并校正估计误差 E-t 得到校正误差 Et-1

t = X̂-t + Kt(Zt - Ht-t)

Et-1 = (I - KtHt)E-t

式中:Kt ∈ ℝnw×nh×cx 为卡尔曼增益,能够依据估计误差和观测误差,合理融合估计状态和观测状态。本文将卡尔曼增益 Kt 理解为估计状态和观测状态融合的权重,当卡尔曼增益 Kt 较大时,意味着观测值较为可靠,校正过程中应该融合更多观测值;反之,当卡尔曼增益 Kt 较小时,意味着估计值比较可靠,校正过程中应该保留更多估计值。

2.4 卡尔曼"估计-校正"网络

卡尔曼"估计-校正"网络的计算过程实质上是对非线性气象系统状态进行循环估计的过程。卡尔曼"估计-校正"网络的关键步骤可以按顺序总结为5个核心公式:

估计状态:-t, Wt = ι(X̂t-1 - Ut-1°gdx(X̂t-1) - Vt-1°gdy(X̂t-1) - St-1)

估计误差: E-t = ι(Et-1 - Ut-1°gdx(Et-1) - Vt-1°gdy(Et-1) + Wt)

卡尔曼增益: Kt = σ(conv([E-t - Ft]))

校正状态:t = X̂-t + Kt(Zt - HX̂-t)

校正误差: Et-1 = (I - KtH)E-t

2.5 损失函数

本文在MSE损失的基础上,引入时空一致性损失(Spatio-Temporal Coherence loss),以个别变化作为预测降水量时空变化关系的软约束。时空一致性损失的目的是促使预测降水量之间的时空变化关系趋近于实际时空变化关系。

3 实验结果与分析

3.1 实验数据与设置

本文将所提出的所有方法在2个现实世界数据上进行了测试:ERA5(the 5th generation ECMWF(European Centre for Medium-range Weather Forecasts Reanalysis)全球大气再分析数据和NCEP(National Centers for Environmental Prediction)CFSv2(Climate Forecast System Version 2)精选小时序列产品。

数据集信息 ERA5数据集 NCEP数据集
纬度范围/°N 28.125—33.125 25.25—35.2
经度范围/°E 113.125—118.125 107.75—117.75
空间分辨率/° 0.25 0.5
时间分辨率/h 1 1
训练数据/年 2000—2016 2011—2016
验证数据/年 2017—2019 2017—2018
测试数据/年 2020—2023 2019

3.2 评价指标

本文用平均绝对误差(Mean Absolute Error, MAE)来评估降水量预测结果。MAE值越小,说明降水量预测的精确度越高。

本文用气象中常见的2个指标,CSI(Critical Success Index)和HSS(Heidke Skill Score)来评估暴雨预测性能。CSI和HSS值越大,说明暴雨预测准确性越高,模型预测暴雨的能力越强。

本文用度量集合预报可靠性的方式衡量模型处理不确定性的能力。集合离散度(Spread)体现的是集合成员的离散程度。离散度越小,预报不确定性越小;反之,离散度越大,预报不确定性越大。

3.3 对比分析

本文将所提出的暴雨预测方法KalECNet与4种先进的机器学习驱动的时空气象预测方法进行了预测性能比较:CNN、DGMR、FourcastNet和Rainformer。

方法 ERA5数据集 NCEP数据集
MAE ↓ CSI ↑ HSS ↑ SPREAD ↓ MAE ↓ CSI ↑ HSS ↑ SPREAD ↓
CNN 0.932 0.279 0.433 0.605 0.597 0.166 0.279 0.482
DGMR 1.642 0.155 0.262 18.126 1.121 0.078 0.140 1.574
FourcastNet 0.736 0.281 0.436 0.503 0.807 0.107 0.188 1.194
Rainformer 0.906 0.262 0.413 0.637 0.739 0.092 0.166 0.786
KalECNet 0.857 0.294 0.452 0.546 0.644 0.173 0.293 0.475

从ERA5和NCEP两个现实世界数据集上的预测结果综合来看,所提KalECNet提供了最好的CSI和HSS值以及较低的SPREAD值,说明KalECNet能够实现准确且稳定暴雨预测。

3.4 消融分析

为了验证所提创新点的有效性,设置消融实验如下:① -EC:将估计误差指导的气象校正单元替换为传统ConvGRU;② -PP:去掉误差估计和指导环节,直接用观测状态校正估计状态;③ -PHY:去掉个别变化的约束(包括模块和损失)。

方法 ERA5数据集 NCEP数据集
MAE ↓ CSI ↑ HSS ↑ SPREAD ↓ MAE ↓ CSI ↑ HSS ↑ SPREAD ↓
-EC 0.832 0.275 0.429 0.655 0.586 0.187 0.312 0.458
-PP 0.820 0.292 0.450 0.554 0.671 0.170 0.289 0.553
-PHY 0.806 0.285 0.441 0.517 0.545 0.123 0.218 0.338
KalECNet 0.857 0.294 0.452 0.546 0.644 0.173 0.293 0.475

从ERA5数据集上的预测结果来看,在模型中添加校正单元、根据误差校正气象状态和添加个别变化约束等策略均对提高暴雨预测准确性起到了重要作用。在模型中添加校正单元和根据误差进行气象状态校正对提高稳定性也起到了重要作用,而个别变化约束反而在缓解不确定性问题上起到了负面作用。

3.5 预测结果可视分析

KalECNet及对比方法的暴雨预测结果

图3 KalECNet及对比方法的暴雨预测结果

图3可视化展示了所提KalECNet以及对比方法在3个不同模式的暴雨样本上的预测表现。图中用色带展示了降水量预测结果,用黑点标识了暴雨格网(降水量≥16 mm),并标注了该次预测的CSI和MAE值,其中MAE仅计算了实际暴雨网格的降水量误差值。

如图3所示,所提KalECNet方法的预测降水量空间分布与实际相似,以格网为基础的暴雨位置预测正确,并实现了较为准确的暴雨降水量预测。CNN暴雨位置的预测基本正确,但高估暴雨降水量。FourcastNet和Rainformer暴雨位置的预测基本正确,但低估暴雨降水量。DGMR暴雨位置、降水量值和模式均存在偏差。总之,所提KalECNet方法成功预测到了暴雨发生及时空模式,验证了个别变化约束的气象状态估计和估计误差指导的气象状态校正具有提高暴雨预测水平的能力。

3.6 运行时间、参数量及内存分析

方法 运行时间/s ↓ 参数量/万 ↓ GPU内存/GB ↓
CNN 0.001 150 0.006
DGMR 0.048 13,654 0.516
FourcastNet 0.025 5,888 0.220
Rainformer 0.028 16,014 0.603
KalECNet 0.103 8,961 0.334

CNN虽然在ERA5数据集上的暴雨预测能力略低于FourcastNet和所提KalECNet,但运行速度快,参数量小,运行时所占GPU内存小,适用于计算资源不足或时效要求高或数据规模大的实际应用中。FourcastNet和所提KalECNet的应用具有一定的计算资源要求,可以在计算资源充足的情况下满足较高精度的暴雨预测需求。KalECNet的参数量和所占内存远小于DGMR和Rainformer,但是运行时间却远大于DGMR和Rainformer,这说明所提方法在计算效率上仍存在较大提升空间。

4 结论

针对暴雨过程、观测以及建模等环节可能存在的不确定性问题,本文提出基于"估计-校正"循环网络的暴雨临近预测方法KalECNet,以个别变化理论为约束估计气象状态,并按照卡尔曼滤波器原理依据估计误差进行气象状态校正,实现准确和可靠的暴雨预测。实验证明:

  1. 所提方法KalECNet在ERA5和NCEP两个现实世界数据集上取得了最佳的暴雨预测准确性指标(CSI和HSS)和良好的稳定性指标(SPREAD);
  2. 根据误差校正气象状态和添加个别变化约束有利于提高暴雨预测准确性指标,而个别变化约束可能会引入新的不确定性不利于提高暴雨预测稳定性;
  3. KalECNet预测的降水量空间分布与实际相似,以格网为基础的暴雨位置预测正确,并实现了较为准确的暴雨降水量预测。

此外,所提方法在计算效率上仍存在较大提升空间。在未来的研究中,可以继续提高所提方法的计算效率,并尝试将所提方法应用于暴雨的集合预报中。