气象数据

GraphCast 解读:图神经网络改写中期天气预报,对新能源的意义

· 南京运梦科技算法团队 · 评审 算法负责人

GraphCast 解读:图神经网络改写中期天气预报,对新能源的意义 封面

如果你做风电选址、光伏功率预测,或者只是天天和历史气象数据打交道,那么 2023 年发表在 Science 上的这篇 GraphCast 论文,几乎可以算是过去几年最值得花时间读懂的一篇。它系统性地证明:一个纯数据驱动的图神经网络模型,可以在 1 分钟内给出未来 10 天、覆盖全球数百个变量的高分辨率预报,并在多数指标上超过运行了几十年的物理数值预报系统。换句话说,新能源行业赖以做资源评估和功率预测的那套"气象数据底座",正在被 AI 重新定义——而它学习的范本,恰恰是你早就熟悉的 ERA5。

关键要点

  • GraphCast 是一套图神经网络(GNN)模型,能在 1 分钟内输出 0.25° 分辨率、未来 10 天、覆盖全球数百个变量的预报。
  • 它在多数评测指标上超越 ECMWF 的业务确定性预报 ECMWF-HRES,但这是"多数指标"而非全面取代,与传统物理模式更多是互补关系。
  • 模型完全建立在 ERA5 之上:以约 1979–2017 共 39 年 ERA5 数据训练、以 ERA5 初始场自回归滚动驱动、并以 ERA5 为评测标尺。
  • 论文 Learning skillful medium-range global weather forecasting 由 Google DeepMind 出品,2023 年发表于 Science 正刊,模型与权重已开源。
  • 对新能源行业的意义:ERA5 作为历史气象底座的基准地位被再次确认,功率预测的上游气象输入更快更丰富,历史(ERA5)与预报(德国气象局)需打通字段口径。

背景与权威性

这篇论文的英文原题是 Learning skillful medium-range global weather forecasting,业界更习惯用它的模型名字称呼它:GraphCast。作者是 Lam 等人,出品方是 Google DeepMind,论文发表于 2023 年的 Science 正刊

判断一篇文献是不是"必读经典",通常看三件事:发在哪、谁做的、被引多少。这三点 GraphCast 都站得很稳。

  • 期刊层级:Science 是公认的顶级综合性期刊之一,能在正刊发表的气象、机器学习交叉成果并不多见,门槛本身就是一道筛子。
  • 作者与出品方:DeepMind 在深度学习领域积累深厚,且 GraphCast 模型与权重已开源,可复现、可二次开发,这让它的影响力远超一篇"只能看不能用"的论文。
  • 引用量:截至 2026 年 5 月,Semantic Scholar 记录的引用量约为 1,549。对一篇 2023 年才发表的论文而言,这个累积速度反映出它被学术界和工业界高频引用。

更关键的是它的"范式意义"。GraphCast 开创了 AI 中期预报这一研究方向,并被包括 ECMWF(欧洲中期天气预报中心)在内的业界机构迅速关注与采纳。可以说,它不是众多 AI 气象论文中的一篇,而是这一波浪潮的起点性文献之一。

它做了什么

GraphCast 的核心方法是一套 图神经网络(GNN)。它把全球大气状态组织成图结构上的节点与连边,让信息在不同空间位置之间传递,从而学习大气演变的规律。这种结构天然适合表达"全球各地天气彼此关联、相互影响"这一物理事实。

在数据上,GraphCast 走的是一条彻底的数据驱动路线:

  • 训练真值:模型完全以 ERA5 再分析数据集为训练真值,使用了约 1979–2017 共 39 年的历史数据。ERA5 是把卫星、地面站、探空等多源观测,通过同化系统融合成的物理一致、时空连续的全球网格数据,被广泛视为历史气象的事实标准。
  • 驱动方式:预测时以 ERA5 的初始场作为起点,模型自回归滚动——把上一步的输出当作下一步的输入,一步步把预报向未来推进,最终覆盖未来 10 天。
  • 评测标尺:评估同样以 ERA5 为基准。也就是说,在 AI 气象模型的世界里,ERA5 既是"教材",也是判卷时的"标准答案"。

验证方式上,论文把 GraphCast 与 ECMWF 的业务确定性预报系统 ECMWF-HRES 在大量变量和预报时效上做了系统对比,用同一把 ERA5 标尺衡量双方的预报技巧(skill)。

关键结论

把论文已核实的要点提炼出来,最值得记住的有这么几条:

  • GraphCast 能在 1 分钟内输出 0.25° 分辨率、未来 10 天、数百个变量的全球预报。0.25° 是相当高的空间分辨率;而"1 分钟"的出图速度,相比依赖超级计算机长时间运算的传统数值预报,是效率上的明显跨越。
  • 在多数评测指标上,GraphCast 超越了 ECMWF 的业务确定性预报 HRES。注意这里的措辞是"多数指标"——这是一个有边界的、可核实的结论,而非"全面碾压"。
  • GraphCast 完全建立在 ERA5 之上:以约 39 年 ERA5 数据训练,以 ERA5 初始场驱动滚动预报,并以 ERA5 为评测标尺。这条结论提醒我们——AI 气象模型的能力上限,与其训练数据 ERA5 的质量与覆盖密切相关

需要强调的是,"超越 HRES"指的是确定性预报的技巧评分,并不意味着传统物理模式被取代;二者更多是互补关系。

