用小型降尺度模型把天气预测分辨率从28公里提升到5.5公里

0 阅读

核心思路:小模型补细节,而非大模型重算

AI 天气预报模型擅长捕捉大尺度天气系统,但它们通常以 0.25° 的网格分辨率运行——在中欧地区相当于每个格子约 28 公里见方。山谷、海岸线、城市热岛这些局地特征全被平均掉了。Google DeepMind 的 WeatherNext 3 把分辨率做到了约 5 公里,但这类模型训练成本极高,且不开源。

Hugging Face 的 Emma Scharfmann 等人换了个思路:与其从头训练高分辨率全球模型,不如在现有粗粒度预测上「打补丁」。他们训练了一个小型降尺度器(downscaler),用一小时 GPU 时间,把 ECMWF 的 AIFS-ENS 集合预报从 28 公里细化到 5.5 公里。在法国地区验证时,前两天预测的 RMSE 降低了 14%,CRPS 提升了 21%;十天预报仍有 9% 和 14% 的改进。

降尺度器能做什么、不能做什么

降尺度器本质上是个学习「粗网格漏掉了什么」的小型神经网络。它从静态数据——海拔、海岸线距离、海陆比例、经纬度、季节和时刻——推断每个粗格子内部的温度分布。比如它学会:同一格子内,山顶比谷底冷,海岸比内陆温和。

但降尺度器不是万能的。它能添加地形导致的局地模式,却无法修正粗模型的系统性偏差——如果粗模型整体偏暖,降尺度器只会把这股暖意分配到格子的不同位置,而不会调低整体温度。它也不能凭空创造信息:没有海拔数据输入,它就学不到海拔效应。

能做到 做不到
添加地形、海岸线导致的局地温度模式 修正粗模型的区域性系统误差
从单张粗场生成单张或集合细场 无中生有地添加输入中不存在的信息
接在任何粗模型后面运行 降低大尺度预报的不确定性
训练完成后秒级推理 超过训练所用细场数据本身的质量上限

训练数据与模型架构

训练需要成对的粗、细分辨率数据。团队用 ERA5(0.25°,约 28 公里)作为粗场,CERRA(5.5 公里)作为细场,覆盖 2014–2019 年用于训练,2020 年用于验证。每场天气,粗场先插值到细网格,模型学习预测插值结果与真实细场之间的残差。

输入的静态特征包括:CERRA 的高分辨率海拔、粗模型表面高度与实际海拔的差值、海陆比例、距海距离、经纬度,以及编码后的季节和时刻。模型是一个约 200 万参数的 U-Net,用 fair CRPS 损失训练——这种损失同时奖励「接近真值」和「集合离散度合理」。

训练时加入随机噪声,让模型学会对同一粗场生成多种可能的细场,实现从单成员到多成员的集合扩展。10 个粗成员各生成 4 个细样本,最终得到 40 成员的 5.5 公里集合预报。

实际部署:从代码到结果

推理阶段,降尺度器可以接在任何输出 0.25° 温度场的模型之后。团队演示了接在 AIFS-ENS 上的流程,也提到可同样用于 Microsoft Aurora、NOAA GEFS 或 NVIDIA Atlas。

代码流程大致如下:先用 fetch_forecast 获取 AIFS-ENS 的粗集合预报;加载预训练的降尺度器权重(存储在 Hugging Face Hub);downscale_forecast 函数把粗场插值、叠加静态特征、过网络、加噪声,输出细场。GPU 上只需数秒。

可视化结果很直观:在 2020 年 8 月的一次 36 小时预报中,原始 AIFS-ENS 在法国中央高原、阿尔卑斯山和比利牛斯山脉的温度误差明显,而降尺度后的场与 CERRA 细场几乎贴合。功率谱分析显示,ERA5 在 100 公里以下尺度几乎无信息,而降尺度成员能跟随 CERRA 的谱线,说明添加的细节在物理上是合理的。

与 Météo-France 气象站实测对比,降尺度器把山区和海岸的 RMSE 显著压低。有趣的是,CERRA 本身相对于气象站也有误差,而降尺度结果已经很接近这个「天花板」。

训练自己的降尺度器

团队开源了完整代码和教程笔记本。训练流程分为三步:

构建训练对:从 Earthmover 平台获取 ERA5,从 Hugging Face Hub 获取缓存的 CERRA,配对 2014–2019 年的数据。静态特征在细网格上预处理好。

训练 U-Net:20 个 epoch,fair CRPS 损失,随机噪声注入。模型学习的是「粗场插值后还差多少」。

验证:用 2020 年数据检验,看山区、海岸的局地误差是否被修正,同时确认粗模型的全局误差未被改动。功率谱是重要诊断工具——如果噪声只在单一尺度采样,会在该波长出现虚假的集合离散度峰值,多尺度采样可缓解但无法完全消除。

局限与下一步

作者坦诚这是演示而非生产级评估。选择温度是因为它是平滑变量,夏季是因为项目最初关注热浪,AIFS-ENS 是因为 Earthmover 上 readily available 且推理快(GPU 上每 6 小时步长 0.5 秒)。

所有误差都有明显的日变化——夜间逆温和午后地表加热是 CERRA、AIFS-ENS 和降尺度器共同头疼的问题。粗场与细场的差异中,只有 10–30% 能被现有输入预测,其余可能需要风速等额外变量。

团队想尝试的方向包括:降水(不连续变量)和风场的降尺度;用时间条件替代独立时间步处理;以及直接用图神经网络在气象站观测上训练,而非依赖再分析数据。

模型权重、完整代码和交互式演示均已公开。对于资源有限的气象团队来说,这种「小模型补细节」的路线,可能比追逐更大规模的全球模型更务实。