2878 字
14 分钟
ECMWF发布首个业务化运行人工智能天气预报模型

****

欧洲中期天气预报中心 (ECMWF) 于2025年2月25日宣布,其人工智能预报系统 (Artificial Intelligence Forecasting System, AIFS) 正式投入运行,将与传统的基于物理过程的集成预报系统 (Integrated Forecasting System, IFS) 并行运行,共同推进数值天气预报的发展。

AIFS在多项指标上表现出超越当前最先进的物理模型的能力,尤其在热带气旋路径预测方面,性能提升高达20%。这一高精度模型充分利用机器学习领域的最新成果,与ECMWF现有的物理模型组合形成互补。其优势不仅体现在预测精度的提升,更在于显著提高了预测速度,并将能源消耗降低了约1000倍。


首个开放的业务化人工智能天气预报模型#

AIFS是首个完全业务化的开放式AI天气预报模型,它采用了机器学习技术,并涵盖了最广泛的参数范围。该模型能够为用户提供重要的气象要素,例如风速、温度以及从降雪到降雨的详细降水类型信息。AIFS目前的网格间距为28公里,未来有望进一步精细化。

AIFS的首个业务化运行版本被称为AIFS Single v1.0。它每次运行单个预报,即确定性预报。ECMWF正在推动该模型创建包含50个不同预报的集合,这些预报在初始条件上略有差异,以提供各种可能的场景,这被称为集合预报,是ECMWF三十多年前开发和实施的一项成熟技术。

AIFS-single 1.0取代了现有的实验版本AIFS-single v0.2.1。新版本对AIFS Single模型进行了多项改进,其中包括:

  • • 改进了高空大气变量的性能(AIFS Single 仍使用 13 个气压层,因此性能提升主要指50百帕和100百帕高度层)。
  • • 提高了总降水量的预测技巧。
  • • 增加了额外的输出变量,包括100米风、降雪量、地表太阳辐射以及土壤湿度和土壤温度等陆地变量。

AIFS 能够生成高技巧的高空气象要素、地表天气参数和热带气旋路径预报。AIFS Single每天与ECMWF基于物理的数值天气预报 (NWP) 模型并行运行四次,预报结果根据 ECMWF 的开放数据平台https://www.ecmwf.int/en/forecasts/datasets/open-data向公众开放。


模型技术细节#

AIFS使用与IFS相同的初始条件进行预报。这些初始条件基于卫星、飞机、船舶、海洋浮标和其他地面测量站提供的约6000万个经过质量控制的观测数据,结合之前的短期预报形成。

这些初始条件每六小时输入到AIFS中。机器学习模型基于对过去天气演变模式的学习,评估初始条件将如何影响未来几天的天气。

相比之下,IFS采用基于物理过程的方法进行预报,其全球网格间距为9公里,并在计算机代码中集成了物理定律。

IFS预报过程

AIFS工作过程

模型架构#

AIFS基于图神经网络 (Graph Neural Network, GNN) 编码器和解码器,以及滑动窗口Transformer处理器,并使用ECMWF的ERA5再分析数据和ECMWF业务数值天气预报 (NWP) 分析数据进行训练。

它具有灵活的模块化设计,并支持多层并行,以支持在高分辨率输入数据上进行训练。AIFS预报技巧通过将其预报与NWP分析数据和直接观测数据进行比较来评估。

模型训练过程#

模型训练采用数据并行化,批量大小为16。每个模型实例分布在一个节点内的四个40GB A100 GPU上。训练使用混合精度进行,整个过程需要大约一周时间,总共使用64个GPU。训练包括两个阶段:

  • •**预训练:**在ERA5上针对1979年至2022年进行了预训练,使用余弦学习率 调度器,总共进行了 260000 步。
  • •**微调:**预训练之后是在2016年至2022年的业务化实时IFS NWP分析数据上进行

使用模型#

AIFS运行在ECMWF的Anemoi开源框架上,模型权重在Hugging Face上以CC BY 4.0许可发布。Hugging Face提供模型托管(通过Model Hub)、推理API和Python库(如transformers和datasets),可以加载和运行AIFS模型。但需要注意的是,AIFS的完整功能需要结合Anemoi框架,因为它是一个复杂的天气预报系统而非通用的NLP或计算机视觉模型。

Anemoi是一个用于开发机器学习天气预报模型的框架。它包含用于准备训练数据集、进行机器学习模型训练以及注册数据集和训练模型的组件或软件包。Anemoi提供了用于业务推理的工具,包括与验证软件的接口。作为一个框架,它旨在处理气象机构将共享的许多复杂性,使他们能够轻松地从现有方案中训练模型,但使用他们自己的数据。

1. 设置运行环境#

