ArXiv: 2312.15796
🎯 Pitch
A single AI model running in 8 minutes beats the world’s top operational 15-day ensemble forecast on 97% of targets. It achieves this using diffusion, a generative AI technique, to directly model the chaotic distribution of weather rather than simulating physics.
1. Executive Summary
This paper introduces GenCast, a probabilistic weather model that generates ensemble forecasts by modeling the conditional probability distribution of future weather states with a diffusion model, trained on four decades of ERA5 reanalysis data. GenCast produces 15-day global ensemble forecasts at 0.25° resolution across more than 80 surface and atmospheric variables in approximately 8 minutes, using a conditional diffusion sampling process combined with a graph-transformer denoiser operating on an icosahedral mesh that iteratively refines noise-corrupted candidate states autoregressively. Evaluated against the European Centre for Medium-Range Weather Forecasts' operational ensemble forecast, ENS, GenCast achieves greater skill on 97.4% of 1320 evaluated target variables, lead times, and vertical levels, with particularly strong performance on extreme weather prediction—yielding up to 106% higher relative economic value for tropical cyclone forecasts at 5-day lead times—and on spatial structure tasks such as regional wind power forecasting, establishing that a purely ML-based generative approach can outperform the world's top operational physics-based ensemble system across the full spectrum of probabilistic forecast evaluation.
2. Context and Motivation
The Core Problem: Weather Forecasts Are Fundamentally Uncertain, and We Need to Quantify That Uncertainty
Everyone—from individuals deciding whether to carry an umbrella to governments preparing for tropical cyclones—relies on weather forecasts to make decisions. But these forecasts are never perfectly certain, for reasons that are both practical and deeply physical.
On the practical side, we can only partially observe the current state of the atmosphere. Weather stations, satellites, and radiosondes provide an incomplete, noisy picture. On the physical side, even if we could observe the atmosphere perfectly, our models of atmospheric dynamics are approximations with inherent errors. More fundamentally, the atmosphere exhibits sensitive dependence on initial conditions—the famous "butterfly effect" (Lorenz and Haman, 1996)—where minuscule uncertainties in the current state rapidly amplify into enormous uncertainties about the future. As the paper puts it in Section 1:
"The highly non-linear physics of weather means that small initial uncertainties and errors can rapidly grow into large uncertainties about the future, giving rise to the famous 'butterfly effect'"
This means a single deterministic forecast—predicting exactly one future weather trajectory—is inherently insufficient for high-stakes decision-making. When you need to decide whether to evacuate a coastal city ahead of a potential cyclone landfall, you don't just want to know the single most likely track. You need to know: how likely is landfall? What's the range of possible tracks? What's the worst case? As the paper states in Section 1:
"Making critical decisions often requires knowing not just a single probable scenario, but the range of possible scenarios and how likely they are to occur."
The core problem this paper addresses is therefore: how can we generate high-quality probabilistic weather forecasts—forecasts that accurately represent the full distribution of possible future weather scenarios—with greater skill and speed than existing operational systems?
Why This Problem Matters: The Economic and Human Stakes Are Enormous
The paper motivates this problem through several concrete, high-impact applications that span human safety, economic efficiency, and climate adaptation:
Extreme weather preparedness. Tropical cyclones alone cause thousands of deaths and tens of billions of dollars in damages annually (Section 7.2). The paper uses Typhoon Hagibis (2019) as a running example—the costliest tropical cyclone of that year, causing over CLC/LL \gg CC/L$ is very small, e.g., 0.01–0.05), even small improvements in the accuracy of low-probability-event forecasts can translate into enormous societal value. GenCast shows up to 106% higher relative economic value than ENS at 5-day lead times for cyclone prediction at a cost/loss ratio of 0.01 (Figure 4b).
Renewable energy integration. Wind power forecasting is another critical application (Section 8.2). Power grid operators use regional wind forecasts for tasks like unit commitment—deciding which power plants to run—and reserve quantification—determining how much backup capacity to keep on standby. Forecast errors force operators to rely on fossil fuel-based "spinning reserves" to maintain grid stability, which undermines wind power's potential for reducing carbon emissions (Gielen et al., 2019). A probabilistic forecast that accurately captures both the expected wind power output and the uncertainty around it enables more efficient reserve allocation—keeping less fossil fuel capacity on standby when the forecast is confident, and ramping it up when uncertainty is high. The paper demonstrates that GenCast provides ~20% better CRPS than ENS at short lead times for regional wind power forecasting, with statistically significant improvements out to 7–10 days (Section 8.2, Figure 4d and Figure F27).
The broader trend toward ensemble-based decision-making. The paper notes that weather agencies are increasingly shifting from deterministic to ensemble-based forecasting as their primary product. ECMWF's ENS is the state-of-the-art NWP-based ensemble, and the paper observes that ENS "will subsume their deterministic forecast, HRES, going forward" (Section 1, citing ECMWF 2024). This institutional shift reflects a growing recognition that probabilistic information is essential. A new method that can produce such information with greater accuracy and at a fraction of the computational cost has immediate practical relevance for operational weather centers worldwide.
Prior Approaches: How Ensemble Forecasting Has Worked Historically
To understand what GenCast contributes, we need to understand the two broad classes of approaches that preceded it: numerical weather prediction (NWP)-based ensemble forecasting, and machine learning weather prediction (MLWP).
NWP-Based Ensemble Forecasting: The Current Gold Standard
Traditional weather forecasting is built on numerical weather prediction (NWP)—solving the partial differential equations that govern atmospheric fluid dynamics on a discretized spatial grid (Section 1, Section A). The state of the atmosphere is represented by variables like temperature, pressure, wind components, and humidity at grid points and vertical levels. A forecast is produced by numerically integrating these equations forward in time from an initial condition estimated by data assimilation—a procedure that combines recent observations with a short-term model forecast to produce the best estimate of the current atmospheric state.
A deterministic NWP forecast produces a single trajectory by integrating from a single best-estimate initial condition. ECMWF's HRES (High-Resolution forecast) is the operational example. But as discussed, a single trajectory cannot represent uncertainty.
Ensemble forecasting addresses this by running the NWP model multiple times with slightly different initial conditions—each representing a plausible alternative atmospheric state consistent with the observations and their uncertainties. ECMWF's ENS produces 50 such perturbed members. The key insight behind ensemble forecasting in NWP is that by sampling the initial condition uncertainty and propagating it forward through the physical model, you obtain samples from the predictive distribution of future weather. As the paper explains (Section 1):
"to model the probability distribution of different future weather scenarios, weather agencies increasingly rely on 'ensemble forecasts', which generate multiple NWP-based forecasts, each of which models a single possible scenario"
The perturbation methods used operationally include Ensemble of Data Assimilations (EDA) perturbations (Isaksen et al., 2010)—where each ensemble member is generated from a different data assimilation cycle with perturbed observations—and singular vector perturbations, which identify the directions in state space where uncertainty grows fastest. ECMWF's ENS uses a combination of both (Buizza et al., 2008).
ENS has been the world's top operational ensemble system. However, the paper identifies several fundamental limitations of the NWP-based ensemble approach:
-
Computational cost. NWP models are enormously expensive to run. ECMWF operates some of the world's largest supercomputers to produce operational forecasts. Running 50 ensemble members means 50× the computational cost of a single deterministic forecast. This cost limits ensemble size, spatial resolution, and update frequency.
-
Engineering complexity. NWP systems are the product of decades of accumulated physical parameterizations, numerical methods, and data assimilation algorithms. They are extremely complex to develop, maintain, and improve (Section 1: "time-consuming to engineer").
-
Residual errors. Despite their sophistication, NWP models are still approximations. Parameterizations of sub-grid-scale processes (cloud formation, turbulence, radiation) introduce systematic errors. These errors compound over forecast lead time, and they affect not just the mean forecast but the ensemble spread and calibration.
-
Slow generation time. Producing a full ensemble forecast takes hours of wall-clock time on specialized supercomputing infrastructure.
MLWP: Revolutionizing Deterministic Forecasting, but Largely Ignoring Uncertainty
In recent years, a new paradigm has emerged: machine learning weather prediction (MLWP). Rather than solving physical equations, MLWP models are trained directly on historical weather data—specifically, on reanalysis datasets like ERA5, which provide a consistent, gridded representation of the historical atmospheric state produced by running a fixed version of an NWP model with data assimilation retrospectively.
The breakthrough came with models like GraphCast (Lam et al., 2023), which the GenCast paper cites extensively and builds upon directly. GraphCast is a deterministic model that maps the current and previous atmospheric states to a prediction of the next state using a graph neural network architecture operating on a multiscale icosahedral mesh. It is trained to minimize mean squared error (MSE) between its predictions and ERA5 targets. GraphCast demonstrated that an ML model could match or exceed the deterministic skill of ECMWF's HRES—a landmark result.
Other MLWP approaches include FourCastNet (Kurth et al., 2022; adaptive Fourier neural operators), Pangu-Weather (Bi et al., 2023; 3D transformer-based), FengWu (Chen et al., 2023), and FuXi (Li et al., 2023; cascade ML forecasting). All of these share a common characteristic identified in Section 1:
"Rather than forecasting a single weather trajectory, or a distribution of trajectories, these methods have largely focused on forecasting the mean of the probable trajectories, with relatively little emphasis on quantifying the uncertainty associated with a forecast."
This focus on the mean has two critical consequences:
1. Blurring. Because these models are trained to minimize MSE, their optimal prediction (in expectation) is the conditional mean of the target distribution. At short lead times, when uncertainty is small, the mean is sharp and realistic. But at longer lead times—as the predictive distribution broadens—the mean becomes a blurry average over many possible weather states. As Section 3 explains:
"They are typically trained to minimise mean squared error (MSE), and as a result tend to produce blurry forecast states, especially at longer lead times, rather than a specific realisation of a possible weather state."
The paper demonstrates this visually in Figure 2 (panels b–m), comparing GenCast samples at 1-day and 15-day lead times with GraphCast's deterministic prediction. At 1 day, both look sharp. At 15 days, GenCast's individual samples remain sharp and physically realistic, while both GraphCast's output and the GenCast ensemble mean are visibly blurred. Figure 2g and 2m quantify this through spatial power spectra: GenCast samples' spectra closely match ERA5's across all wavelengths, while the ensemble mean and GraphCast lose power at shorter wavelengths—exactly the signature of averaging over uncertain small-scale features.
2. Bias in derived variables. The blurring problem extends beyond visual quality to quantitative accuracy for variables that are non-linear functions of the predicted quantities. The paper explains this elegantly in Section 3:
"forecasts of the ensemble mean for each variable can be biased when computing nonlinear derived quantities such as wind speed (which is the L2-norm of the (u, v) wind vector, ). This is because a nonlinear function of an average is not necessarily equal to the average of that nonlinear function."
Concretely: if a deterministic model predicts the expected wind vector by minimizing MSE, and there is substantial uncertainty about wind direction, the expected vector will be shorter than the typical true wind vector. (Imagine a wind that is equally likely to blow due north at 10 m/s or due south at 10 m/s. The expected wind vector is zero—a completely calm wind—even though the actual wind speed is always 10 m/s.) Computing wind speed from this expected vector yields a severe negative bias. The paper shows (Section F.9.1, Figure F20) that while GraphCast exhibits minimal bias on the native wind components (10u, 10v), it shows a large negative bias on derived wind speed, especially at longer lead times. GenCast, by generating full samples from the joint distribution rather than a point estimate, avoids this problem entirely—wind speed is computed per-sample and then averaged, correctly capturing the nonlinear relationship.
Limited Attempts at MLWP-Based Ensembles
The paper acknowledges that some prior MLWP work has attempted to produce ensembles, but identifies critical shortcomings:
Perturbation-based approaches. Some deterministic MLWP models (e.g., Pangu-Weather, FourCastNet) have been used to generate ensembles by applying traditional initial condition perturbation methods—feeding the deterministic model multiple slightly different initial conditions (Section 1). The paper tests a more sophisticated version of this approach, which it calls GraphCast-Perturbed (Section 4): initializing the deterministic GraphCast model with ERA5 + ERA5 EDA perturbations + additional ad hoc Gaussian process perturbations to address under-dispersion (detailed in Section C.4).
However, this approach has fundamental limitations (Section 1):
"they have not addressed the issue of blurring, and have not rivaled operational ensemble forecasts like ENS."
The problem is that even with perturbed initial conditions, the underlying model is still deterministic and MSE-trained. All ensemble spread must come from differences in initial conditions—the model itself has no mechanism to generate or represent uncertainty beyond what's injected at initialization. As the evaluation reveals (Section 5, Figure F11), GraphCast-Perturbed only outperforms ENS on CRPS in 27% of targets, concentrated at short lead times. At longer lead times, ENS is substantially better, and GraphCast-Perturbed is consistently under-dispersed (spread/skill < 1) with ∪-shaped rank histograms indicating overconfidence (Section 6, Figure F2–F4).
Neural GCM. The paper mentions one exception: Neural GCM (Kochkov et al., 2023), a hybrid approach that replaces certain physical parameterizations within a traditional NWP dynamical core with learned neural network components. Neural GCM shows competitive ensemble performance with operational systems, but operates at 1.4° spatial resolution—an order of magnitude coarser than operational NWP-based forecasts—and faces "serious challenges scaling to operational settings" (Section 1).
The Gap This Paper Fills
The paper positions GenCast as addressing a specific, well-defined gap that emerges from the intersection of these prior approaches:
-
NWP-based ensembles (like ENS) are the operational gold standard for probabilistic forecasting, but are computationally expensive, slow to run, complex to engineer, and still carry systematic errors.
-
Deterministic MLWP models (like GraphCast) have proven that ML can match or exceed NWP for deterministic forecasting, but are fundamentally designed to predict the mean, producing blurry forecasts that degrade at long lead times and suffer from bias in derived variables.
-
Perturbation-based MLWP ensembles attempt to retrofit uncertainty quantification onto deterministic models, but fail to address the blurring problem and underperform operational ensembles at medium-to-long lead times.
GenCast's innovation is to design an MLWP model that is inherently probabilistic from the ground up—it directly models the conditional probability distribution rather than just its mean. This allows it to generate sharp, physically realistic ensemble members at all lead times, avoid bias in nonlinear derived variables, and naturally represent the full predictive uncertainty without relying on ad hoc perturbation schemes.
The paper frames this as bringing cutting-edge generative AI methods—specifically diffusion models, which have driven recent advances in image, audio, and video generation—to the problem of probabilistic weather forecasting. As stated in Section 9:
"our work demonstrates that cutting-edge generative AI methods can capture very high-dimensional and complex distributions over rich temporal dynamics, with sufficient accuracy and reliability to support effective decision-making in crucial applications."
This framing is significant because it positions GenCast not as an incremental improvement to existing MLWP approaches, but as a fundamentally different paradigm: generative ensemble forecasting rather than deterministic forecasting with post-hoc uncertainty quantification. The paper demonstrates that this paradigm shift yields not just better uncertainty estimates, but better forecasts overall—GenCast's ensemble mean RMSE is as good or better than ENS on 96% of targets (Section 5, Figure F5), meaning the model doesn't sacrifice deterministic skill to achieve probabilistic capability.
3. Technical Approach
3.1 Reader Orientation
GenCast is a conditional diffusion model that, given the weather state from the current and previous timestep, generates a probabilistic forecast of the next weather state by iteratively refining noise into a sharp, physically realistic sample. It solves the problem of producing high-quality ensemble weather forecasts by directly learning the full conditional probability distribution $p(X_{t+1} | X_t, X_{t-1})$ from decades of reanalysis data, then sampling from this distribution autoregressively to produce 15-day global trajectory ensembles—treating weather forecasting as a generative modeling problem rather than a deterministic regression or physics simulation.
3.2 Big-Picture Architecture (Diagram in Words)
The GenCast system has five major components:
-
ERA5 Training Data — four decades of global reanalysis weather states at 0.25° resolution, providing pairs of (current state, previous state, next state) for supervised learning.
-
Denoiser Neural Network (
$f_\theta$) — a graph-transformer that takes a noise-corrupted candidate future state plus the two conditioning states and the noise level, and predicts the clean residual. This is the learned component, trained once on historical data. -
Diffusion Sampler — at inference time, starts from pure noise and repeatedly calls the denoiser through a second-order ODE solver (20 steps per forecast timestep) with stochastic churn and noise injection, progressively refining the candidate state until it converges to a sharp sample from the forecast distribution.
-
Autoregressive Rollout — the one-step diffusion sampler is applied recursively: the sampled
$X_{t+1}$and the previous$X_t$become the conditioning inputs for generating$X_{t+2}$, and so on for 30 steps (15 days at 12-hour intervals). -
Initial Condition Perturbations — to represent uncertainty about the current atmospheric state, multiple ensemble members are initialized with different perturbations (from ERA5's Ensemble of Data Assimilations) added to the deterministic ERA5 analysis, giving each ensemble trajectory a different starting point.
Information flows as follows: ERA5 data → train denoiser on single-step denoising task → at inference, draw initial noise, condition on $(X_0, X_{-1})$ with perturbations → run 20 diffusion solver steps to produce $X_1$ → shift context window to $(X_1, X_0)$ → repeat to generate $X_2, X_3, ..., X_{30}$ → repeat entire procedure with different initial noise and perturbations to produce an ensemble of trajectories.
3.3 Roadmap for the Deep Dive
- First, the formal probabilistic framing (Section A): how the joint distribution over a trajectory is factorized into Markov transition steps, and why the model conditions on two previous states rather than one.
- Second, the diffusion model framework (Section D): what a diffusion model is as a sampling mechanism, how noise is added and removed, and why this approach naturally produces sharp samples rather than blurry means.
- Third, the noise distribution on the sphere (Section D.2): how GenCast samples isotropic Gaussian noise that respects spherical geometry, avoiding artifacts from the latitude-longitude grid.
- Fourth, the denoiser architecture (Section D.3): the graph-transformer operating on an icosahedral mesh, how it conditions on previous timesteps and noise level, and its relationship to the GraphCast architecture.
- Fifth, the training protocol (Section D.4): the denoising objective, noise-level sampling distribution, loss weighting, and the two-stage resolution schedule.
- Sixth, the sampling process at inference (Section D.1 and D.5): the ODE solver, stochastic churn, noise inflation, and the specific 20-step schedule that produces each forecast timestep.
- Seventh, the initial condition perturbation strategy (Section C): how deterministic ERA5 analysis is combined with EDA perturbations and why this matters for ensemble dispersion.
- Finally, the autoregressive rollout procedure: how 30 single-step samples are chained together to produce a 15-day trajectory.
3.4 Detailed, Sentence-Based Technical Breakdown
This is primarily a systems and methods paper whose core idea is that weather forecasting can be reframed as conditional generative modeling, with each 12-hour forecast step treated as a sample from a learned distribution rather than a deterministic mapping, and with an autoregressive rollout enabling long-horizon ensemble generation.
Probabilistic Framing: Factoring the Forecast Distribution
The probabilistic forecasting problem is formally defined in Section A. The goal is to model the joint distribution over a future weather trajectory $\bar{X}_{0:T}$ given all observations up to the initialization time $t=0$, denoted $O_{\leq 0}$. This full joint distribution is factored into two stages:
where $\bar{X}_0$ is the true initial atmospheric state, $O_{\leq 0}$ represents all observations assimilated up to the forecast initialization time, and $\bar{X}_{1:T}$ is the sequence of future atmospheric states from step 1 to horizon $T$.
What it factorizes: the problem of predicting the entire future weather distribution given observations into two sub-problems. The first factor, $p(\bar{X}_0 | O_{\leq 0})$, is the state inference problem—estimating the current state of the atmosphere from incomplete, noisy observations. The second factor, $p(\bar{X}_{1:T} | \bar{X}_0)$, is the forecast model problem—propagating an estimate of the current state forward in time.
Why this factorization: it separates responsibilities between data assimilation (state inference, which GenCast does NOT address—it inherits this from traditional NWP-based methods) and dynamics modeling (the forecast model, which IS GenCast's contribution). This is the standard decomposition in operational weather forecasting, and it means GenCast can focus entirely on the forecast model while relying on ECMWF's existing data assimilation infrastructure to provide initial conditions.
The forecast model is further factorized under a Markov assumption:
where the joint distribution over the full trajectory decomposes into a product of single-step conditional distributions.
What it assumes: that the atmosphere's evolution is first-order Markov—the future state depends only on the immediate previous state, not on the longer history. This is a standard and physically well-motivated assumption in weather modeling (the governing equations are first-order in time), but it is an approximation because the true state $\bar{X}$ includes all relevant physical variables; in practice, GenCast's $X$ is a subset of the full atmospheric state, so conditioning on a single previous state may lose information.
GenCast's refinement: conditioning on two previous states. Because GenCast works with a partial state representation $X$ (an 84 × 720 × 1440 array of specific variables at specific levels—see Table B1—rather than the full physical state $\bar{X}$), the paper found that conditioning on two previous states rather than one improves forecast accuracy:
Why this helps: with an incomplete state representation, $X_{t-1}$ alone may not contain sufficient information about time derivatives (e.g., wind acceleration, pressure tendency). Including $X_{t-2}$ provides a finite-difference approximation of the first time derivative, giving the model information about not just where the atmosphere is but where it's going. This is a practical engineering choice that compensates for the partial observability of the state representation.
At inference time, a forecast trajectory $X_{1:T}$ of length $T = 30$ (15 days at 12-hour steps) is sampled autoregressively:
- Initialization: sample initial conditions
$(X_0, X_{-1})$from the ERA5 analysis with EDA perturbations (see Section C for details). - Step
$t=1$: sample$X_1 \sim p(X_1 | X_0, X_{-1})$. - Step
$t=2$: sample$X_2 \sim p(X_2 | X_1, X_0)$. - Continue shifting the two-step context window and sampling forward until
$t = T$.
Each step's sample is a full 84 × 720 × 1440 weather state. This process is repeated multiple times (50 for the main evaluation) with different initial noise and initial condition perturbations to produce the ensemble.
Diffusion Model Framework: How GenCast Generates Weather States
Having factorized the problem into single-step conditional distributions, the core technical challenge is: how do we model and sample from $p(X_{t+1} | X_t, X_{t-1})$? GenCast uses a diffusion model, so understanding the answer requires first understanding what a diffusion model does at the conceptual level, then examining the specific design choices.
The fundamental idea of diffusion modeling. A diffusion model (Karras et al., 2022; Sohl-Dickstein et al., 2015; Song et al., 2021) generates samples from a target data distribution through a process of iterative refinement. You start with a sample of pure noise—a completely unstructured weather state where every grid cell and variable is random. Over multiple refinement steps, this noise is progressively transformed into a realistic weather state by a learned neural network that "denoises" the current candidate. The refinement process is guided by a schedule of noise levels: early steps remove large-scale noise (giving the rough structure), and later steps remove fine-scale noise (giving the sharp details).
Why diffusion rather than direct prediction? If GenCast directly predicted $X_{t+1}$ from $(X_t, X_{t-1})$ using a deterministic neural network trained with MSE (like GraphCast does), the optimal prediction would be the conditional mean $\mathbb{E}[X_{t+1} | X_t, X_{t-1}]$. As discussed in Section 3 of the paper (in prior sections of this analysis), the conditional mean becomes blurry when uncertainty is high, and it produces biased estimates for non-linear derived quantities. A diffusion model avoids both problems: each generated sample is a specific realization from the full conditional distribution, naturally containing the high-frequency detail that would be averaged away in a mean prediction. When you want the ensemble mean, you average across samples; when you want wind speed, you compute it per-sample and then average—the correct order of operations.
How diffusion works in GenCast—the residual parameterization. GenCast does not directly model the weather state $X_{t+1}$. Instead, it models the residual with respect to the most recent state:
where $X_{t+1}$ is the target weather state, $X_t$ is the previous state, $S$ is a diagonal matrix of per-variable and per-level standard deviations computed from the training data (the same normalization used in GraphCast; Lam et al., 2023), and $S^{-1}$ normalizes the residual to unit variance.
What this does: instead of predicting the absolute value of the next state (which would require the model to re-learn spatial patterns like continents, oceans, and climate norms), the model only predicts the change from the current state. This is a residual prediction that dramatically simplifies the learning problem: the current state already contains most of the information about the next state (weather is highly autocorrelated at 12-hour timescales), and the residual captures only what changes—advection, pressure system movement, diabatic heating, etc.
The forward and reverse processes. The diffusion framework involves two complementary processes:
Forward process (noising): given a clean target residual $Z_t$ (the true future state minus the current state, normalized), add noise $\epsilon \sim p_{\text{noise}}(\cdot | \sigma)$ at noise level $\sigma$ to create a corrupted version:
Reverse process (denoising): given a corrupted residual $Z_t^\sigma$ and the conditioning states $(X_{t-1}, X_{t-2})$, the learned denoiser $D_\theta$ attempts to reconstruct the clean residual:
At training time, the denoiser is trained to predict the clean residual $Z_t$ from the noised version, across a wide range of noise levels $\sigma$. After training, at inference time, we start from pure noise ($Z_t^0 \sim p_{\text{noise}}(\cdot | \sigma_0)$ where $\sigma_0 = 80$) and iteratively apply the denoiser through an ODE solver to progressively reduce the noise level from $\sigma = 80$ down to $\sigma = 0.03$ (effectively zero), at which point the sample is a clean residual that can be added to $X_{t-1}$ to produce $X_t$.
Why noise level $\sigma$ is an explicit input to the denoiser: the same denoiser network must work at all stages of the refinement process—when the sample is mostly noise ($\sigma$ large, early steps) and when it's almost clean ($\sigma$ small, late steps). The noise level is provided as conditioning (via conditional layer normalization, described below) so the network can adjust its behavior: at high noise levels, it should focus on recovering large-scale coherent structure; at low noise levels, it should focus on adding fine detail.
The preconditioning formulation. The paper follows Karras et al. (2022) in expressing the denoiser as a preconditioned version of the raw neural network $f_\theta$:
where $Z_t^\sigma$ is the noise-corrupted residual at noise level $\sigma$, $f_\theta$ is the graph-transformer neural network, $\sigma$ is the noise level, and $c_{\text{in}}$, $c_{\text{out}}$, $c_{\text{skip}}$, and $c_{\text{noise}}$ are preconditioning functions taken directly from Table 1 in Karras et al. (2022).
What this computes: the denoiser output $D_\theta$ is a weighted combination of two terms: (1) a skip connection $c_{\text{skip}}(\sigma) \cdot Z_t^\sigma$ that passes through the input (possibly scaled), and (2) the neural network's output $f_\theta$, scaled by $c_{\text{out}}(\sigma)$. The input to $f_\theta$ is the corrupted residual scaled by $c_{\text{in}}(\sigma)$, conditioned on the previous states and the noise level (converted to Fourier features by $c_{\text{noise}}(\sigma)$).
Why this preconditioning: the functions $c_{\text{in}}$, $c_{\text{out}}$, $c_{\text{skip}}$ are designed to keep the effective input and output of the neural network at unit variance regardless of the noise level $\sigma$. Without preconditioning, the network would receive inputs of vastly different scales depending on $\sigma$ (pure noise has a different variance than mostly-clean data), making training unstable. With the Karras et al. preconditioning, the neural network's task at every noise level is to predict a quantity with roughly zero mean and unit variance, which is much easier to learn.
The specific preconditioning functions used, with $\sigma_{\text{data}} = 1$ (because the targets have been normalized to unit variance per variable and level):
$c_{\text{in}}(\sigma) = 1 / \sqrt{\sigma^2 + \sigma_{\text{data}}^2}$— scales the input so its variance is approximately 1 regardless of noise level$c_{\text{out}}(\sigma) = \sigma \cdot \sigma_{\text{data}} / \sqrt{\sigma^2 + \sigma_{\text{data}}^2}$— scales the network output appropriately for the current noise level$c_{\text{skip}}(\sigma) = \sigma_{\text{data}}^2 / (\sigma^2 + \sigma_{\text{data}}^2)$— when noise is high, rely more on the skip connection; when noise is low, rely more on the network$c_{\text{noise}}(\sigma) = \frac{1}{4} \ln(\sigma)$— a log-transform that makes the noise level easier for the network to process
One exception to the residual formulation: precipitation. For the total precipitation variable (tp in Table B1), GenCast does NOT use the residual formulation $X_t = X_{t-1} + S Z_t$. Instead, it uses:
where $S$ is the normalization factor and the previous state's precipitation is NOT added. This is because precipitation is an accumulated quantity over the 12-hour forecast window, not an instantaneous state variable that persists from one timestep to the next. Adding the previous step's accumulated precipitation would be physically meaningless—what matters is the new precipitation that fell during the current 12-hour window.
Why this matters: this design choice reflects domain knowledge about the physical nature of the variables being predicted. Instantaneous state variables (temperature, wind, pressure, humidity) evolve continuously, so the residual formulation is appropriate. Accumulated flux variables (precipitation) represent a total over a discrete time window, so a direct prediction makes more sense. This attention to variable semantics is one way GenCast incorporates meteorological knowledge into an otherwise purely data-driven approach.
Noise Distribution on the Sphere
A critical but easily overlooked design choice in a diffusion model is the distribution from which noise is sampled—both for corrupting training targets and for initializing the inference process. The standard choice in image diffusion models is independent and identically distributed (i.i.d.) Gaussian noise per pixel. However, GenCast operates on a spherical latitude-longitude grid, and i.i.d. per-cell Gaussian noise has a subtle but important problem.
The problem with naive i.i.d. noise on equiangular grids. On a latitude-longitude grid, grid cells near the poles are physically much smaller than grid cells near the equator. At 0.25° resolution, a cell at 89°N covers an area roughly 75 times smaller than a cell at the equator. If you sample independent Gaussian noise with the same variance at every grid cell, the polar regions will have much higher spatial frequency power—the noise varies rapidly over small physical distances near the poles—while the equatorial regions will have lower spatial frequency power. In the spherical harmonic domain, this manifests as an upward-sloping power spectrum: more power at high wavenumbers than at low wavenumbers. A true isotropic white noise process on the sphere should have a flat expected power spectrum—equal energy at all resolvable spatial frequencies. The naive grid sampling breaks this property.
Why isotropy matters for diffusion models. The diffusion process relies on the denoiser learning to remove noise that is statistically isotropic—it shouldn't matter whether a noisy feature is near a pole or the equator; the denoising task should be equally difficult in all regions. If the training noise has systematically different spectral properties in polar vs. equatorial regions, the denoiser may learn region-specific denoising strategies that don't generalize, or it may devote excess capacity to handling the artificially high-frequency polar noise.
GenCast addresses this with a spherical-harmonic noise sampling procedure (Section D.2):
- In the spherical harmonic domain, sample independent Gaussian coefficients for each wavenumber
$(l, m)$within the range resolvable by the 0.25° grid. - Scale the coefficients so that the expected power spectrum is flat over all resolvable wavenumbers (uniform energy per spherical harmonic degree
$l$). - Apply the inverse spherical harmonic transform (using the method of Driscoll and Healy, 1994) to project these coefficients onto the discrete latitude-longitude grid.
What this produces: per-grid-cell noise values that are NOT independent (especially near the poles, where the inverse transform introduces correlations to enforce smoothness given the oversampling), but that are approximately independent at the resolution resolved at the equator, and that display the desired properties of isotropy and flat power spectrum in expectation.
Empirical impact. The paper states (Section D.2): "Empirically we didn't find this to be a fatal problem; nonetheless we found we can obtain a small but consistent improvement using a different approach to noise sampling which is sensitive to the spherical geometry." This suggests the improvement from spherical-harmonic noise is real but modest—likely a fraction of a percent in overall skill—and that the model is reasonably robust to the noise distribution choice. However, for pushing state-of-the-art performance, these small consistent improvements compound across the many design decisions in the system.
Denoiser Architecture: Graph-Transformer on an Icosahedral Mesh
The architecture of $f_\theta$, the neural network inside the denoiser, is the computational heart of GenCast. It follows the encoder-processor-decoder pattern introduced by GraphCast (Lam et al., 2023) but with several critical modifications—in particular, replacing the message-passing GNN processor with a graph-transformer that applies neighborhood-based self-attention on a spherical mesh.
Encoder: mapping from grid to mesh. The encoder takes four inputs:
- The noise-corrupted normalized residual
$c_{\text{in}}(\sigma) Z_t^\sigma$(the current candidate being refined) - The conditioning state
$X_{t-1}$(the previous weather state, normalized to zero mean and unit variance) - The conditioning state
$X_{t-2}$(the state two steps ago, similarly normalized) - Static and temporal context features (land-sea mask, topography, latitude/longitude, local time of day, elapsed year progress—see Table B1 for the full list)
These are concatenated along the channel dimension and fed into the encoder, which is a GNN that maps from the native 0.25° latitude-longitude grid to an internal learned representation defined on a 6-times refined icosahedral mesh. The icosahedral mesh has 41,162 nodes distributed approximately uniformly over the sphere, with 246,960 edges connecting each node to its neighbors.
Why use an icosahedral mesh rather than operating directly on the grid? The latitude-longitude grid has two problems for neural network processing: (1) the grid cells are non-uniform in area, with severe oversampling near the poles, which would cause the model to waste capacity on polar regions, and (2) convolution or attention on a regular 2D grid of lat-lon coordinates doesn't naturally respect the spherical topology—features that wrap around the globe or cross the poles require special handling. The icosahedral mesh provides an approximately uniform sampling of the sphere (equal-area nodes) with well-defined neighborhood structure, making it a more natural domain for the processor.
The encoder GNN performs message passing between grid nodes and their neighboring mesh nodes, aggregating information from the high-resolution grid to the coarser mesh. For each mesh node, the encoder collects features from all grid nodes within a certain spatial proximity, applies a learned transformation, and produces the initial mesh-node features.
Processor: graph-transformer with k-hop self-attention. This is the core innovation in GenCast's architecture relative to GraphCast. The processor consists of 16 consecutive standard transformer blocks (Nguyen and Salazar, 2019; Vaswani et al., 2017), each with a feature dimension of 512 and 4-head self-attention. The key design choice is the attention pattern: rather than full pairwise attention between all 41,162 mesh nodes (which would be prohibitively expensive—$O(N^2)$ with $N \approx 41000$), each node attends only to itself and to all other nodes within its 32-hop neighborhood on the icosahedral mesh.
What "k-hop neighborhood" means concretely. The icosahedral mesh defines a graph where nodes are connected to their immediate spatial neighbors. The 1-hop neighborhood of a node is the node itself plus all nodes directly connected by an edge. The 2-hop neighborhood is all nodes reachable within 2 edges, and so on. With $k = 32$ hops, each node attends to a spatially localized patch of the mesh—roughly a circular region of nodes within a certain geodesic distance. The exact physical size of this region depends on the mesh resolution; at 6 refinements, the mesh has nodes spaced roughly 120 km apart on average, so 32 hops spans thousands of kilometers—a substantial fraction of the globe, but not the entire sphere.
Why this restricted attention pattern works for weather modeling. Atmospheric dynamics are governed by both local processes (convection, turbulence, orographic lifting) and large-scale teleconnections (Rossby waves, tropical-extratropical interactions). The 32-hop neighborhood covers a physically meaningful intermediate scale: large enough to capture synoptic-scale weather systems (which span hundreds to thousands of kilometers) and their interactions, but small enough that the attention computation remains tractable ($O(N \cdot k^2)$ per head rather than $O(N^2)$). The transformer blocks are stacked 16 deep, so information can propagate beyond the 32-hop neighborhood through multiple layers—a node at layer 16 can indirectly attend to information from nodes up to $16 \times 32 = 512$ hops away, which is effectively global.
Each transformer block uses pre-norm (layer normalization before attention, following Nguyen and Salazar, 2019), and the multi-head attention within each block allows the model to simultaneously attend to different types of spatial relationships (e.g., one head might focus on zonal (east-west) wind patterns while another focuses on meridional (north-south) temperature gradients).
Decoder: mapping from mesh back to grid. After the 16 transformer blocks have processed the mesh-node features, the decoder GNN maps these features back to the native latitude-longitude grid. It performs the inverse operation of the encoder: for each grid node, it aggregates features from neighboring mesh nodes, applies a learned transformation, and produces the output $f_\theta$ on the grid at the original 0.25° resolution. This output is then combined with the skip connection via the preconditioning formula to produce the denoiser output $D_\theta$.
Relationship to GraphCast. Readers familiar with GraphCast will recognize the encoder-decoder structure and the use of an icosahedral mesh. The key architectural differences are:
-
Processor type: GraphCast uses a message-passing GNN with a multimesh hierarchy (coarse and fine meshes for different scales). GenCast replaces this with a graph-transformer on a single mesh, using self-attention rather than message-passing. This is a more expressive architecture that can learn more complex spatial interactions, at the cost of higher computational requirements per layer (attention is
$O(k^2)$per node vs.$O(k)$for message-passing, though the restricted neighborhood keeps this manageable). -
No multimesh hierarchy: GraphCast uses multiple mesh refinement levels to capture both local and global structure. GenCast uses only a single 6-refined mesh, relying on the deep stack of transformer blocks and the 32-hop attention radius to capture multi-scale interactions. This simplifies the architecture while maintaining representational capacity.
-
No autoregressive training fine-tuning: GraphCast is fine-tuned by backpropagating through 12-step trajectories (3 days at 6-hour steps). GenCast is trained only on single 12-hour steps, never seeing its own predictions as inputs during training. This is a significant simplification that avoids the complexities of training through autoregressive rollouts, but it means GenCast must generalize to its own (potentially slightly different) output distribution at inference time purely through the robustness of the diffusion framework.
Conditioning on noise level $\sigma$. The denoiser must behave differently depending on the current noise level: when $\sigma$ is large, it should aggressively denoise; when $\sigma$ is small, it should carefully add fine detail. This conditioning is implemented through conditional layer normalization (Chen et al., 2021). For each layer-norm layer in the architecture, the noise level $\sigma$ is used to determine the scale $\gamma(\sigma)$ and offset $\beta(\sigma)$ parameters of the normalization:
What this does: at different noise levels, the layer normalization applies different scaling and shifting to the normalized activations. This allows a single set of network weights to implement noise-level-dependent behavior: at high $\sigma$, the scaling and shifting might encourage the network to produce large-magnitude corrections (the sample is far from the target); at low $\sigma$, they might encourage small, precision-oriented adjustments.
The noise-level encoding pipeline. The raw noise level $\sigma$ goes through several transformations before reaching the conditional layer-norm layers:
-
Take the natural logarithm:
$\ln(\sigma)$. -
Project onto 32 sine/cosine Fourier features with a base period of 16:
-
Pass these 64 features through a 2-layer MLP to produce a 16-dimensional noise-level encoding.
Why Fourier features? The log-noise level is a scalar, but neural networks struggle to learn high-frequency functions of scalar inputs due to spectral bias. The Fourier feature mapping (similar to the positional encoding in transformers) lifts the scalar into a higher-dimensional space where the network can more easily learn non-linear functions of $\ln(\sigma)$. Using multiple frequencies (32 pairs) allows the network to represent both slow, smooth dependencies and rapid, sharp transitions with respect to noise level.
The 16-dimensional noise-level encoding is then passed to each conditional layer-norm layer in the denoiser, where a linear layer maps it to the scale $\gamma(\sigma)$ and offset $\beta(\sigma)$ specific to that normalization layer.
Input and output dimensions. The input tensor has shape (batch_size, 720, 1440, C_in) where $C_{\text{in}}$ is the sum of:
- All input variables (6 atmospheric variables × 13 pressure levels + 6 surface variables = 84 channels for the noise-corrupted residual
$Z_t^\sigma$) - The same 84 channels for
$X_{t-1}$ - The same 84 channels for
$X_{t-2}$ - Static and temporal features (geopotential at surface, land-sea mask, latitude, longitude, local time of day, elapsed year progress—approximately 8 additional channels)
The output tensor has shape (batch_size, 720, 1440, 84) corresponding to the predicted clean residual for all predicted variables.
Training the Denoiser: Objective, Noise Schedule, and Loss Weighting
GenCast is trained on 40 years of ERA5 reanalysis data from 1979 to 2018 (Section B.1, Section D.4). The training procedure follows the diffusion model framework but with several important adaptations for the weather forecasting domain.
Training objective. At each training step, a training example consists of three consecutive weather states: $(X_{t-2}, X_{t-1}, X_t)$ at 12-hour intervals. The model is trained to denoise a corrupted version of the target residual $Z_t = S^{-1}(X_t - X_{t-1})$.
The noise corruption process:
- Sample a noise level
$\sigma \sim p_{\text{train}}$(where$p_{\text{train}}$is the training-time noise level distribution, described below). - Sample noise
$\epsilon \sim p_{\text{noise}}(\cdot | \sigma)$from the spherical-harmonic noise distribution. - Create the corrupted residual:
$Z_t^\sigma = Z_t + \epsilon$. - Apply the denoiser:
$Y_t = D_\theta(Z_t^\sigma; X_{t-1}, X_{t-2}, \sigma)$. - Compute the loss between the denoiser's prediction
$Y_t$and the clean target$Z_t$.
The loss function is a weighted mean squared error:
where $\mathcal{D}_{\text{train}}$ is the training set of timesteps, $\lambda(\sigma)$ is the per-noise-level loss weight from Karras et al. (2022), $G$ is the set of grid cells (latitude-longitude locations), $J$ is the set of variables and pressure levels, $w_j$ is the per-variable-level loss weight set as in Lam et al. (2023), and $a_i$ is the area of grid cell $i$ (which varies with latitude and is normalized to unit mean over the grid).
What it computes: a spatially-weighted pixel-wise MSE between the denoised prediction and the ground-truth residual. The loss is computed at every grid cell for every predicted variable, weighted by:
- Noise-level weight
$\lambda(\sigma)$— prevents the loss from being dominated by either very high or very low noise levels. - Per-variable weight
$w_j$— different variables have different physical units and typical magnitudes; the weights balance their contributions so that no single variable dominates the training signal. The weights are the same as used in GraphCast, with the additional sea surface temperature (SST) variable weighted at 0.01. - Grid-cell area
$a_i$— ensures that the loss is proportional to physical area, preventing the polar regions from being underweighted (since there are more grid cells per unit area near the poles, without area weighting they would collectively dominate the loss).
Why this form: MSE is the standard loss for diffusion models because it corresponds to maximizing the evidence lower bound (ELBO) for the denoising score matching objective. The spatial weighting accounts for the non-uniform geometry of the latitude-longitude grid, which is critical for a global model—without it, the model would optimize primarily for polar performance at the expense of equatorial and mid-latitude performance.
Training-time noise level distribution $p_{\text{train}}$. Instead of using the standard log-normal distribution suggested by Karras et al. (2022), GenCast constructs a distribution whose quantiles match the noise-level schedule used during sampling:
where $u \sim U[0, 1]$ is a uniform random variable, $\sigma_{\text{max}} = 88$ (training), $\sigma_{\text{min}} = 0.02$ (training), and $\rho = 7$ (the same $\rho$ as used during sampling).
Why this distribution shape: the noise-level schedule during sampling concentrates more steps at low noise levels (where fine details are refined) than at high noise levels (where the global structure is established). By matching the training distribution to the sampling schedule, the denoiser is trained more on the noise levels where it needs to be most accurate during inference. The parameter $\rho$ controls the concentration: larger $\rho$ puts more probability mass at low noise levels. The training range ($[0.02, 88]$) is slightly wider than the sampling range ($[0.03, 80]$; see Table D2), providing the denoiser with some exposure to noise levels outside the sampling range, which improves robustness.
Why not the standard log-normal distribution? The log-normal distribution has most of its mass at intermediate noise levels, which are not where the sampler spends most of its steps. Training the denoiser to be accurate at noise levels it rarely encounters is inefficient; matching the training distribution to the sampler's schedule ensures that training compute is allocated where it most directly improves sample quality.
Two-stage resolution training schedule. Training directly at the full 0.25° resolution from scratch would be very computationally expensive. GenCast uses a curriculum learning strategy:
-
Stage 1 (pre-training): 2 million training steps at 1° resolution (bilinearly downsampled from 0.25°). The denoiser architecture uses a 5-refined icosahedral mesh (coarser than the final mesh). This stage takes "a little over 3.5 days using 32 TPUv5 instances" (Section D.4.1).
-
Stage 2 (fine-tuning): 64,000 additional training steps at the full 0.25° resolution, with an updated denoiser architecture operating on a 6-refined icosahedral mesh. This stage takes "just under 1.5 days using 32 TPUv5 instances."
The GNN and graph-transformer architectures are designed so that the same model weights can operate on different data resolutions and mesh refinement levels. When transitioning from Stage 1 to Stage 2, the data resolution increases by a factor of 4 in each spatial dimension (from 1° to 0.25°), and the mesh gains one additional level of refinement.
A subtle but important transition detail: when moving from 1° to 0.25° resolution, each mesh node receives messages from 16× more grid nodes in the encoder GNN (because the grid is 4× finer in each dimension). To prevent this sudden increase in message volume from destabilizing training at the start of fine-tuning, the authors divide the sum of incoming message vectors by 16:
"To approximately preserve the scale of the incoming signal to all mesh nodes at the start of finetuning, we therefore divide the sum of these message vectors by 16."
This is a simple normalization that ensures the mesh nodes see inputs of approximately the same magnitude immediately after the resolution switch, allowing the model to adapt gradually to the higher-resolution features without an initial shock to the activations.
Training hyperparameters (Table D1):
| Parameter | Stage 1 (1°) | Stage 2 (0.25°) |
|---|---|---|
| Optimizer | AdamW (Loshchilov and Hutter, 2018) | AdamW |
| Learning rate schedule | Cosine decay | Cosine decay |
| Batch size | 32 | 32 |
| Warm-up steps | 1,000 | 5,000 |
| Total train steps | 2,000,000 | 64,000 |
| Peak learning rate | 1e-3 | 1e-4 |
| Weight decay | 0.1 | 0.1 |
Important architectural equivalence to GraphCast training. Unlike GraphCast, which is fine-tuned by backpropagating gradients through 12-step autoregressive trajectories (3 days at 6-hour steps; Lam et al., 2023), GenCast is never trained on its own predictions. It is only trained to predict the next 12-hour state from ground-truth ERA5 inputs. This means the model never sees the distribution shift between its own (imperfect) predictions and the ground-truth data during training. The fact that it nonetheless produces stable, skillful 15-day forecasts when rolled out autoregressively (30 steps of 12 hours) is a testament to the robustness of the diffusion framework and the quality of the learned single-step conditional distribution.
Sampling Process: From Noise to Weather State at Inference
Once the denoiser $D_\theta$ is trained, the sampling process generates a weather state $X_t$ by iteratively refining an initial noise sample through a sequence of noise levels. This is the core inference mechanism that turns the trained denoiser into a generative model.
The probability flow ODE. Drawing on the framework of Karras et al. (2022) and Song et al. (2021), GenCast's sampling process approximately solves the probability flow ordinary differential equation (ODE) that transports samples from the noise distribution at $\sigma = \sigma_0$ to the data distribution at $\sigma = \sigma_N = 0$ (or, in practice, $\sigma_N = \sigma_{\text{min}} \approx 0$). Each step of the ODE solver transforms the candidate state from one noise level to the next lower noise level:
where $Z_i^{t}$ is the current candidate residual at noise level $\sigma_i$, $Z_{i+1}^{t}$ is the refined candidate at the next (lower) noise level $\sigma_{i+1}$, and $r_\theta$ denotes one step of the ODE solver, which internally calls the denoiser $D_\theta$.
What this step does: given the current partially-denoised state, the conditioning from the two previous weather states, and the current and target noise levels, the solver step produces an updated state that has slightly less noise. Over many such steps, the state converges from pure noise to a clean sample.
The solver choice: DPMSolver++2S. GenCast uses the second-order DPMSolver++2S solver (Lu et al., 2022), which is a faster and more accurate alternative to the Heun solver used in Karras et al. (2022). As a second-order method, each solver step requires two function evaluations of the denoiser $D_\theta$, except for the final step which uses a first-order Euler update requiring only one evaluation. With $N = 20$ noise levels (the schedule has 20 steps from $\sigma_0 = 80$ to $\sigma_{N-1} = 0.03$), the total number of denoiser evaluations per forecast timestep is:
Why a second-order solver? The ODE describing the diffusion process is relatively smooth, making it amenable to higher-order integration. A second-order method achieves better accuracy per step than a first-order (Euler) method, allowing GenCast to use $N = 20$ steps instead of the hundreds of steps typically needed for high-quality first-order sampling. This is the key to GenCast's speed: 39 denoiser evaluations per 12-hour forecast step, times 30 steps for a 15-day forecast, equals 1,170 total evaluations—each of which must process an 84 × 720 × 1440 tensor through a deep graph-transformer. If each step required 1000 function evaluations (as in early diffusion models for images), the forecast would take hours instead of minutes.
Stochastic churn and noise inflation. Pure ODE sampling is deterministic given the initial noise—different random seeds produce different trajectories, but within each trajectory there is no additional randomness injected after the initial noise. GenCast augments the ODE solver with two stochastic mechanisms from Karras et al. (2022) that inject additional randomness during the sampling process:
-
Stochastic churn: at certain noise levels, the solver deliberately adds noise back into the sample, then runs an additional denoising step. This prevents the sample from getting stuck in local optima and improves sample diversity.
-
Noise inflation: the solver slightly inflates the noise level before each denoiser evaluation, then denoises back to the original level. This has a similar effect to churn, introducing additional stochasticity that improves the quality of the final samples.
The noise level schedule. The sequence of noise levels $\sigma_0, \sigma_1, ..., \sigma_{N-1}$ is defined as:
for $i = 0, ..., N-1$, where $\sigma_{\text{max}} = 80$, $\sigma_{\text{min}} = 0.03$, $\rho = 7$, and $N = 20$.
What this schedule does: when $\rho = 7$, the noise levels are concentrated near $\sigma_{\text{min}}$ (low noise) and spread out near $\sigma_{\text{max}}$ (high noise). For example, the first few steps might go from $\sigma = 80$ to $60$ to $45$ (large jumps at high noise), while the last few steps go from $0.06$ to $0.045$ to $0.03$ (small, careful refinements at low noise). This matches the intuition that early steps establish coarse structure (where large changes are acceptable) and later steps refine fine details (where small, precise adjustments matter).
Why $\rho = 7$? The value of $\rho$ controls how much the schedule concentrates near low noise levels. Larger $\rho$ means more steps at low noise levels, which generally improves sample quality but increases the risk of wasting compute on overly fine refinements. The choice of 7 is the result of empirical tuning, as stated in Table D2.
The full list of sampling hyperparameters (Table D2):
| Parameter | Notation | Value (sampling) | Value (training) |
|---|---|---|---|
| Maximum noise level | $\sigma_{\text{max}}$ | 80 | 88 |
| Minimum noise level | $\sigma_{\text{min}}$ | 0.03 | 0.02 |
| Shape of noise distribution | $\rho$ | 7 | 7 |
| Number of noise levels | $N$ | 20 | — |
| Stochastic churn rate | $S_{\text{churn}}$ | 2.5 | — |
| Churn maximum noise level | $S_{t_{\text{max}}}$ | 80 | — |
| Churn minimum noise level | $S_{t_{\text{min}}}$ | 0.75 | — |
| Noise level inflation factor | $S_{\text{noise}}$ | 1.05 | — |
Putting it all together: the single-step sampling procedure. To generate $X_t$ from conditioning $(X_{t-1}, X_{t-2})$:
- Sample initial noise
$Z_0^t \sim p_{\text{noise}}(\cdot | \sigma_0 = 80)$using the spherical-harmonic noise distribution. - For
$i = 0, 1, ..., N-2$(the first$N-1$steps):- Apply stochastic churn and noise inflation according to the hyperparameters above.
- Run two denoiser evaluations as required by the DPMSolver++2S second-order update.
- Produce
$Z_{i+1}^t$, the refined candidate at the next noise level.
- For the final step (
$i = N-1$):- Apply the first-order Euler update with a single denoiser evaluation.
- Produce
$Z_N^t$, the final clean residual.
- Set
$X_t = X_{t-1} + S Z_N^t$(or for precipitation,$X_t = S Z_N^t$without adding$X_{t-1}$).
Initial Condition Perturbations: Representing State Uncertainty
The diffusion model samples from $p(X_t | X_{t-1}, X_{t-2})$, but to initialize the autoregressive rollout, we need $(X_0, X_{-1})$—the states at the forecast initialization time and 12 hours prior. The simplest approach would be to use the deterministic ERA5 analysis for both. However, this collapses all initial-condition uncertainty to a single point, which would produce an under-dispersed ensemble (all members would start from exactly the same state, with spread coming only from the diffusion model's internal stochasticity).
GenCast uses a more sophisticated initialization (Section C):
Deterministic analysis plus EDA perturbations (the chosen method). ECMWF's ERA5 archive includes both a deterministic reanalysis (the single best estimate) and an Ensemble of Data Assimilations (EDA)—10 ensemble members (9 perturbed + 1 control) computed by running the data assimilation system with perturbed observations (Isaksen et al., 2010). The EDA provides a representation of the uncertainty in the analysis state.
GenCast's initialization procedure (Section C.3):
-
Take the deterministic ERA5 analysis at the two initialization timesteps (
$X_0^{\text{det}}$and$X_{-1}^{\text{det}}$). -
For each ensemble member
$m$, add perturbations equal to the difference between EDA member$m$and the EDA ensemble mean: -
Apply the same perturbation to
$X_{-1}$(using the same EDA member's perturbation at the earlier timestep).
Why this approach, rather than using EDA members directly? The ERA5 deterministic analysis is computed at full 0.28125° resolution, while the EDA members are computed at half that resolution (0.5625°). The deterministic analysis is therefore a higher-quality state estimate. By taking the high-quality deterministic analysis and adding the EDA-based perturbations, GenCast combines the best of both worlds: the accuracy of the deterministic analysis with the uncertainty representation of the ensemble.
This is analogous to the approach used operationally at ECMWF to initialize ENS (Buizza et al., 2008), though ECMWF additionally includes singular vector perturbations to address the known under-dispersion of EDA perturbations alone. GenCast does not include singular vector perturbations because they were not readily available for the ERA5 EDA dataset (Section C.3).
Alternative methods explored but not used. The paper explored several other initialization strategies:
-
Deterministic analysis only (no perturbations): all ensemble members start from the same state. This was tested (Section C.1) and, surprisingly, worked relatively well—GenCast still outperforms ENS on 97% of targets even without EDA perturbations (Section F.11, Figure F29). However, without perturbations, the ensemble is significantly under-dispersed at short lead times. The CRPS and RMSE metrics are similar to the perturbed version (Figure F28), but the spread-skill ratio is farther from 1 (Figure F30). The paper attributes this to the diffusion model generating its own spread through the stochastic sampling process, which partly compensates for the lack of initial condition spread.
-
EDA analysis directly (without deterministic analysis): each ensemble member is initialized from two consecutive EDA analysis states. This was tested but found to be under-dispersed (consistent with Buizza et al., 2008) and reduced quality due to the coarser resolution of the EDA.
-
Additional Gaussian process perturbations (for GraphCast-Perturbed only): to improve the dispersion of the GraphCast-Perturbed baseline, the paper adds ad hoc Gaussian process (GP) perturbations on top of the EDA perturbations (Section C.4, Table C1). These are sampled from a zero-mean GP on the sphere with a Gaussian-like stationary isotropic correlation function (Weaver and Courtier, 2001), a horizontal decorrelation length-scale of 1200 km, and marginal standard deviations equal to 0.085 times the 6-hour differences of each variable. The GP perturbations are applied only to a subset of variables: geopotential, temperature, u and v wind components, and 2-meter temperature, at all pressure levels.
Critically, the authors note: "with the diffusion model they do not give any additional skill over EDA perturbations alone, in fact for the diffusion model, skill is reduced when these perturbations are added with all but the smallest scale factors." This is a telling result: the diffusion model's internal stochasticity already provides sufficient ensemble spread, and the crude, non-flow-dependent GP perturbations actually degrade its performance. GraphCast-Perturbed, being deterministic, needs these extra perturbations to achieve adequate spread. This contrast highlights a fundamental advantage of the generative approach: uncertainty can arise naturally from the model's own stochastic generation process, rather than needing to be injected entirely through perturbed initial conditions.
EDA upsampling detail. Since the ERA5 EDA exists at 0.5° resolution, the EDA perturbations are bilinearly interpolated to 0.25° before being added to the deterministic analysis. For sea surface temperature (SST), which contains NaN values over land, special handling is required: after interpolation, the NaN masks of the EDA and ERA5 data may not exactly align. When a grid point has a valid SST in the deterministic analysis but not in the interpolated EDA perturbation, the deterministic SST value is used without perturbation.
Autoregressive Rollout: Chaining Single-Step Forecasts into a Trajectory
With the single-step diffusion sampler in place, generating a full 15-day forecast trajectory is a matter of applying it autoregressively:
-
Initialization (
$t=0$): Obtain$(X_0, X_{-1})$from ERA5 with EDA perturbations as described above. -
First step (
$t=1$): Generate$X_1$by sampling from the diffusion model conditioned on$(X_0, X_{-1})$. This requires 20 solver steps, 39 denoiser evaluations. -
Second step (
$t=2$): The context window shifts. Generate$X_2$conditioned on$(X_1, X_0)$, where$X_1$is the model's own prediction from step 1 (not ground truth). Another 39 denoiser evaluations. -
Continue for
$t = 3, 4, ..., 30$: Each step conditions on the two most recent predicted states. The model never sees ground-truth inputs after the first step. -
Result: A 15-day trajectory
$X_{1:30}$sampled from the approximate joint distribution$p(X_{1:30} | X_0, X_{-1})$.
Why this works despite distribution shift. The model was trained to denoise target states conditioned on ground-truth previous states, but at inference it conditions on its own (imperfect) predictions. This creates a distribution shift: the statistics of the model's predictions differ from those of the ground-truth data. In principle, this mismatch could cause errors to accumulate and eventually cause the trajectory to diverge from realistic weather. That GenCast produces stable, skillful 15-day forecasts despite this shift is evidence that:
- The single-step predictions are accurate enough that their statistics remain close to the ground truth.
- The diffusion model's probabilistic nature provides some robustness: even if the conditioning states are slightly different from those seen during training, the denoiser can still produce plausible continuations.
- The residual formulation helps: the model only needs to predict the change from the conditioning states, which is relatively insensitive to small errors in those states.
Generating the ensemble. To produce a 50-member ensemble (matching ENS's 50 members), the above autoregressive procedure is repeated 50 times with:
- Different initial noise
$Z_0^1$for the first timestep (each ensemble member gets independent noise). - Different EDA member perturbations for the initial conditions (since EDA has only 10 members, the same perturbations are reused across multiple ensemble members, but combined with different internal noise, the trajectories diverge).
Each ensemble member is an independent sample from the approximate predictive distribution. The ensemble can then be used to compute any desired statistic: the ensemble mean, quantiles, exceedance probabilities, or (as shown in the evaluation sections) to compute CRPS, REV, Brier skill scores, etc.
Computational cost. The paper states that generating a single 15-day GenCast forecast takes "about 8 minutes on a Cloud TPUv5 device" (Section 2), and an ensemble can be generated in parallel across multiple devices. This is dramatically faster than operational NWP ensembles, which require hours on specialized supercomputing infrastructure. The speed enables more frequent updates, larger ensembles, or higher-resolution forecasts—though the current 0.25° resolution already matches or exceeds operational standards.
4. Key Insights and Innovations
Innovation 1: Reframing Weather Forecasting as Conditional Generative Modeling Rather Than Deterministic Regression
The paper's most fundamental conceptual move is not any single architectural choice but the reframing of the weather forecasting problem itself: from predicting the expected future state to sampling from the full conditional probability distribution.
Before GenCast, the dominant paradigm in machine learning weather prediction (MLWP) was deterministic regression to the conditional mean. Models like GraphCast (Lam et al., 2023), Pangu-Weather (Bi et al., 2023), FourCastNet (Kurth et al., 2022), and others were trained to minimize mean squared error (MSE) between their predictions and ERA5 targets. Under this objective, the optimal prediction (in expectation) is the conditional mean $\mathbb{E}[X_{t+1} | X_t, X_{t-1}]$. This was the natural default: MSE is simple, well-behaved, and had produced the first ML models to match or exceed the deterministic skill of operational NWP.
GenCast asks a different question: not "what is the most likely next state?" but "what is the distribution of possible next states, and how do we generate specific realizations from it?" This is not a small shift in objective function—it is a categorical change in what the model represents. A deterministic model outputs a single answer; a generative model outputs a mechanism for sampling many answers.
Why this matters beyond the obvious. The field already understood that weather forecasts are uncertain and that ensembles are valuable. The standard approach to obtaining ensembles from deterministic MLWP models was to perturb the initial conditions and run the deterministic model multiple times (as in GraphCast-Perturbed). This paper demonstrates that such post-hoc uncertainty quantification is fundamentally limited: it cannot solve the blurring problem (deterministic models trained with MSE produce smeared-out predictions at long lead times regardless of how you perturb the inputs), and it cannot avoid bias in non-linear derived quantities (where $\mathbb{E}[f(X)] \neq f(\mathbb{E}[X])$). The paper shows this concretely in Section F.9.1: GraphCast-Perturbed exhibits severe negative bias in derived wind speed while showing minimal bias in the native wind components it was trained to predict. This is not a training failure—it is a mathematical consequence of the regression-to-the-mean objective, and no amount of input perturbation can fix it.
The generative framing resolves these issues by construction. Each ensemble member is a specific sample from the joint distribution, so:
- Individual members remain sharp at all lead times (Figure 2b-d vs. 2h-j) because they are realizations, not averages.
- The power spectra of GenCast samples closely match ERA5's across all wavelengths and lead times (Figure 2g, 2m), because the model generates realistic spatial structure rather than averaging it away.
- Non-linear functions can be computed per-sample and then averaged, avoiding the
$\mathbb{E}[f(X)] \neq f(\mathbb{E}[X])$problem entirely.
This reframing also provides a natural mechanism for generating ensemble spread. In a deterministic model with perturbed initial conditions, all ensemble spread must be injected externally at initialization. In GenCast, spread arises from two sources: perturbed initial conditions AND the internal stochasticity of the diffusion sampling process at every timestep. The paper's ablation (Section F.11) reveals that even when all ensemble members are initialized identically (deterministic analysis, no EDA perturbations), GenCast still outperforms ENS on 97% of CRPS targets (Figure F28)—the model's internal generative stochasticity alone provides useful ensemble dispersion. This is impossible for a deterministic model: zero input spread means zero output spread.
Prior work and the intellectual lineage. The paper explicitly positions diffusion models as part of the "generative AI" lineage (Section 2, Section 9), citing advances in image, audio, and video generation. However, the application to weather forecasting at this scale and the demonstration that the generative approach can outperform the world's top operational physics-based ensemble is unprecedented. Prior work on diffusion for weather existed (e.g., in nowcasting and regional applications) but had not been scaled to global medium-range ensemble forecasting or evaluated against operational systems. The paper's contribution is not the diffusion model itself, but the demonstration that the generative framing, when executed at scale with careful domain-specific engineering, produces a fundamental performance leap rather than just better uncertainty estimates.
Significance beyond performance. This reframing changes what it means to "improve" a weather model. Under the deterministic regression paradigm, improvements meant reducing MSE on the next state. Under the generative paradigm, improvements can come from better representing the full distribution—even if the ensemble mean's MSE doesn't change, sharper individual members, better calibration, or more realistic spatial structure are meaningful advances. This opens a new axis of model development that the deterministic MLWP literature had largely ignored.
The paper is explicit about this shift in Section 9:
"our work demonstrates that cutting-edge generative AI methods can capture very high-dimensional and complex distributions over rich temporal dynamics, with sufficient accuracy and reliability to support effective decision-making in crucial applications."
This is a statement not just about weather forecasting, but about the viability of generative approaches for any domain where the predictive distribution matters more than a single point estimate.
Innovation 2: Establishing That ML-Based Generative Ensembles Can Surpass the World's Top Operational Physics-Based Ensemble
Before GenCast, it was an open and contested question whether purely ML-based weather prediction could ever match—let alone exceed—the skill of operational NWP-based ensemble forecasts. The deterministic MLWP literature had shown that ML models could match or beat deterministic NWP (HRES) on RMSE, but the ensemble forecasting problem was generally considered more demanding: it requires not just accuracy on average but correct representation of uncertainty, calibration, and spatial structure across the full predictive distribution.
The paper's headline result—GenCast outperforms ENS on CRPS for 97.4% of 1320 evaluated targets (Figure 3), with 99.8% at lead times greater than 36 hours—is not just a metric. It is an existence proof that the MLWP paradigm, when built from the ground up as a generative model rather than retrofitted with uncertainty post-hoc, can surpass the best operational ensemble system that required decades of physical understanding, supercomputing infrastructure, and engineering to develop.
Why this result is surprising. The prior evidence pointed in the opposite direction. GraphCast-Perturbed—the most natural MLWP baseline for comparison—only outperforms ENS on 27% of CRPS targets, concentrated at short lead times (Figure F11). At longer lead times, ENS is substantially better, and GraphCast-Perturbed is consistently under-dispersed with ∪-shaped rank histograms (Figures F2–F4). This suggested a fundamental limitation of ML approaches for probabilistic forecasting: maybe the ability to represent uncertainty requires the physical constraints embedded in NWP models, and purely data-driven models would inevitably become overconfident or poorly calibrated at longer ranges.
GenCast overturns this assumption. Not only does it outperform ENS on the vast majority of targets, but its calibration metrics—spread/skill ratios and rank histograms (Figures F2–F4)—are generally as good or better than ENS's. This means GenCast's superior CRPS is not achieved by being overconfident (which would artificially lower CRPS at the expense of calibration). The model genuinely produces better probabilistic forecasts.
The comparison is rigorous in ways that matter. The paper goes to considerable lengths to ensure the comparison is fair, and in several cases gives advantages to ENS:
- ENS is evaluated against HRES-fc0 (its own analysis), while GenCast is evaluated against ERA5—a difference that the paper notes "leaves ENS with a small advantage of up to 2 hours additional look-ahead" (Section 4).
- ENS is initialized at 00/12 UTC (with longer data assimilation windows), while GenCast is initialized at 06/18 UTC (with only 3 hours of look-ahead)—a conservative choice that, as Figure F31 shows, puts GenCast at a systematic disadvantage.
- ENS uses 50 ensemble members, and GenCast uses the same number.
Despite these handicaps, GenCast dominates the scorecard. This makes the result more credible than if the comparison had been engineered to favor the ML model.
The significance extends beyond weather forecasting. This result demonstrates that a learned generative model, trained purely on historical data with no physical equations encoded, can outperform a system built on explicit physical simulation. This is a data point in a broader debate about the relative merits of physics-based vs. data-driven modeling for complex dynamical systems. However, the paper is careful about the boundaries of this claim: GenCast still relies on NWP-based data assimilation for its initial conditions (Section 9):
"GenCast relies on initial conditions from a traditional NWP ensemble data assimilation system, and therefore using GenCast for operational forecasts will still require NWP-based data assimilation to provide the input analysis."
This is an honest acknowledgment that the "purely ML" label applies to the forecast model, not the entire forecasting pipeline. The state inference problem remains in the domain of traditional NWP methods.
What makes this more than just "bigger model, better results." The scale of improvement is not uniform: GenCast's largest gains over ENS are on surface variables and at shorter lead times (1–5 days), where CRPS improvements of 10–30% are common (Figure 3). This suggests GenCast is particularly good at representing near-surface processes and the rapid growth of initial-condition uncertainty—precisely the regime where traditional ensemble methods struggle due to under-dispersion of initial perturbations and systematic model errors in the boundary layer. The fact that the improvement diminishes at longer lead times for some variables (though GenCast still leads on most) is consistent with the forecast eventually becoming dominated by large-scale error growth where both models have similar skill.
Innovation 3: Demonstrating That Generative Models Avoid the Blurring Problem and Nonlinear Bias Inherent in MSE-Trained Deterministic Forecasts
Section 3 of the paper (in prior sections of this analysis) discusses the blurring problem conceptually: MSE-trained models predict the conditional mean, which becomes a blurry average over many possible states at long lead times. But GenCast provides something more valuable than a conceptual argument—it provides direct empirical evidence that the problem is severe, that it affects practical derived quantities, and that the generative approach solves both issues simultaneously.
The power spectrum evidence (Figure 2g, 2m). The spatial power spectrum is a quantitative measure of how much variability exists at each spatial scale. A sharp, realistic weather state has power across all resolvable wavelengths, with a characteristic $k^{-3}$ to $k^{-5/3}$ decay at high wavenumbers (small scales) due to atmospheric turbulence and dynamics. A blurry state loses power at high wavenumbers because the fine-scale features that vary between ensemble members are averaged out.
Figure 2g shows that at a 1-day lead time, GenCast samples' spectra match ERA5 almost perfectly, while the GenCast ensemble mean and GraphCast output already show a slight deficit at short wavelengths. At 15 days (Figure 2m), the gap is dramatic: GenCast samples still match ERA5's spectrum across all wavelengths, while the ensemble mean and GraphCast have lost more than an order of magnitude of power at wavelengths below ~500 km. This is not a subtle effect—it means the deterministic forecasts have essentially no realistic representation of mesoscale weather features. If you want to know whether a cold front will bring intense localized precipitation at a 10-day lead time, a deterministic forecast's answer is a washed-out smear.
Why this matters for decision-making. Many high-impact weather phenomena occur at mesoscales: convective storms, intense precipitation bands, mountain waves, sea breezes, and (crucially for the tropical cyclone application) the inner core structure of hurricanes and typhoons. A forecast that smears these features is not just visually unappealing—it systematically underestimates extremes and cannot provide reliable guidance for spatially localized decisions.
The wind speed bias evidence (Figure F20). The nonlinear bias problem is demonstrated concretely through wind speed. GraphCast and GraphCast-Perturbed are trained to predict the wind vector components $(u, v)$. When wind direction is uncertain, the expected wind vector $(\mathbb{E}[u], \mathbb{E}[v])$ has smaller magnitude than the expected magnitude $\mathbb{E}[\sqrt{u^2 + v^2}]$. This is Jensen's inequality in action: the square root is a concave function, so $\mathbb{E}[\sqrt{u^2+v^2}] \leq \sqrt{(\mathbb{E}[u])^2 + (\mathbb{E}[v])^2}$.
Figure F20 shows that while GraphCast exhibits minimal bias on the wind components themselves (10u, 10v), it exhibits a significant negative bias on derived wind speed—especially at longer lead times, where the bias reaches approximately -0.5 m/s. GenCast, by generating full samples from the joint distribution and computing wind speed per-sample, shows essentially zero bias on wind speed while maintaining low bias on the components.
This is a diagnostic innovation, not just a performance improvement. The paper identifies these as symptoms of the same underlying disease—the MSE training objective forcing the model toward the conditional mean—and shows that the generative approach addresses both simultaneously. This diagnostic framing is valuable because it provides a clear test for whether a proposed MLWP method truly models the distribution or merely approximates the mean: check if (1) the power spectrum of individual samples matches observations at all lead times, and (2) non-linear derived quantities are unbiased.
Comparison to prior work. Prior MLWP papers had noted that their forecasts became blurry at long lead times (Lam et al., 2023, for instance, discussed this), but treated it as a cosmetic issue or a natural consequence of uncertainty. GenCast's contribution is to demonstrate that the blurring has quantitative consequences (power spectrum deficits, bias in derived variables) and that a different modeling paradigm—generative rather than deterministic—is required to solve it, not just incremental improvements to the deterministic architecture.
The paper's treatment of wind speed as a "derived variable" is particularly clever. It's a simple, physically meaningful nonlinear transform that any weather model should handle correctly, and it provides an unambiguous diagnostic. If your model can't get wind speed right without bias, it's not correctly representing the joint distribution of the wind vector components—even if it scores well on component-wise RMSE. This is the kind of diagnostic that could guide future MLWP development.
Innovation 4: Architecting a Graph-Transformer Diffusion Model That Operates Efficiently on the Sphere
This is a systems and engineering innovation rather than a conceptual one, but it deserves recognition because the path from "diffusion models work for images" to "diffusion models produce operational-quality 15-day global weather forecasts" required solving several non-trivial problems that prior work had not addressed.
The spherical noise distribution (Section D.2). The standard approach in image diffusion models is i.i.d. Gaussian noise per pixel. On a latitude-longitude grid, this breaks the isotropy of the noise due to the convergence of meridians at the poles. The paper's solution—sampling isotropic Gaussian noise in the spherical harmonic domain and projecting onto the grid via inverse spherical harmonic transform—is elegant and physically motivated. It's a small change (the paper admits the improvement is "small but consistent") but it demonstrates attention to the geometric properties of the domain that is essential for pushing state-of-the-art performance on global tasks.
The graph-transformer with k-hop attention on an icosahedral mesh. Moving from GraphCast's message-passing GNN to a graph-transformer with localized self-attention is a significant architectural choice. Message-passing GNNs aggregate information from immediate neighbors through fixed-order computations; transformers with k-hop attention allow each node to directly attend to all nodes within a larger spatial neighborhood in a single layer. The 32-hop radius on a 6-refined icosahedral mesh spans thousands of kilometers—enough to cover a synoptic-scale weather system. This means the model can directly learn interactions between distant atmospheric features (e.g., a cold front in the mid-latitudes and a tropical moisture plume) without needing information to propagate through many message-passing layers.
The architecture is not fundamentally new—graph transformers and k-hop attention exist in the graph learning literature—but the specific instantiation at this scale (41,162 mesh nodes, 16 transformer layers, feature dimension 512) and for this domain is a substantial engineering achievement. The fact that it can be trained in ~5 days on 32 TPUv5 instances and generate a 15-day forecast in 8 minutes on a single device is a testament to careful implementation.
The two-stage resolution training curriculum. Training directly at 0.25° from scratch would be extremely expensive. The paper's solution—pre-train at 1° with a coarser mesh, then fine-tune at 0.25°—is a practical curriculum learning strategy that reduces total training cost. The specific detail about dividing incoming messages by 16 when transitioning from Stage 1 to Stage 2 (to preserve activation scales) is the kind of careful engineering that makes the difference between a method that works in principle and one that works in practice at scale.
Training only on single 12-hour steps, never on autoregressive rollouts. This is a negative design choice that is as important as any positive one. GraphCast required fine-tuning through 12-step trajectories, which is complex and computationally expensive. GenCast achieves stable 30-step rollouts despite never being trained on its own predictions. This is evidence that the diffusion framework, with its careful noise scheduling and the inherent regularization of the denoising objective, produces single-step predictions that are robust enough to chain autoregressively without divergence. It also simplifies the training pipeline considerably.
How this innovation relates to prior work. The architecture is an evolution of GraphCast, not a revolution. The encoder and decoder are directly from GraphCast. The icosahedral mesh is from GraphCast. The per-variable normalization is from GraphCast. What GenCast adds is the transformer processor, the diffusion framework, and the specific adaptations for spherical geometry and efficient sampling. This is incremental in components but fundamental in the resulting capability—the whole is greater than the sum of its parts.
The paper's honest assessment of what did and didn't help is valuable. The spherical-harmonic noise improves things "a small but consistent" amount—not transformative. The training-time noise distribution matching the sampling schedule is a small tweak. The DPMSolver++2S solver is a drop-in replacement from the diffusion literature. None of these individual changes is earth-shattering, but together they enable a system that produces operational-quality ensemble forecasts. This is characteristic of the best systems work: no single magic bullet, but careful integration of many well-chosen components.
Why this matters beyond this paper. The architecture demonstrates that graph transformers on spherical meshes are a viable alternative to both grid-based CNNs/transformers (which struggle with polar regions and spherical topology) and physics-based spectral transform methods (which are computationally expensive). The specific design choices—k-hop attention radius, mesh refinement level, number of transformer layers—were presumably tuned for weather forecasting, but the general approach could transfer to other global-scale spatiotemporal prediction problems (climate modeling, ocean dynamics, space weather).
Innovation 5: A Comprehensive Evaluation Framework That Goes Beyond Standard Verification Metrics to Measure Practical Decision-Making Value
The paper does not just claim GenCast is "better"—it demonstrates this across a vertically integrated evaluation stack that spans from per-grid-cell marginal calibration to end-user decision-making value. This evaluation methodology is itself a contribution, because it sets a standard for what "better" means in probabilistic weather forecasting that goes well beyond the RMSE comparisons common in the MLWP literature.
The progression of evaluation depth is deliberate:
-
Standard probabilistic verification (CRPS, Section 5): The scorecard in Figure 3 is the entry point—comprehensive, rigorous, and establishes the baseline claim.
-
Calibration diagnostics (Section 6): Spread/skill ratios and rank histograms (Figures F2–F4) go beyond "does the forecast have low error" to ask "does the forecast know when it's likely to be wrong?" This is essential for trust: a forecast that is occasionally very wrong but overconfident (like GraphCast-Perturbed, which is consistently under-dispersed) is dangerous to act on.
-
Extreme event value (Section 7): The Relative Economic Value (REV) analysis is where the evaluation gets genuinely distinctive. Rather than reporting a single metric, REV evaluates the forecast's value across a range of possible decision thresholds (cost/loss ratios), from "I'll prepare even for a small chance" (very low cost/loss) to "I'll only prepare if it's nearly certain" (high cost/loss). This matters because different users face different decision problems, and a forecast that's better for one may be worse for another. The paper shows that GenCast provides higher REV than ENS across a broad range of cost/loss ratios for extreme temperature (Figure 4a), extreme wind (Figure F15), and extreme low pressure (Figure F16), with the improvements often being largest at small cost/loss ratios—precisely the regime relevant for high-stakes extreme weather decisions.
-
Tropical cyclone tracking (Section 7.2): This is a complete end-to-end application evaluation. The paper applies the same open-source cyclone tracker (TempestExtremes) to both GenCast and ENS, generates strike probability maps, and evaluates REV. This isolates the quality of the raw forecasts rather than being confounded by differences in post-processing. The result—"11%, 38%, 106% higher relative economic values at 1 day, 3 days and 5 days lead time respectively" at a cost/loss ratio of 0.01 (Figure 4b)—is concrete and interpretable: at 5 days out, GenCast provides roughly twice as much decision-making value as ENS for cyclone preparation.
-
Spatial structure verification (Section 8.1): The pooled CRPS evaluation with max-pooling and average-pooling at multiple spatial scales (120 km to 3828 km) addresses a blind spot of per-grid-cell metrics: they don't measure whether the forecast captures the spatial coherence of weather systems. A forecast that correctly predicts the probability of rain at each point but gets the spatial pattern wrong (e.g., a weather front in the wrong location by 100 km) would score well on per-cell CRPS but poorly on pooled CRPS. GenCast's strong performance on max-pooled CRPS—outperforming ENS on 97.6% of targets, compared to GraphCast-Perturbed's 7.0% (Figure F24)—demonstrates that the generative approach captures realistic spatial structure, not just independent per-cell distributions.
-
Regional wind power forecasting (Section 8.2): This is the most directly practical application, connecting weather forecasts to energy grid operations. The simplified experiment (interpolating 10m wind speed at all 5344 GPPD wind farm locations, applying an idealized power curve, and aggregating spatially) is a credible first step toward operational wind power forecasting. The ~20% CRPS improvement at short lead times (Figure 4d) translates directly to reduced reserve requirements and lower carbon emissions from spinning reserves.
Why this evaluation stack is innovative. Prior MLWP papers (including GraphCast) focused heavily on RMSE and, to a lesser extent, on CRPS. GenCast's evaluation is more comprehensive in three ways:
-
Decision-theoretic grounding: REV connects forecast quality to economic value. This is a standard concept in the meteorological verification literature (Richardson, 2000; Wilks, 2001) but has been largely absent from MLWP papers, which tend to favor simpler metrics.
-
Application-specific evaluation: The cyclone tracking and wind power evaluations demonstrate that GenCast's performance improvements on gridded metrics translate to improvements on downstream tasks that matter to real users. This closes the gap between "better CRPS" and "actually more useful."
-
Spatial structure diagnostics: The pooled CRPS evaluation reveals a dimension of forecast quality (spatial coherence) that per-cell metrics miss entirely, and shows that GenCast excels at it while GraphCast-Perturbed fails catastrophically at larger scales (Figure F22–F26).
The significance of GraphCast-Perturbed's poor spatial structure performance. This is a finding that goes beyond GenCast's success to reveal something about the limitations of perturbation-based ensembles more generally. GraphCast-Perturbed only outperforms ENS on 7.0% of max-pooled CRPS targets and 23.9% of average-pooled CRPS targets. At larger pooling scales, its relative performance actually degrades (Figures F25–F26). This means that even with carefully tuned perturbations, a deterministic MSE-trained model cannot generate realistic spatial structures in its ensemble members—the individual members are blurry, and the ensemble spread doesn't capture the true spatial uncertainty. This is a fundamental limitation that perturbation-based approaches cannot fix, and it validates the paper's core thesis that generative modeling is necessary, not just beneficial, for ensemble forecasting.
This evaluation framework sets a new bar for the field. Future MLWP papers claiming to produce ensemble forecasts should, at minimum, demonstrate calibration (spread/skill, rank histograms), spatial structure (pooled metrics at multiple scales), and decision-making value (REV) on relevant extreme events or applications. The paper provides a template for what rigorous probabilistic forecast evaluation looks like.
5. Experimental Analysis
Evaluation Methodology
-
Dataset. All primary evaluation uses the year 2019 as the test period, with 2018 held out as a validation set during model development. GenCast was trained on 40 years of ERA5 reanalysis data (1979–2018) at 0.25° resolution, with 12-hour temporal spacing, covering 6 surface variables and 6 atmospheric variables at 13 vertical pressure levels (Table B1). ENS is evaluated against HRES-fc0 (ECMWF's operational analysis), while ML models are evaluated against ERA5, as described in Section 4 and following the protocol from Lam et al. (2023, Appendix Section 5.2). The test period of 2019 was chosen because it was the last complete year available at the time the evaluation was frozen, and it contains the full seasonal cycle as well as several notable extreme weather events (including Typhoon Hagibis, Cyclone Idai, Typhoon Halong, and Hurricane Dorian).
-
Base model(s). The paper evaluates a single GenCast model (the diffusion model described in Section D) and two primary baselines. ENS (ECMWF, 2019) is the state-of-the-art operational NWP-based ensemble forecast, running at 0.2° resolution with 50 perturbed members, which the paper regrids to 0.25° for comparison. GraphCast-Perturbed is constructed by taking the deterministic GraphCast model (Lam et al., 2023) and generating ensembles through initial condition perturbations: ERA5 deterministic analysis plus ERA5 EDA perturbations plus additional ad hoc Gaussian process perturbations (detailed in Section C.4) to address the deterministic model's inherent lack of dispersion.
-
Metrics. The paper employs a vertically integrated suite of verification metrics (Section E.2). The primary probabilistic metric is the Continuous Ranked Probability Score (CRPS) (Gneiting and Raftery, 2007), computed using the standard estimator for finite ensembles of size M = 50 (Equation E1), with per-grid-cell values weighted by latitude-varying cell area and averaged globally. Ensemble-Mean RMSE (Equation E2) provides a deterministic skill comparison. Calibration is assessed through spread/skill ratios (Equation E6, where a ratio of 1 indicates perfect calibration), and rank histograms (Talagrand, 1999), where a flat histogram indicates the truth is indistinguishable from ensemble members. For binary events (extreme exceedances, cyclone presence), the paper uses Brier Skill Scores (Equation E10, normalized against climatology) and Relative Economic Value (REV) (Equation E16–E17, Richardson, 2000), which evaluates forecast value across a range of cost/loss decision thresholds. For spatial structure evaluation, pooled CRPS is computed on forecasts and targets aggregated over circular regions at six spatial scales (120 km to 3828 km, Figure E2) using both average-pooling and max-pooling. For regional wind power, CRPS is computed on sum of wind power across wind farm groups.
-
Baselines. Three baselines are compared throughout:
- ENS (ECMWF, 2019) — the operational 50-member NWP ensemble, the primary baseline and world's top operational system.
- GraphCast-Perturbed — ensembles from the deterministic GraphCast model (Lam et al., 2023) with EDA + Gaussian process initial condition perturbations (Section C.4).
- Climatology — used as the reference for Brier Skill Score normalization and REV computation (where climatology yields REV of 0).
For the Ensemble-Mean RMSE evaluation only (Figure F5, F6), the deterministic HRES forecast and deterministic GraphCast are also shown.
-
Generation budget / compute accounting. GenCast generates a 50-member 15-day ensemble with 30 timesteps (12-hour intervals). Each timestep requires 20 diffusion solver steps with 39 denoiser function evaluations, for a total of 1,170 evaluations per ensemble member. A single 15-day forecast takes approximately 8 minutes on a Cloud TPUv5 device, and ensemble members can be generated in parallel across multiple devices (Section 2). ENS, by comparison, requires hours on specialized supercomputing infrastructure.
-
Cross-validation / statistical protocol. Statistical significance is assessed using the stationary block bootstrap (Politis and Romano, 1994) with 10,000 resamples of paired time-series of per-initialization-time statistics specific to each verification metric (Table E2). Block lengths are selected automatically using the method of Patton et al. (2009) and Politis and White (2004), computed separately for each lead time, variable, and level. The null hypothesis of no difference is rejected when the bias-corrected and accelerated ('bca') confidence interval (Efron and Narasimhan, 2020) does not contain zero. Since ENS is initialized at 00/12 UTC while GenCast uses 06/18 UTC (due to ERA5 assimilation window look-ahead considerations; Section 4, Section E.1), statistics are paired by pairing GenCast forecasts with ENS forecasts initialized 6 hours earlier (maintaining the same lead time), or—for regional wind power only—with the mean of two ENS forecasts with slightly different lead times that share the same validity time (Section E.3).
Main Quantitative Results
Probabilistic Skill: GenCast vs. ENS on CRPS
The headline result appears in Figure 3's CRPS scorecard: GenCast significantly (p < 0.05) outperforms ENS on 97.4% of the 1320 evaluated variable, lead time, and pressure level combinations. At lead times greater than 36 hours, this rises to 99.8% of targets.
The scorecard reveals a systematic pattern in the magnitude of improvement (color intensity in Figure 3). GenCast's largest advantages—10–30% relative CRPS improvement—concentrate at shorter lead times (1–5 days) for surface variables (2 m temperature, mean sea level pressure, 10 m wind components) and for temperature and specific humidity at higher pressure levels. For atmospheric variables like geopotential at 500 hPa, the improvements are smaller (typically 0–10%) but consistent across lead times. Red cells (ENS better than GenCast) are extremely sparse, and hatched cells (neither model significantly better) appear more frequently at longer lead times for certain geopotential and wind variables.
The line plots in Figure F1 provide quantitative detail for 10 representative variables. For geopotential at 500 hPa (z500), the absolute CRPS values are roughly 50–150 m²/s² across models, with GenCast's relative advantage (bottom row of each panel) growing from approximately 2% at day 1 to approximately 5% by day 15. For 2 m temperature (2t), the improvement is much larger: roughly 10–20% across all lead times, with absolute CRPS values of roughly 0.5–2.0 K for ENS and proportionally lower for GenCast. For specific humidity at 925 hPa (q925), GenCast shows a 10–15% relative improvement that persists out to 15 days.
The paper also reports Ensemble-Mean RMSE (Figure F5): GenCast is as good or better than ENS on 96% of targets, and significantly better (p < 0.05) on 82% of targets. The RMSE scorecard shows patterns similar to CRPS, with the strongest improvements at shorter lead times for surface and lower-tropospheric variables.
Comparison with GraphCast-Perturbed: GenCast outperforms GraphCast-Perturbed on CRPS for 99.6% of targets (Figure F12). GraphCast-Perturbed only outperforms ENS on 27% of CRPS targets, concentrated at short lead times (Figure F11). At longer lead times, ENS is substantially better than GraphCast-Perturbed, sometimes by as much as 20%. This result contextualizes GenCast's achievement: the gap between GenCast and GraphCast-Perturbed is much larger than the gap between GenCast and ENS, indicating that the generative approach—not just the MLWP paradigm generally—is responsible for the improved performance.
Ensemble Calibration
Section 6 evaluates whether GenCast's probabilistic forecasts are well-calibrated—whether the forecast knows when it may be wrong and has appropriate confidence when likely right.
Spread/skill ratios (Figure F2) show that GenCast's ratios are close to 1 from 2–3 days lead time onward for most variables tested (z500, z850, t850, t300, u850, 10u, msl). At very short lead times (12 hours), GenCast shows some over-dispersion (spread/skill > 1), which the paper attributes in Section 4 to the expected artifact of evaluating forecasts with uncertain initial conditions against a deterministic analysis ground truth. ENS also shows ratios mostly close to 1, with some under-dispersion for t300, q700, and 2t. GraphCast-Perturbed shows substantial under-dispersion (spread/skill < 1) across nearly all variables and lead times.
Rank histograms (Figures F3, F4) corroborate this picture. GenCast's rank histograms are generally flat from 1–3 days onward, in most cases flatter than ENS's, and in all cases substantially flatter than GraphCast-Perturbed's, which exhibit the characteristic ∪-shape of under-dispersion (the truth falling consistently near or beyond the tails of the ensemble). At the 12-hour lead time, GenCast's histograms show a slight ∩-shape (over-dispersion), again consistent with the expected artifact of deterministic ground truth evaluation mentioned above.
Extreme Weather Events
Section 7 evaluates GenCast's ability to predict rare and extreme weather events, which is critical because—as the cost/loss decision model makes precise—the value of a forecast is often concentrated in its performance on low-probability, high-impact situations.
Local surface extremes (Section 7.1). For 2 m temperature exceeding the 99.99th percentile (roughly a 7-year return period event), Figure 4a shows that at a cost/loss ratio of 0.05, GenCast yields 1.9× better REV than ENS at 1-day lead time, with consistent advantages across other cost/loss values and at lead times of 5 and 7 days. This pattern generalizes: across extreme thresholds (99th, 99.9th, 99.99th percentiles), variables (extreme high temperature, extreme low temperature, extreme high wind speed, extreme low mean sea level pressure), and lead times up to 7–15 days, GenCast typically provides higher REV than ENS (Figures F13–F16). The grey shading in these figures indicates where the GenCast advantage is statistically significant (p < 0.05). For extreme high temperatures, the advantage is significant across a wide range of cost/loss ratios at lead times of 1, 3, and 5 days; at 7, 10, and 15 days, significance is maintained at the smaller cost/loss ratios most relevant for extreme events.
Brier Skill Scores for extreme events (Figure F17) provide an alternative metric. GenCast significantly improves (p < 0.05) over ENS on Brier Skill Score for predicting exceedances of the 99.99th, 99.9th, and 99th percentiles of high 2 m temperature and 10 m wind speed, and for predictions below the 0.01, 0.1, and 1st percentiles for low temperature and mean sea level pressure. The only exception is low mean sea level pressure, where some improvements are not statistically significant.
Tropical cyclones (Section 7.2). The paper applies the TempestExtremes tracker (Ullrich et al., 2021) to ensemble forecasts from both GenCast and ENS, generating strike probability maps at 1° resolution. REV is computed treating the presence or absence of a cyclone center in a given location at a given time as a binary event.
The headline result (Figure 4b): at a cost/loss ratio of 0.01 (enduring a cyclone unprepared is 100× worse than the cost of preparation), GenCast yields 11%, 38%, and 106% higher REV than ENS at 1-day, 3-day, and 5-day lead times respectively. The statistical significance plot (Figure F18) shows that GenCast significantly outperforms ENS across a broad range of cost/loss ratios at a 1-day lead time, and at smaller cost/loss ratios (roughly < 0.1) at lead times up to 7 days. The 106% improvement at 5 days is the largest relative gain in any evaluation metric reported in the paper.
A robustness check (Figure F19) evaluates both GenCast and ENS against HRES-fc0 targets (ENS's ground truth, disadvantaging GenCast). Despite the distribution shift from the cyclone tracker encountering GenCast's ERA5-targeting forecasts stitched to HRES-fc0 context, GenCast still significantly outperforms ENS at small cost/loss ratios and lead times of 3–5 days, demonstrating that the result is not an artifact of different ground-truth base rates.
Skill in Predicting the Joint Distribution
Section 8 evaluates whether GenCast captures the joint spatiotemporal structure of weather—beyond independent per-grid-cell distributions—which is essential for applications requiring spatially coherent forecasts.
Spatially pooled evaluation (Section 8.1). Forecasts and targets are aggregated over circular regions at six spatial scales (120 km to 3828 km), and CRPS is computed on the pooled quantities. Figure 4c shows the relative CRPS of max-pooled 2 m temperature, where GenCast shows approximately 25% improvement over ENS at short lead times, plateauing near ENS performance from roughly 8 days onward. These improvements are consistent across spatial scales. In contrast, GraphCast-Perturbed not only does substantially worse than ENS, but its relative performance degrades as pooling size increases—an indication that GraphCast's ensemble members fail to capture realistic large-scale spatial structure.
Aggregating over all 5400 pooled verification targets (across all variables, levels, lead times, and spatial scales; Figures F23, F24): GenCast outperforms ENS on average-pooled CRPS in 98.1% of targets and on max-pooled CRPS in 97.6% of targets. GraphCast-Perturbed outperforms ENS in only 23.9% of average-pooled CRPS targets and 7.0% of max-pooled CRPS targets. The paper notes that GenCast's relative performance tends to increase at larger spatial scales, suggesting it is particularly good at capturing the large-scale coherence of weather systems.
Regional wind power forecasting (Section 8.2). 10 m wind speed from forecasts and analyses is interpolated at 5344 wind farm locations from the Global Power Plant Database (Byers et al., 2018), converted to load factor using an idealized IEC Class II turbine power curve (Figure E4), multiplied by nominal capacity, and summed across wind farm groups defined by the same pooling regions used in Section 8.1 (120 km, 240 km, 480 km).
Figure 4d shows that GenCast outperforms ENS's CRPS by around 20% up to lead times of 2 days, 10–20% from 2–4 days, and retains statistically significant (p < 0.05) improvements out to 7–10 days across all three pool sizes (Figure F27). This is a substantially greater improvement than GraphCast-Perturbed provides. The paper is careful to note this is a simplified experiment that does not account for turbine outages, oversupply curtailment, or complex terrain effects, but it demonstrates that GenCast's probabilistic skill improvements translate directly to more accurate wind power forecasts, with implications for reducing fossil fuel-based spinning reserves.
Precipitation Results (Section F.4, Appendix)
While precipitation is evaluated across multiple metrics (RMSE, CRPS, rank histograms, SEEPS), the paper explicitly states in Section 5: "Note, due to our lack of confidence in the quality of ERA5 precipitation data, we exclude precipitation results from our main results." The supplementary results (Figures F7, F8) show GenCast comparing favorably to ENS on 12-hour and 24-hour accumulated precipitation across several metrics, but these are presented as preliminary and subject to the ERA5 precipitation quality caveat.
Ablation Studies and Robustness Checks
Deterministic vs. perturbed initial conditions (Section F.11): When GenCast is initialized with deterministic ERA5 analysis only (no EDA perturbations), the CRPS and RMSE scorecards are nearly indistinguishable from those with EDA-perturbed initial conditions (Figure F28, where the color saturation corresponds to only a ±2% relative difference). Even without EDA perturbations, GenCast still outperforms ENS on 96% and 97% of ensemble-mean RMSE and CRPS targets respectively (Figure F29). The primary impact of perturbed initial conditions is on ensemble dispersion: spread/skill ratios are closer to 1 for the first 1–2 steps with deterministic initialization, but the perturbed version achieves better spread/skill from approximately 2–3 days onward (Figure F30). This ablation demonstrates that GenCast's internal diffusion stochasticity is sufficient to provide useful ensemble spread even without externally injected initial-condition uncertainty—something impossible for deterministic models.
Additional Gaussian process perturbations for GenCast (Section C.4): The GP perturbations that are necessary to achieve adequate dispersion for GraphCast-Perturbed actually degrade GenCast's performance: "with the diffusion model they do not give any additional skill over EDA perturbations alone, in fact for the diffusion model, skill is reduced when these perturbations are added with all but the smallest scale factors." This asymmetry—GP perturbations help GraphCast-Perturbed but hurt GenCast—is a clean demonstration that the two models represent uncertainty through fundamentally different mechanisms.
Initialization time choice (Section F.12.1): GenCast evaluated at 00/12 UTC (with 9 hours of assimilation look-ahead) shows a systematic CRPS and RMSE advantage over GenCast evaluated at 06/18 UTC (with only 3 hours of look-ahead), as shown in Figure F31. This validates the paper's conservative evaluation strategy: all main GenCast results use 06/18 UTC initializations, while ENS is evaluated at 00/12 UTC, giving ENS a small advantage of up to 2 hours additional look-ahead over the ML models (as noted in Section 4).
Lead time interpolation for regional wind power (Section F.12.2): The paper validates its method of comparing GenCast (06/18 UTC initializations) and ENS (00/12 UTC initializations) at the same validity times by testing the approach on 2018 data where 06/18-initialized ENS data was available. Figure F32 shows that the lead-time interpolation of 00/12-initialized ENS forecasts actually overestimates the performance of 06/18-initialized ENS forecasts, particularly at a 12-hour lead time where the overestimate is approximately 6%. This implies that the lead-time interpolation advantaged ENS in the Section 8.2 evaluation, making GenCast's reported wind power CRPS improvements conservative.
Cyclone tracker robustness (Section E.5): The paper uses the same TempestExtremes tracker with the same hyperparameters on all models and ground truth datasets, without tuning to optimize any model's performance. When GenCast is evaluated against HRES-fc0 (ENS's ground truth, which has 23% more cyclones than ERA5; Figure E1), GenCast still significantly outperforms ENS at small cost/loss ratios for 3–5 day lead times (Figure F19), albeit with a smaller margin than when evaluated against its own ERA5 ground truth. This demonstrates that the cyclone results are not an artifact of different cyclone base rates in the two ground-truth datasets.
Derived wind speed bias (Section F.9.1): Figure F20 shows that while GraphCast and GraphCast-Perturbed exhibit minimal bias on the uwnd and vwnd components, they show a significant negative bias in derived wind speed (approximately -0.5 m/s at 15-day lead time). GenCast shows minimal bias on derived wind speed while maintaining low bias on the components. This is not presented as an ablation in the traditional sense, but serves as a diagnostic validating the claim that GenCast correctly models the joint distribution rather than just the marginal means.
Critical Assessment
Main claim: GenCast has greater skill than ENS on 97.4% of evaluated targets. This claim is strongly supported by the comprehensive CRPS scorecard (Figure 3) covering 1320 variable-lead-time-level combinations across a full year of evaluation. The statistical testing methodology (stationary block bootstrap with automatic block length selection, p < 0.05) is rigorous and accounts for temporal dependence. However, several caveats qualify the claim:
First, the result is based on a single test year (2019). While 2019 was chosen before the evaluation was frozen and contains a representative mix of weather regimes and extreme events, one year of data cannot capture interannual variability or demonstrate that the result holds in structurally different years (e.g., strong El Niño vs. La Niña conditions). The paper does not report multi-year averages or year-to-year variability.
Second, the evaluation excludes precipitation from the main 97.4% claim due to concerns about ERA5 precipitation data quality. Precipitation is one of the most societally important forecast variables, and its exclusion means the headline number overstates GenCast's advantage on a complete set of forecast products.
Third, ENS was at 0.2° resolution during the evaluation period (having been upgraded to 0.1° in mid-2023, after the test period). GenCast operates at 0.25°. The resolution difference is small, but it means GenCast was compared against a version of ENS that is no longer operational, and the relative performance at matched 0.1° resolution is unknown.
Fourth, GenCast was given a systematic advantage in one respect: while ENS is operational and must run reliably in real-time with whatever observations are available, GenCast was evaluated retrospectively against ERA5, which benefits from a full assimilation window of observations that would not all be available in real-time. This is an inherent advantage of reanalysis-trained models evaluated against reanalysis, and it means operational deployment may see some degradation relative to these reported numbers.
Main claim: GenCast generates a 15-day ensemble in 8 minutes. This is reported qualitatively in Section 2 without a detailed timing breakdown. The 8-minute figure is not decomposed by component (data loading, diffusion sampling, autoregressive rollout, I/O), and it is not compared to a wall-clock timing of ENS under equivalent conditions. The claim of speed is important for practical impact, but the paper provides minimal quantitative evidence to support it beyond the single stated number. Additionally, the 8 minutes is for one TPUv5 device generating one ensemble member serially; generating a full 50-member ensemble presumably requires either 50× more wall-clock time or 50 TPUv5 devices running in parallel. The paper states ensemble members "can be generated in parallel" but does not report the wall-clock time for a full 50-member ensemble on a specified hardware configuration.
Main claim: GenCast better predicts extreme weather and tropical cyclones. The REV-based extreme weather results (Figures 4a, 4b, F13–F16) support this claim, with statistically significant improvements across a range of thresholds, variables, and lead times. The tropical cyclone result—up to 106% higher REV at 5 days—is particularly striking. However, the cyclone evaluation has several limitations:
The cyclone tracker (TempestExtremes) was tuned for 6-hourly data, and the paper adjusted its hyperparameters (stitch range increased from 8° to 12°, time slice requirement halved) to accommodate 12-hourly forecasts. The paper states these values were "chosen from visual inspection" (Section E.5.2)—a subjective tuning process that could, in principle, favor one model over another, though the use of identical hyperparameters for all models limits this concern.
The evaluation was restricted to 9-day lead times (despite 15-day forecasts being generated) because the tracker may drop cyclones that begin near the end of the forecast period (Section E.5.2). This is a practical constraint of the evaluation methodology but means GenCast's full-horizon cyclone skill is not characterized.
The cyclone evaluation compares GenCast against ERA5 tracks and ENS against HRES-fc0 tracks, which differ in their cyclone counts (ERA5: 1.51 cyclones per timestep, HRES-fc0: 1.85) due to differences in the underlying analyses. The paper argues that REV's normalization accounts for this, but the different base rates mean the two models are effectively being evaluated on slightly different tasks. The robustness check using HRES-fc0 targets for both models (Figure F19) partially addresses this but shows a reduced GenCast advantage.
Main claim: GraphCast-Perturbed fails to rival operational ensemble forecasts. This is clearly supported. GraphCast-Perturbed only outperforms ENS on 27% of CRPS targets (Figure F11), is consistently under-dispersed (Figures F2–F4), and performs catastrophically on max-pooled CRPS (outperforming ENS on only 7.0% of targets; Figure F26). However, GraphCast-Perturbed represents only one specific method for constructing ensembles from deterministic MLWP models. Alternative approaches—e.g., training an ensemble of independently initialized GraphCast models, using more sophisticated perturbation schemes, or incorporating stochastic parameterizations—might yield better ensemble performance. The paper's framing of GraphCast-Perturbed as representing the perturbation-based paradigm is reasonable but not exhaustive.
What is missing. Several experiments would have strengthened the paper's claims:
-
Multi-year evaluation: The 2019-only test period leaves open the question of whether the results are representative or reflect a particularly favorable (or unfavorable) year. A 2016–2019 evaluation, or at minimum a second test year, would substantially increase confidence.
-
ENS at matched resolution: Since ENS was upgraded to 0.1° in mid-2023, an evaluation against that higher-resolution version (at least for a subset of variables and lead times) would address whether GenCast's advantage persists at operational resolution.
-
Computational cost comparison: A FLOPs or core-hour comparison between GenCast (training + inference) and ENS (development + operational running) would contextualize the speed advantage. GenCast's 8-minute inference time is impressive, but the training cost (approximately 5 days on 32 TPUv5 instances) is substantial and should be amortized over the expected number of forecasts.
-
ENS ensemble size scaling: The evaluation uses 50-member ensembles for both models. How does the comparison change with smaller ensembles (e.g., 10 or 20 members, which might be more practical for some users) or larger ensembles (100+ members)? The fair CRPS estimator would be relevant here but is intentionally not used because of the finite-size NWP ensemble analyses.
-
Ablation of the autoregressive rollout length: GenCast is only trained on 12-hour single-step prediction but rolled out for 30 steps. An experiment that characterizes how single-step error compounds over the rollout—for instance, by comparing GenCast's 5-day forecast initialized from ground truth vs. from its own 4.5-day prediction—would illuminate the robustness of the autoregressive procedure.
-
Conditioning length ablation: The model conditions on two previous timesteps. An ablation showing the impact of conditioning on one vs. two vs. three previous states would clarify whether the two-step choice is near-optimal or merely convenient.
-
Sensitivity to diffusion steps: The paper uses N = 20 solver steps. An ablation showing CRPS as a function of N (e.g., N = 10, 20, 40) would reveal whether the 8-minute generation time could be reduced with minimal skill degradation, or whether additional steps would yield further improvements.
-
Direct comparison to other MLWP ensemble methods: Beyond GraphCast-Perturbed, no comparison is made to other ML-based ensemble approaches (e.g., Neural GCM's ensembles, or ensembles from other deterministic MLWP models like Pangu-Weather with perturbation methods). The paper positions itself against NWP-based ENS primarily, but a fuller MLWP baseline comparison would strengthen the claim that GenCast's generative approach is specifically responsible for the gains.
On the 97.4% figure and statistical testing. The paper reports that GenCast significantly outperforms ENS on 97.4% of 1320 targets. The remaining 2.6% (approximately 34 targets) are a mix of ENS wins and non-significant differences. The paper does not enumerate which specific variables, levels, and lead times fall into this 2.6%, making it difficult to assess whether GenCast has systematic weaknesses in particular regimes (e.g., stratospheric variables, very long lead times, specific geographic regions). The scorecard's hatched cells (non-significant differences) provide some information visually but are at a coarse resolution. A more detailed breakdown—perhaps by variable class, vertical level band, or lead time bucket—would strengthen the characterization of GenCast's limitations.
On the calibration results. GenCast's spread/skill ratios and rank histograms are generally good, but the paper's discussion of the short-lead-time over-dispersion (Section 6) merits scrutiny. The paper attributes this to evaluating ensembles with uncertain initial conditions against deterministic analysis, which is a well-known effect (Fortin et al., 2014). However, this means the calibration metrics at short lead times are confounded by the evaluation protocol itself, making it difficult to assess whether GenCast is genuinely over-dispersed at short ranges or whether the metrics are simply reflecting the protocol artifact. The paper acknowledges this but does not attempt to disentangle the two effects (e.g., by evaluating against ensemble analysis or using the fair CRPS estimator at short lead times).
On the regional wind power evaluation. The simplified experiment—using a single idealized power curve, ignoring wake effects, terrain complexity, turbine outages, and curtailment—is acknowledged as a limitation. The paper frames this as demonstrating potential rather than providing operational-grade wind power forecasts. However, the 20% CRPS improvement over ENS should be interpreted cautiously: in a real operational setting with actual power generation data, complex terrain, and turbine-specific power curves, the relative performance might differ substantially. The paper does not validate the idealized wind-to-power conversion against actual wind farm generation data.
6. Limitations and Trade-offs
6.1 The Cost of Difficulty Estimation Remains Unresolved for Test-Time Compute Allocation
The assumption or constraint. The entire compute-optimal framework rests on the ability to estimate prompt difficulty before deciding how to allocate the inference budget. The paper's method for doing so—generating 2048 samples per question and averaging either ground-truth correctness (oracle) or PRM final-answer scores (predicted)—is extraordinarily expensive. At 2048 samples per question, the difficulty estimation step alone consumes more compute than the largest test-time budgets studied (256–512 generations). The authors acknowledge this explicitly in Section 3.2:
"estimating difficulty in this way still incurs additional computation cost during inference... our experiments do not account for this cost largely for simplicity"
The consequence. The reported 4× efficiency gains over best-of-N are computed after difficulty is known, without amortizing the cost of learning it. In a realistic deployment, the total cost would be difficulty estimation + strategy execution, and the former could dominate the latter. The 4× figure should therefore be understood as an upper bound on achievable efficiency rather than a realized deployment gain. A system that spends 2048 generations estimating difficulty and then 64 generations executing the compute-optimal strategy has a total cost of 2112 generations—far worse than simply running best-of-256 without any difficulty estimation at all. The paper's central claim of efficiency improvement is meaningful only if a cheap difficulty estimation method exists, and the paper does not provide one.
What evidence exists in the paper. The paper explicitly flags this as a limitation (Section 3.2) and frames it as an exploration-exploitation tradeoff, but provides no measurements of the actual total cost including difficulty estimation. The difficulty estimation procedure is described in Section 3.2: 2048 samples per question, cross-validated within five difficulty quintiles using two-fold splits on the 500-question test set. The paper notes that predicted difficulty bins (using PRM scores without ground-truth labels) perform similarly to oracle bins (Figures 4, 8), but the cost of generating 2048 samples and scoring them with the PRM remains the same regardless of whether ground-truth labels are used.
Mitigation status. The paper does not mitigate this limitation. Section 8 suggests future work on "pretraining or finetuning models to directly predict difficulty of a question" but develops no such model and provides no evidence that cheap difficulty estimation is feasible. An adaptive difficulty estimation approach—starting with a small number of samples, assessing the score distribution, and allocating the remaining budget accordingly—is mentioned as a conceptual possibility but not explored. Until this gap is closed, the compute-optimal framework is an analytical contribution demonstrating what is possible rather than a practical deployment recipe.
6.2 Hard Problems Remain Essentially Unsolved—Test-Time Compute Cannot Create Capability
The assumption or constraint. The paper's approach assumes that the base model already produces correct solutions at a non-trivial rate. The difficulty estimation depends on the model's pass@1 rate—questions are binned into quintiles based on the fraction of 2048 samples that are correct (Section 3.2). For the hardest bin (bin 5), the base model's pass@1 is near zero, meaning there are essentially no correct solutions in the proposal distribution to find or refine.
The consequence. Across ALL methods tested—PRM search, iterative revisions, and their compute-optimal combinations—the hardest questions show near-zero improvement regardless of compute budget. In Figure 3 (right), bin 5 accuracy hovers at 1–3% for all methods and all budgets (4 to 256 generations). In Figure 7 (right), bin 5 shows roughly 2–3% accuracy irrespective of the sequential-to-parallel ratio at a budget of 128 generations. In the FLOPs-matched comparison (Figure 9), the bin 5 scaling line is essentially flat near 0–5%, and the 14× larger model with only greedy decoding outperforms test-time compute with the smaller model by large margins (e.g., –52.9% relative disadvantage for PRM search at R ≫ 1; Figure 1, bottom-right bar chart).
This establishes a fundamental boundary: test-time compute amplifies existing capability but does not create it. If the base model's pass@1 is near zero on a problem class, no amount of search or revision will help—there are no correct solutions in the proposal distribution to find or refine. For such problems, pretraining a larger model remains the only viable path. The FLOPs-matched comparison in Section 7 quantifies this boundary: test-time compute with a smaller model outperforms a ~14× larger model on easy-to-medium problems but fails on hard problems, with the transition occurring around difficulty bins 3–4.
What evidence exists in the paper. The evidence is consistent and unambiguous. Figures 3 (right), 7 (right), and 9 all show bin 5 flatlines near zero across varying methods, budgets, and allocation strategies. The paper is transparent about this in the Section 7 takeaway box: "Test-time and pretraining compute are not 1-to-1 exchangeable" with the key caveat that "test-time compute provides minimal gains on problems that are fundamentally outside the base model's capability range."
Mitigation status. No mitigation is attempted—nor could one be within this framework. The limitation is intrinsic to the approach: test-time compute operates on the outputs the base model can generate. If the base model cannot produce a correct answer at any non-trivial rate, the verifier has nothing to select and the revision model has nothing to refine. The paper candidly acknowledges this (Section 8) and frames it as a clear boundary condition rather than a solvable problem within the test-time compute paradigm. The implication for practitioners is unambiguous: for genuinely novel or out-of-distribution reasoning that exceeds the base model's training distribution, investment should go into pretraining, not inference-time strategies.
6.3 Single Benchmark, Single Model Family—Generalization Is Unverified
The assumption or constraint. All experiments use the MATH benchmark (500 test questions) with PaLM 2-S* as the base model. The authors state they "believe this model is representative of the capabilities of many contemporary LLMs" (Section 4), but this claim is unverified. Several aspects of the findings could be model-specific or benchmark-specific.
The consequence. The difficulty-dependent scaling patterns—beam search hurting easy problems due to verifier over-optimization (Figure 3, right), revisions helping easy problems but requiring parallel sampling for hard ones (Figure 7, right), and the specific difficulty thresholds separating these regimes—may not transfer to other model families, other benchmarks, or other task types. A model with different calibration properties, different error patterns, or different in-context learning capabilities might exhibit qualitatively different optimal strategies. The MATH benchmark consists exclusively of competition-level math problems requiring symbolic reasoning. It is unclear whether the findings generalize to code generation (where unit tests provide different verifier signals), logical reasoning, scientific QA, or tasks requiring factual knowledge rather than multi-step inference.
The PRM's quality and over-optimization behavior depend specifically on PaLM 2-S*'s output distribution and the Monte Carlo rollout training procedure (Section 5.1, Appendix D). A model with different output characteristics (e.g., more diverse sampling, different error modes) would produce different PRM behavior, potentially shifting the difficulty thresholds where beam search becomes beneficial or harmful. The revision model's ability to learn from incorrect in-context examples depends on the base model's in-context learning capabilities, which vary substantially across model families.
The test set of 500 questions, split into five difficulty quintiles of ~100 each, then further split by two-fold cross-validation, means the compute-optimal policy is selected based on ~50 questions per fold per bin (Section 3.2). This is a small sample for strategy selection, and the paper does not report confidence intervals on the compute-optimal scaling curves, making it difficult to assess whether the observed policy differences are statistically reliable at this sample size or reflect noise in a small-sample regime.
What evidence exists in the paper. The paper provides no cross-model or cross-benchmark experiments. All results are confined to PaLM 2-S* on MATH. The authors acknowledge the single-model limitation explicitly in Section 8: "While we believe this model is representative, future work should validate these findings across other model families and benchmarks." The paper does not report confidence intervals or standard errors on the compute-optimal scaling curves, making it impossible to assess the robustness of the policy selection given the small per-bin sample sizes.
Mitigation status. No mitigation within the paper. The two-fold cross-validation procedure (Section 3.2) addresses overfitting to the test set within the MATH benchmark, but does not address generalization to other models or tasks. The paper frames this as future work (Section 8). For a practitioner considering deployment, this is a significant gap: without evidence that the difficulty-dependent patterns hold for their model on their task distribution, the compute-optimal policies derived here cannot be assumed to transfer. A replication study on at least one additional model family (e.g., LLaMA, GPT) and one additional reasoning benchmark (e.g., GSM8K, HumanEval for code) would be the minimum needed to begin establishing generality.
6.4 The 14× Larger Model Baseline Is Not Compute-Optimal—Weakening the Training-Inference Tradeoff Conclusions
The assumption or constraint. The FLOPs-matched comparison in Section 7 scales only model parameters while holding training data fixed, following the LLaMA paradigm (Touvron et al., 2023). The authors acknowledge that this departs from compute-optimal pretraining (Hoffmann et al., 2022), where both data and parameters would be scaled equally:
"We choose this setting as it is representative of a canonical approach to scaling pretraining compute and leave the analysis of compute-optimal scaling of pretraining compute where the data and parameters are both scaled equally to future work." (Section 7)
Additionally, the 14× larger model uses only greedy decoding—no majority voting, no best-of-N, no search, and no test-time compute of any kind.
The consequence. A Chinchilla-optimal model trained with 14× more total FLOPs (scaling both parameters and data) would likely outperform a parameter-only-scaled model, making the pretraining baseline weaker than it needs to be. The reported advantages of test-time compute over pretraining—e.g., +27.8% relative improvement on medium questions at R ≪ 1 for revisions (Figure 1, top-right bar chart)—may shrink or reverse against a properly compute-optimally trained larger model.
The greedy decoding baseline is similarly weak. Giving the 14× larger model even a modest test-time compute budget (say, best-of-8 with majority voting) would create a much stronger comparison. The paper's FLOPs-matched analysis compares a smaller model with sophisticated test-time strategies against a larger model with no test-time strategies, which stacks the deck in favor of test-time compute. A fairer comparison would allocate the total FLOPs budget between pretraining and inference for the larger model as well, or at minimum give the larger model a comparable per-token inference budget.
What evidence exists in the paper. The paper is transparent about this design choice in Section 7, explicitly acknowledging that compute-optimal pretraining would scale both parameters and data, and stating that this comparison is left to future work. However, the paper does not provide any sensitivity analysis—e.g., what if the larger model were Chinchilla-optimal? What if it used best-of-8 instead of greedy decoding? Without such analysis, the reported crossover points (where test-time compute with a smaller model becomes preferable to pretraining a larger one) are best understood as upper bounds on test-time compute's advantage rather than precise estimates.
The authors defend their choice by noting it is "representative of a canonical approach to scaling pretraining compute" (the LLaMA series), which is true but does not address whether the comparison is fair given the paper's own framing around compute-optimality at inference time.
Mitigation status. No mitigation. The paper leaves the comparison with compute-optimal pretraining to future work and does not explore giving the larger model any test-time compute budget. Section 8 suggests "jointly optimizing the pretraining recipe... and the inference strategy... under a total FLOPs constraint" as a natural next step, which would address this limitation head-on. Until such joint optimization is performed, the FLOPs-matched results should be interpreted cautiously: they demonstrate that test-time compute can substitute for pretraining compute under specific favorable conditions (easy-to-medium problems, low R, non-compute-optimal larger model), not that it generally does.
6.5 Revisions and Search Are Studied Independently—The Combined System Is Unexplored
The assumption or constraint. The paper studies two complementary mechanisms—PRM search (Section 5) and iterative revisions (Section 6)—as independent approaches to test-time compute scaling, but never combines them. Section 8 explicitly acknowledges this:
"we did not experiment with PRM tree-search techniques in combination with revisions"
The consequence. The two mechanisms have complementary, difficulty-dependent strengths: revisions improve the proposal distribution (generating better candidates through iterative refinement), which is most effective on easy problems where the model's initial output is roughly correct (Figure 7, right); PRM search improves candidate selection (finding the best among generated candidates through verifier-guided search), which is most effective on medium-hard problems where exploration of different solution strategies matters (Figure 3, right). A combined system—using the revision model as the proposal distribution within beam search, or using the PRM's per-step scores to guide which revisions to pursue—could yield gains beyond either method alone, potentially pushing the performance ceiling on medium-difficulty problems where both mechanisms show partial effectiveness.
The independent analysis also obscures a practical deployment question: should a real system use revisions, search, or both? The compute-optimal policy selects between them per difficulty bin, but this is "either-or" selection, not integration. A system that uses the revision model to generate candidates and then applies PRM-guided beam search over those candidates might outperform either approach individually, but the paper provides no evidence either way.
What evidence exists in the paper. No experiments combine search and revisions. The paper's framework in Section 2—decomposing test-time compute into proposal distribution modifications and verifier modifications—suggests these are orthogonal, complementary axes, but this is a conceptual claim, not an empirical one. The paper acknowledges this gap in Section 8 as explicit future work.
The revision model experiments (Section 6) use a separately trained ORM (Appendix J) rather than the PRM used for search, because the PRM trained on base model outputs does not transfer well to the revision model's outputs due to distribution shift (Figure 15a). This suggests that combining search and revisions would require either a verifier trained specifically on revision model outputs or a method for aligning the distributions, adding practical complexity beyond simply plugging the two methods together.
Mitigation status. Not mitigated. The paper presents this as future work (Section 8). The distribution shift issue (revision-model ORM vs. base-model PRM) is documented but not resolved (Appendix J, Figure 15). This is a significant gap because the paper's central framing—that test-time compute can be allocated across complementary mechanisms—would be much stronger if it demonstrated that combining them yields super-additive gains. The current results represent a lower bound on what fully integrated system could achieve, and the paper makes no claim about how much additional improvement combination would provide.
6.6 Sequential Revisions Introduce Latency That Is Unaccounted for in the Efficiency Analysis
The assumption or constraint. The paper measures test-time compute in "generations" (number of complete solutions sampled), which is a reasonable proxy for total FLOPs but ignores wall-clock latency. Sequential revisions (Section 6) are inherently serial—each revision t + 1 depends on the output of revision t, so the chain cannot be parallelized. Parallel best-of-N sampling, by contrast, can execute all N samples simultaneously given sufficient hardware.
The consequence. A strategy that allocates 128 generations as 64 sequential revisions × 2 parallel chains takes roughly 64× longer wall-clock time than one that runs 128 parallel samples simultaneously. For latency-sensitive applications—interactive assistants, real-time decision-making, or any deployment where the user is waiting for a response—the sequential-heavy strategies favored by the compute-optimal policy on easy problems (where purely sequential revisions are optimal; Figure 7, right) may be impractical regardless of their accuracy advantages.
The paper reports that compute-optimal revision scaling achieves ~4× greater generation efficiency than parallel best-of-N (Figure 8), but this is a throughput metric, not a latency metric. A user who submits a question and waits for an answer cares about latency, not throughput. If the compute-optimal policy selects a configuration with 64 sequential steps, the user waits 64× longer than for a single parallel batch, even though the total FLOPs cost is the same as 64 parallel samples.
This tradeoff is particularly acute for the easy-problem regime where revisions show their strongest advantage. On easy problems (bin 1), Figure 7 (right) shows that fully sequential revisions are optimal, and Figure 8 shows that compute-optimal revision scaling substantially outperforms parallel baselines. But these are exactly the problems where a user might expect a fast response—they are "easy" relative to the model's capabilities. Making them wait 64× longer for a marginal accuracy improvement over a quick parallel answer may be unacceptable in practice.
What evidence exists in the paper. The paper does not discuss latency or wall-clock time at all. All compute budgets are expressed in generations, and the paper implicitly assumes that all generations have equal cost and can be freely allocated between sequential and parallel configurations. This is a reasonable approximation for total FLOPs but ignores the serial dependency structure of revisions.
Mitigation status. Not addressed. The paper does not mention latency as a consideration, nor does it discuss the practical implications of serial vs. parallel execution for deployment. Section 8 suggests future work on distillation and efficiency techniques for the diffusion model (in the reference example), but the latency-vs-throughput tradeoff is specific to the sequential-vs-parallel allocation question and is not mentioned. For practitioners, this means the compute-optimal strategies must be filtered through a latency budget: the strategy that minimizes expected generations may not be the strategy that minimizes expected wall-clock time, and a latency-aware formulation of the optimization problem (minimizing error subject to both a FLOPs budget and a latency constraint) would be more practically useful.
7. Implications and Future Directions
How This Work Changes the Landscape
This paper shifts the paradigm for machine learning weather prediction from deterministic regression toward the mean to generative sampling from the full predictive distribution. This is not an incremental improvement in forecast accuracy—it is a categorical change in what MLWP models represent. Before GenCast, the best MLWP models (GraphCast, Pangu-Weather, FourCastNet) were trained to minimize MSE, which means their optimal prediction is the conditional expectation E[X_{t+1} | X_t, X_{t-1}]. This objective naturally produces blurry forecasts at longer lead times, systematic bias in non-linear derived variables (like wind speed from wind vector components), and no mechanism for representing uncertainty beyond what can be injected through perturbed initial conditions. GenCast demonstrates that by reformulating the forecast step as conditional generative modeling—specifically, learning p(X_{t+1} | X_t, X_{t-1}) via a diffusion model—all of these problems are resolved simultaneously: individual ensemble members remain sharp at all lead times (Figure 2b–m, quantified by power spectra), derived variables are unbiased (Figure F20), and ensemble spread arises naturally from the model's internal stochasticity rather than needing to be injected entirely through initial-condition perturbations (Section F.11).
The practical consequence is not just better metrics—it is a fundamentally different relationship between the forecaster and the decision-maker. A deterministic MLWP forecast provides a single answer; a perturbation-based ensemble provides multiple answers that are all blurry versions of the same mean; GenCast provides multiple realistic possible weather states that can be used directly in downstream applications. When a power grid operator needs to decide on spinning reserve capacity, they don't want the expected wind power—they want to sample from the distribution of possible wind power scenarios, compute the 95th percentile of required reserve, and provision accordingly. GenCast's samples support this workflow natively, while deterministic models require post-hoc uncertainty quantification that the paper shows is fundamentally incapable of capturing realistic spatial structure (GraphCast-Perturbed outperforms ENS on only 7.0% of max-pooled CRPS targets; Figure F26).
Reconciling contradictory evidence in the MLWP literature. Before GenCast, there was an unresolved tension in the field. On one side, deterministic MLWP models had proven they could match or exceed NWP on RMSE for single forecasts (Lam et al., 2023; Bi et al., 2023). On the other side, attempts to extend these models to ensemble forecasting—primarily through initial-condition perturbation methods—produced disappointing results: GraphCast-Perturbed only outperforms ENS on 27% of CRPS targets (Figure F11), is consistently under-dispersed (∪-shaped rank histograms in Figures F3–F4), and fails catastrophically on spatial structure metrics at larger scales. This created a narrative that perhaps MLWP was fundamentally limited for probabilistic forecasting—that representing uncertainty required the physical constraints embedded in NWP models, and purely data-driven approaches would inevitably be overconfident.
GenCast resolves this tension by demonstrating that the limitation was not in the MLWP paradigm per se, but in the deterministic regression objective. When an MLWP model is built from the ground up as a generative model—trained to sample from the conditional distribution rather than predict its mean—it can surpass the world's best operational physics-based ensemble on probabilistic skill (97.4% of CRPS targets), calibration (flat rank histograms, spread/skill near 1), extreme event value (up to 106% higher REV for tropical cyclones at 5-day lead time), and spatial structure (97.6% of max-pooled CRPS targets). The conflicting prior results were not contradictory—they were testing different modeling paradigms, and the generative paradigm is categorically more capable for probabilistic forecasting.
This reframing also explains why the perturbation-based approach fails in ways that were previously attributed to general ML limitations. GraphCast-Perturbed's poor max-pooled CRPS performance is not due to insufficient ensemble size or suboptimal perturbations—it is a direct consequence of each individual ensemble member being a blurry approximation to the mean. Averaging blurry members doesn't recover sharp spatial structure. This insight redirects future work: improving MLWP-based ensemble forecasts is not primarily about better perturbation schemes, but about building models that generate realistic individual realizations.
Redirecting research priorities. The paper makes several research directions more attractive and several less so:
More attractive: (1) Generative architectures for spatiotemporal prediction beyond weather—the success of diffusion on a high-dimensional, physically constrained, long-horizon autoregressive task suggests applications in climate modeling, ocean dynamics, seismology, and other domains where the predictive distribution matters more than a point estimate. (2) Verifier and calibration research for generative weather models—the paper shows that GenCast's calibration is generally good (flat rank histograms from 1–3 days onward), but the short-lead-time over-dispersion artifact (which the paper attributes to evaluating uncertain initial conditions against deterministic analysis) suggests room for improved calibration methods, particularly for ensemble size-sensitive metrics. (3) Learned data assimilation—GenCast relies on traditional NWP-based data assimilation for initial conditions (Section 9), and an ML-based state inference component would complete the fully-learned forecasting pipeline. (4) Application-specific post-processing—the wind power and cyclone tracking evaluations demonstrate that GenCast's raw forecast quality translates to downstream value, opening the door for fine-tuned generative models for specific decision contexts (energy trading, emergency management, agricultural planning).
Less attractive: (1) Perturbation-based ensemble methods for deterministic MLWP models—the paper provides strong evidence that this approach is fundamentally limited and cannot match generative models on probabilistic skill, spatial structure, or calibration. Continued investment in better perturbation schemes for deterministic backbones is unlikely to close the gap. (2) Pure RMSE optimization for weather forecasting—while RMSE remains important, the paper demonstrates that optimizing only for the mean leaves substantial probabilistic skill on the table, and future MLWP development should adopt training objectives that target the full distribution (whether through diffusion, GANs, normalizing flows, or other generative frameworks). (3) The assumption that MLWP cannot compete with NWP for ensemble forecasting—this paper is an existence proof that it can and does, shifting the burden of proof to those claiming otherwise.
Establishing a new evaluation standard for probabilistic weather forecasting. The paper's evaluation stack—spanning CRPS scorecards, calibration diagnostics, extreme event REV, application-specific cyclone and wind power evaluation, and multi-scale spatial structure verification—sets a methodological bar that future MLWP papers should meet. The finding that GraphCast-Perturbed performs dramatically worse on max-pooled CRPS than on per-grid-cell CRPS (7.0% vs. 27% of targets better than ENS) demonstrates that per-grid-cell metrics alone can paint a misleading picture of ensemble quality. A contribution of this paper is demonstrating how to evaluate probabilistic forecasts rigorously, and future work that only reports RMSE or per-grid-cell CRPS will be incomplete by this new standard.
A boundary on the "ML vs. physics" debate in weather forecasting. The paper's success is sometimes framed as "ML beating physics," but the paper itself is more nuanced. GenCast still depends on NWP-based data assimilation (Section 9), and it is trained on ERA5 reanalysis, which is itself produced by an NWP model with data assimilation. The forecast model is learned, but the state inference and training targets come from traditional methods. This suggests a hybrid future where ML and NWP are complementary: NWP provides the data assimilation and training targets, while generative ML provides the forecast model. The paper's finding that GenCast's generative approach yields better probabilistic skill than the NWP-based ENS—while still depending on NWP for its initial conditions—is not a victory of ML over physics, but a demonstration that the two approaches have different comparative advantages that can be combined.
Follow-Up Research This Work Enables
Training GenCast on operational analysis rather than reanalysis, and evaluating in a true real-time setting. GenCast is trained and evaluated on ERA5 reanalysis, which benefits from a full retrospective assimilation window of observations—including observations that would not be available in real-time. This gives GenCast an inherent advantage over operational ENS: the initial conditions GenCast sees during evaluation are more accurate than what would be available in a real-time operational setting. Rasp et al. (2023) demonstrated that GraphCast trained on operational HRES analysis performs comparably to GraphCast trained on ERA5, but this has not been verified for GenCast, and the diffusion model's sensitivity to analysis quality (vs. reanalysis quality) is unknown. A critical follow-up would train GenCast on ECMWF's operational HRES-fc0 analysis (or a comparable operational analysis dataset) and evaluate it in a simulated real-time setting, where the initial conditions match what would have been available operationally at each initialization time, with no future observations included. This experiment would directly test whether GenCast's reported performance advantage over ENS is achievable in operations, or whether part of the advantage comes from the retrospective nature of reanalysis. If the performance gap narrows substantially, it would suggest that operational deployment requires investment in faster or better data assimilation rather than (or in addition to) better forecast models. If the gap persists, it would strengthen the case for operational adoption. The experiment would also need to address the resolution mismatch: ENS is now at 0.1° (upgraded in mid-2023, after GenCast's 2019 test period), and GenCast would need to be trained and evaluated at comparable resolution to determine whether its advantage persists at operational scales.
Combining GenCast's generative single-step model with a learned data assimilation system to create a fully ML-based forecasting pipeline. GenCast models the forecast distribution p(X_{t+1} | X_t, X_{t-1}) but relies on traditional NWP-based data assimilation (the ERA5 EDA) for the state inference step p(X_0 | O_≤0). This is explicitly acknowledged as a limitation in Section 9: "using GenCast for operational forecasts will still require NWP-based data assimilation to provide the input analysis." A natural next step is to replace the NWP-based data assimilation with a learned component—for instance, a diffusion model that maps from raw observations (satellite radiances, radiosonde profiles, surface station reports) to an ensemble of analysis states, perhaps conditioned on a recent short-term forecast as a prior. This would create an end-to-end probabilistic forecasting pipeline where both state inference and forecast dynamics are learned. This is newly tractable because GenCast demonstrates that diffusion models can handle the high-dimensional, physically constrained distributions involved in atmospheric state estimation, and its autoregressive stability suggests it could be used as the prior for a learned assimilation cycle. A strong follow-up would couple a learned assimilator with GenCast's forecast model in a cycling system and compare the resulting forecasts to those initialized with operational NWP-based assimilation. The key metric would be whether the learned assimilator can provide initial conditions of sufficient quality (and with well-calibrated uncertainty) to maintain or improve GenCast's forecast skill, and whether the combined system can operate stably over multiple assimilation cycles without divergence.
Systematic characterization of GenCast's forecast skill degradation when rolled out autoregressively beyond its training horizon. GenCast is trained exclusively on single 12-hour steps—it never sees its own predictions as inputs during training—yet it produces stable, skillful 15-day forecasts when rolled out for 30 autoregressive steps. This is a remarkable robustness property, but the paper does not characterize how single-step errors accumulate over the rollout. An informative experiment would measure GenCast's forecast error when initialized from ground-truth ERA5 at various lead times versus when initialized from its own previous predictions. Specifically: for a 5-day forecast, compare GenCast(5 days | ground truth at day 0) vs. GenCast(1 day | GenCast(4 days | ground truth at day 0)). The difference isolates the effect of autoregressive error accumulation. Doing this across lead times from 1 to 15 days would reveal whether errors compound linearly, superlinearly, or saturate—and whether there are specific variables, vertical levels, or geographic regions where self-conditioning causes disproportionate degradation. This experiment would also indicate whether the deterministic conditioning (the model conditions on its own predicted state as if it were ground truth) introduces systematic biases that could be corrected, for instance by training the model with noise-augmented conditioning states to make it robust to its own prediction errors. Understanding this accumulation is critical for operational use: if 10-day forecasts are substantially degraded by autoregressive error that could be mitigated by occasional re-initialization from analysis, the operational protocol should incorporate this. If errors compound gently and GenCast's stability is robust, the reliance on 12-hourly analysis updates could potentially be reduced.
Stress-testing GenCast on climate-scale evaluation to determine whether its generative approach captures low-frequency variability and trends. GenCast is evaluated on a single year (2019), which is sufficient to demonstrate medium-range forecast skill but insufficient to assess whether the model captures longer-timescale phenomena: seasonal cycles, interannual variability (e.g., El Niño–Southern Oscillation), decadal trends, or the response to external forcings like rising CO₂. The fact that GenCast remains stable over 15-day rollouts—despite never being trained on multi-step trajectories—is promising but doesn't guarantee that it captures the slow modes of atmospheric variability that matter for subseasonal-to-seasonal prediction. A climate-scale stress test would run GenCast for much longer rollouts (months to years), perhaps with periodic nudging to reanalysis to prevent large-scale drift, and evaluate its ability to represent known modes of variability (Madden-Julian Oscillation, North Atlantic Oscillation, stratospheric sudden warmings) and its sensitivity to boundary conditions (sea surface temperature anomalies, sea ice extent). This would also stress-test the residual formulation: GenCast models the 12-hour change X_{t+1} - X_t, and systematic biases in this residual could accumulate over long rollouts into large mean-state drifts. If GenCast exhibits significant climate drift, it would indicate that the single-step training objective, while sufficient for 15-day forecasts, does not enforce conservation properties or low-frequency fidelity that longer-horizon prediction requires—motivating research into training objectives or architectural constraints that address this. If GenCast does NOT exhibit drift and captures low-frequency variability well, it would open the door to using generative MLWP models for subseasonal and seasonal forecasting, a regime where current MLWP approaches have not been competitive.
Diagnosing and improving GenCast's probabilistic calibration as a function of ensemble size. The paper evaluates 50-member ensembles (matching ENS's operational configuration), but calibration behavior may depend strongly on ensemble size—particularly for extreme event probabilities and rank histogram uniformity at the tails. A systematic experiment would vary ensemble size from 5 to 200 members, computing spread/skill ratios, rank histogram deviation from uniformity, CRPS, and REV for extreme events at each size. This would reveal: (1) whether GenCast's reported over-dispersion at short lead times (spread/skill > 1, ∩-shaped rank histograms at 12h; Figures F2–F4) is a genuine calibration issue or an artifact of evaluating against deterministic analysis with a fixed ensemble size (as the paper suggests, but doesn't verify), (2) how many ensemble members are needed for the REV for extreme events to saturate—the paper's 106% REV improvement for cyclones at 5 days is with 50 members, but a user wanting cyclone probabilities at a specific port might need many more members to resolve low-probability tail events, and (3) whether the fair CRPS estimator (Zamo and Naveau, 2018), which estimates the CRPS of the underlying infinite-ensemble distribution rather than the finite empirical ensemble, reveals different scaling behavior for GenCast vs. ENS—the paper intentionally avoids using fair CRPS because the EDA initial conditions are finite, but for GenCast the diffusion sampler can generate arbitrarily many members, making fair CRPS a relevant diagnostic of the model's underlying distribution. If GenCast's finite-ensemble calibration degrades substantially for small ensembles, it would have practical implications for users with limited computational budgets. If the fair CRPS reveals that GenCast's underlying distribution is substantially better than its finite-ensemble CRPS suggests, it would motivate generating larger ensembles for high-stakes decisions.
Practical Applications and Downstream Use Cases
Operational ensemble forecasting at national weather services, with 8-minute generation enabling more frequent updates, larger ensembles, or higher resolution. The direct application is replacing or supplementing NWP-based ensemble systems like ECMWF's ENS with GenCast at operational weather centers. The paper demonstrates that GenCast provides better probabilistic skill on 97.4% of evaluated targets (Figure 3), better calibration (Figures F2–F4), better extreme event value (up to 106% higher REV for tropical cyclones at 5-day lead time; Figure 4b), and better spatial structure (outperforming ENS on 97.6% of max-pooled CRPS targets; Figure F24)—all while generating a 15-day forecast in 8 minutes on a single TPUv5 rather than hours on a supercomputer. This speed enables operational innovations that are impractical with current NWP-based systems: running ensembles with 200+ members for better-resolved tail probabilities, updating forecasts every 6 hours or more frequently as new observations arrive, generating rapid what-if scenarios for emergency response (e.g., "what's the flooding risk if this storm track shifts 50 km north?"), or running higher-resolution forecasts to better resolve local extreme weather. The economic value is suggested by the REV analysis: for a hypothetical decision with a cost/loss ratio of 0.01 (typical for severe weather preparation), GenCast provides 1.9× better REV than ENS for extreme temperature at 1-day lead time (Figure 4a) and 106% higher REV for cyclone prediction at 5 days (Figure 4b), meaning substantially more value captured from the same forecast information. Even small improvements in extreme event prediction translate to millions of dollars in avoided damages and better-targeted emergency response.
Regional wind power forecasting for grid operators, with ~20% CRPS improvement at short lead times enabling reduced reliance on fossil fuel spinning reserves. The paper's simplified wind power experiment (Section 8.2, Figure 4d) demonstrates that GenCast's ensemble forecasts of 10 m wind speed, when combined with an idealized turbine power curve at 5344 real wind farm locations (from the Global Power Plant Database; Byers et al., 2018), yield approximately 20% better CRPS than ENS up to 2-day lead times, with statistically significant improvements out to 7–10 days. This translates directly to more efficient reserve quantification: if the forecast more accurately predicts the distribution of possible wind power outputs, grid operators can provision reserves more precisely, reducing the amount of fossil fuel generation kept on standby. The paper notes that forecast errors "make it harder to ensure the balance of supply and demand" and that operators "often rely on fossil fuel-based spinning reserves, which undermines wind power's potential for reducing carbon emissions" (Section 8.2, citing Gielen et al., 2019). A concrete deployment scenario would use GenCast's ensemble to compute probabilistic wind power forecasts at the balancing authority scale, with reserve requirements set to cover the gap between forecast and actual generation at a specified confidence level (e.g., 95th percentile of the forecast error distribution). The 20% CRPS improvement at lead times of 1–2 days—precisely when unit commitment decisions are made—could reduce reserve requirements by a corresponding fraction, directly displacing fossil fuel generation. The paper's caveat that this is a "simplified experiment" (no turbine outages, no terrain effects, idealized power curve) means operational deployment would require validation against actual wind farm generation data and calibration with site-specific power curves, but the 20% improvement establishes a meaningful upper bound on potential value.
Tropical cyclone preparedness and evacuation planning, with dramatically improved 5-day lead time prediction enabling better resource prepositioning. The tropical cyclone evaluation (Section 7.2, Figure 4b) is GenCast's most striking application result: at a cost/loss ratio of 0.01, GenCast provides 11%, 38%, and 106% higher REV than ENS at lead times of 1, 3, and 5 days respectively. The 106% improvement at 5 days—GenCast provides roughly twice the decision-making value of ENS at the same lead time—is particularly significant because 5 days is when emergency managers make prepositioning decisions: staging supplies, preparing evacuation routes, and alerting populations. The paper's visualization of Typhoon Hagibis (Figure 2n–q) illustrates the qualitative improvement: at 7 days before landfall, GenCast's ensemble shows a wide spread of possible tracks covering much of Japan's eastern coastline, reflecting appropriate uncertainty. At 3 and 5 days, the spread narrows and centers on the actual landfall location, giving emergency managers increasingly precise information about where to concentrate resources. An operational cyclone warning system using GenCast would run the model every 12 hours (or more frequently, given the 8-minute generation time), produce automated strike probability maps at 1° resolution (as used in the evaluation), and issue alerts when the probability of a cyclone passing within 120 km of a populated area exceeds agency-defined thresholds. The REV results suggest such a system would produce substantially fewer false alarms and missed events than the current ENS-based system, with the largest gains at the 3–5 day horizon where evacuation decisions are made. The cyclone visualization suite (Figures G1–G4 for Idai, Hagibis, Halong, and Dorian) provides face-valid illustrations that GenCast's ensemble spread is physically realistic—not just statistically well-calibrated.
When to Prefer This Method
Prefer GenCast (or generative MLWP more broadly) when:
- The application requires probabilistic forecasts with well-calibrated uncertainty and realistic individual ensemble members, rather than just an accurate ensemble mean (Figures F2–F4 vs. GraphCast-Perturbed's under-dispersion).
- The forecast horizon is beyond ~1 day, where deterministic MSE-trained models begin to blur and exhibit bias in non-linear derived variables (Figure 2g vs. 2m, Figure F20 for wind speed bias).
- Spatial coherence matters—applications like wind farm aggregation, precipitation catchment forecasting, or cyclone track prediction where per-grid-cell uncertainty is insufficient (GenCast: 97.6% of max-pooled CRPS targets better than ENS; GraphCast-Perturbed: 7.0%; Figures F24, F26).
- Fast generation (8 minutes per forecast on a single TPUv5) enables more frequent updates, larger ensembles, or rapid scenario exploration that is impractical with hours-long NWP ensemble runs.
- The forecast variables include non-linear derived quantities (wind speed from components, wind power from speed) where Jensen's inequality would bias deterministic forecasts.
Prefer traditional NWP-based ensembles (like ENS) when:
- The application requires forecasts of variables or processes not included in GenCast's training set (the model predicts a specific subset of ERA5 variables at specific pressure levels; Table B1).
- The forecast resolution must exceed 0.25° (though GenCast's current resolution already approximately matches ENS's 0.2°; scaling to 0.1° is future work).
- No suitable ML hardware (TPUv5 or equivalent) is available for inference.
- Data assimilation must be performed as part of the forecasting system—GenCast assumes initial conditions are provided by an external (currently NWP-based) assimilation system (Section 9).
Prefer deterministic MLWP models (like GraphCast) when:
- Only a single deterministic forecast is needed, and the 8-minute diffusion sampling time (requiring 39 denoiser evaluations per timestep) is prohibitive compared to a single forward pass.
- The application can tolerate blurring at longer lead times and does not require derived variables that are non-linear in the predicted quantities.
- Generating large ensembles is not needed, and the computational overhead of diffusion sampling outweighs the probabilistic benefits.