对新能源 / 运梦平台的意义

把这些结论落到风电、光伏的实际工作流上,至少有三层意义。

第一,资源评估的数据底座被进一步夯实。 GraphCast 选择 ERA5 作为唯一训练真值,等于用一篇顶刊论文再次确认了 ERA5 在全球历史气象数据中的基准地位。你在做风电场选址、光伏长期辐射评估时所依赖的 ERA5 长序列,正是 AI 前沿模型眼中的标准答案。关于 ERA5 本身的来龙去脉,可以参考 ERA5 完全解读ERA5 产品页

第二,功率预测的"上游气象输入"正在变快、变多。 GraphCast 在 1 分钟内输出 10 天、数百变量的能力,意味着短期到中期的功率预测可以拿到更高频、更密集的气象驱动场。对 风电功率预测光伏功率预测 而言,更丰富的风速、辐射输入有助于提升预测模型的训练样本质量。相关行业落地可进一步参考 风电场景方案光伏场景方案

第三,历史数据与预报数据的口径要打通。 既然 AI 模型用 ERA5 训练、又要在业务中和德国气象局这类预报源协同,新能源团队就需要一套字段命名、单位、时空分辨率都一致的数据通道,避免在"历史回测用一套字段、实时预报用另一套字段"之间反复换名。这正是双数据源平台的价值所在——历史用 ERA5,预报用 德国气象局预报,字段口径统一。

在运梦气象 API 上手

南京运梦科技的运梦气象 API 同时提供 ERA5德国气象局双数据源,字段统一通过 downloadSync 接口按 dataSourceIdfields 拉取,刚好对应 GraphCast"历史训练 + 预报应用"两类需求。

按场景选字段的常用思路:

  • 风资源 / 风电功率:u100v100wswd
  • 光伏辐射 / 光伏功率:rsdsdnidhi
  • 常规气象 / 偏差订正:tashurssppr

如果你想复刻 GraphCast 的思路——拿 ERA5 长序列做模型训练或回测,请求体大致是这样:

import os, requests

API = "https://console.yun-meng.top/api/energy-weather/search/weather/action/downloadSync"

payload = {
    "dataSourceId": "era5",                 # 历史训练真值,与 GraphCast 同源
    "lat": 31.5, "lon": 118.5,              # 风电 / 光伏场址单点
    "stime": "1979-01-01 00:00",
    "etime": "2017-12-31 23:00",            # 与论文训练区间相近的长序列
    "fields": ["u100", "v100", "ws", "wd", "rsds", "tas"],
    "timezone": "8",
}

resp = requests.post(API, headers={"Authorization": f"Bearer {os.environ['YUNMENG_TOKEN']}"},
                     json=payload, timeout=600)
resp.raise_for_status()
result = resp.json()
if not result.get("success"):
    raise RuntimeError(result.get("msg", "查询失败"))

data = result["data"]
print(len(data["timeList"]), data["u100"][0], data["rsds"][0])

如果转向预报场景,只需把 dataSourceId 换成 ger,并把时间窗调整到未来时效即可。字段含义、单位与完整定义见 数据要素解释,接口参数以 API 参考文档 为准。两条产品线的详情分别见 ERA5 产品页德国气象局预报

一点工程提醒

GraphCast 之所以能做到"分钟级出图",前提是有一份干净、连续、口径一致的 ERA5 作为输入。落到工程上,无论你是训练自己的轻量预测模型,还是只做特征工程,先把历史气象数据的字段、单位、时区统一好,比急着上模型更重要——这也是这篇论文给数据工程的隐性启示。

常见问题

GraphCast 是什么?它和传统天气预报有什么不同? GraphCast 是 Google DeepMind 提出的图神经网络(GNN)天气预报模型,走纯数据驱动路线。它能在 1 分钟内输出未来 10 天、0.25° 分辨率的全球预报,相比依赖超级计算机长时间运算的传统数值预报,在出图效率上是明显跨越。

GraphCast 真的比 ECMWF 更准吗? 论文显示 GraphCast 在多数评测指标上超越了 ECMWF 的业务确定性预报 ECMWF-HRES。但这是"多数指标"这一有边界的结论,并不意味着传统物理模式被取代,二者更多是互补关系。

GraphCast 用什么数据训练?为什么和 ERA5 关系这么大? GraphCast 完全以 ERA5 再分析数据集为训练真值,使用约 1979–2017 共 39 年历史数据,预测时以 ERA5 初始场自回归滚动驱动,评测也以 ERA5 为基准。可以说 ERA5 既是它的"教材",也是判卷时的"标准答案"。

做新能源功率预测,可以怎么用上这套思路? 新能源团队可以拿 ERA5 长序列做资源评估与模型训练/回测,再用预报源做实时驱动。关键是把历史与预报的字段命名、单位、时空分辨率打通——历史用 ERA5,预报用德国气象局,字段口径统一。

在运梦气象 API 上如何获取 ERA5 与预报数据? 运梦气象 API 同时提供 ERA5 与德国气象局双数据源,统一通过 downloadSync 接口按 dataSourceIdfields 拉取。历史训练用 dataSourceId: "era5",预报场景把它换成 ger 并将时间窗调整到未来时效即可。

引用与原文

Lam et al. Learning skillful medium-range global weather forecasting (GraphCast). Science, 2023. Google DeepMind 出品并开源。

DOI:doi.org/10.1126/science.adi2336