为了使用AIFS模型,你需要安装必要的库和依赖项,并确保有足够的计算资源(建议GPU支持,如NVIDIA A100,参考训练时使用的配置)。

  • 安装Python库
    在终端或命令行中运行以下命令,安装Hugging Face的相关库和可能的Anemoi依赖:
pip install transformers torch torchvision torchaudio
pip install huggingface-hub
  • 安装Anemoi框架
git clone https://github.com/ecmwf/anemoi.git
cd anemoi
pip install -e .
  • 注册Hugging Face账户
    访问Hugging Face网站,创建一个账户并获取API令牌(用于访问受限模型或上传/下载大型文件)。使用以下命令登录Hugging Face CLI:
huggingface-cli login

2. 加载AIFS模型#

AIFS模型托管在Hugging Face Model Hub中,仓库名为ecmwf/aifs-single。用户可以通过transformers库加载模型,但由于AIFS是专为天气预报设计的复杂模型,可能会需要特定的预处理和后处理逻辑。

  • • 加载模型
    以下是一个示例,展示如何加载AIFS模型(假设你有权限访问模型权重):
from transformers import AutoModel, AutoTokenizer
# 加载AIFS模型和分词器
model_name = "ecmwf/aifs-single"
model = AutoModel.from_pretrained(model_name)
tokenizer = AutoTokenizer.from_pretrained(model_name)
# 示例输入(需要根据AIFS的输入格式调整,这里仅为占位)
input_data = {"weather_data": ...}  # 实际需要ERA5格式或类似气象数据
# 运行模型(需要自定义逻辑处理气象数据)
outputs = model(input_data)
print(outputs)

注意事项

  • • 输入数据格式:AIFS需要特定的气象数据输入(如ERA5格式的温度、压力、风速等变量)。你需要从ECMWF的开放数据平台下载或生成这些数据。
  • • Anemoi框架集成:Hugging Face上的AIFS模型仅提供权重,你需要使用Anemoi框架(如anemoi-inference)来正确运行完整的预报系统。参考Hugging Face仓库中的文档或笔记本(如anemoi-inference示例)。

3. 运行推理(Inference)#

AIFS的推理需要处理大规模气象数据并生成天气预报。以下是一个简化的工作流,基于Hugging Face和Anemoi:

ECMWF建议使用Anemoi框架运行AIFS。以下是可能的步骤(参考Hugging Face仓库中的笔记本):

  • • 准备输入数据:从ECMWF下载实时或历史气象数据(如ERA5或NWP分析数据),格式化为AIFS要求的输入(通常是NetCDF或GRIB格式)。
  • • 加载模型:使用Anemoi加载ecmwf/aifs-single模型权重。
  • • 运行预报:调用Anemoi的推理管道,生成天气预测(如5天或更长时间的Z500、降雪量、云量等)。

示例代码(简化版)

from anemoi.inference import AIFSInference
from anemoi.data import WeatherDataLoader
# 初始化AIFS推理
aifs = AIFSInference(model_name="ecmwf/aifs-single")
# 加载气象数据(假设已准备好ERA5数据)
data_loader = WeatherDataLoader(data_path="/path/to/era5_data.nc")
input_data = data_loader.load()
# 生成预测
forecast = aifs.predict(input_data, lead_time=120)  # 5天预报(小时为单位)
# 保存或可视化结果
forecast.save("aifs_forecast.nc")
  • • 计算资源:AIFS训练时使用64个NVIDIA A100 GPU(40GB),推理可能需要GPU支持。如果资源有限,可以尝试在CPU上运行,但性能可能受限。
  • • 输出解析:AIFS输出包括多种气象变量(如Z500异常相关系数、总降雪量、云量等),需要使用气象数据处理软件工具(如xarray、NetCDF4)进行后处理和可视化。

已知局限#

  • • 与其他使用加权MSE损失训练的数据驱动天气预报模型类似,长期预报的预报场会出现模糊
  • • 由于线性损失缩放,AIFS 在平流层预报中表现出较低的预报技巧。
  • • AIFS目前前对热带气旋等高影响系统的强度预报能力偏弱。
  • 尽管存在这些局限性,AIFS代表了气象预报领域的重大技术进步,为更准确、更高效的天气预报开辟了新途径。

未来计划#

AIFS Single作为业务化服务的推出仅仅是一个开始。下一步ECMWF将会提供集合预报,并引入实验性的数据驱动型次季节(延伸期)预报。数据驱动和基于物理的预报的混合潜力也将是未来几年研究的重点领域。

References#

本公众号相关内容推荐#

ECMWF发布首个业务化运行人工智能天气预报模型
https://blog.scidatalab.net/posts/ecmwf发布首个业务化运行人工智能天气预报模型/
作者
Echo
发布于
2025-02-26
许可协议
CC BY-NC-SA 4.0