Skip to content
Back to skills

Lagged Ensembling Weather Eval

ASecurity

Evaluates the probabilistic forecasting skill and ensemble calibration of AI weather models by comparing them against a parameter-free lagged ensemble baseline. It probes whether models trained with long-lead-time objectives suffer from under-dispersion and poor variance calibration despite strong deterministic accuracy. Use when the user wants to benchmark on Atmospheric reanalysis / IFS HRES, or asks about evaluating this task. Reports CRPS.

  • 3 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 11, 2026
researchpythongo

Security analysis

A100/100

Scanned September 11, 2026

npx -y skills add qhjqhj00/research-skills-pool --skill lagged-ensembling-weather-eval --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Lagged Ensembling Weather Eval?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Lagged Ensembling Weather Eval
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/qhjqhj00-lagged-ensembling-weather-eval/badge)](https://www.skillsdirectory.com/skills/qhjqhj00-lagged-ensembling-weather-eval)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: lagged-ensembling-weather-eval
description: Evaluates the probabilistic forecasting skill and ensemble calibration of AI weather models by comparing them against a parameter-free lagged ensemble baseline. It probes whether models trained with long-lead-time objectives suffer from under-dispersion and poor variance calibration despite strong deterministic accuracy. Use when the user wants to benchmark on Atmospheric reanalysis / IFS HRES, or asks about evaluating this task. Reports CRPS.
metadata:
  skill_kind: dataset_eval
  source_arxiv: 2401.15305
  bibtex_key: [REDACTED]
  confidence: high
---

# lagged-ensembling-weather-eval

> A Practical Probabilistic Benchmark for AI Weather Models — Brenowitz et al. (2024) (arXiv:2401.15305, 2024)

## What this evaluates

Evaluates the probabilistic forecasting skill and ensemble calibration of AI weather models by comparing them against a parameter-free lagged ensemble baseline. It probes whether models trained with long-lead-time objectives suffer from under-dispersion and poor variance calibration despite strong deterministic accuracy.

## Datasets

- **Atmospheric reanalysis / IFS HRES** — total ?; splits: test (-1)

## Metrics

- `CRPS` **(primary)** — range: other
  - Continuous Ranked Probability Score measuring the difference between the predictive cumulative distribution function and the observed step function. Lower values indicate better probabilistic calibration and accuracy.
- `dRMSE` — range: other
  - Deterministic Root Mean Squared Error between the single best forecast and observations.
- `eRMSE` — range: other
  - Ensemble Root Mean Squared Error between the ensemble mean forecast and observations.
- `SER` — range: other
  - Spread-Error Ratio: √((R+1)/R) * (Spread / eRMSE), where R is ensemble size. Measures calibration of ensemble spread relative to error.

## Input / output format

**Input**: Initial atmospheric state fields (e.g., geopotential height, temperature, wind) at 0.25° resolution, used to generate forecasts at specified lead times (typically 2–8 days).

**Output**: Forecasted atmospheric fields at target lead times. For probabilistic evaluation, multiple forecast members are generated by initializing the model at different historical times (lagged ensemble).

## Scoring recipe

```python
def compute_crps(ensemble_preds, obs):
    # ensemble_preds: shape (M, H, W)
    # obs: shape (H, W)
    # Uses the typical biased estimator noted in the paper
    sorted_preds = np.sort(ensemble_preds, axis=0)
    crps = 0.0
    for i, pred in enumerate(sorted_preds):
        crps += (2 * (i + 1) / M - 1) * (pred - obs)
    crps /= M
    return np.mean(crps)

def compute_ser(ensemble_preds, obs, e_rmse):
    spread = np.std(ensemble_preds, axis=0)
    R = ensemble_preds.shape[0]
    ser = np.sqrt((R + 1) / R) * (spread / e_rmse)
    return np.mean(ser)
```

## Common pitfalls

- Models optimized with long-lead-time MSE loss naturally converge to the conditional mean, artificially reducing ensemble variance and yielding under-dispersed forecasts that look good on deterministic RMSE but fail probabilistic calibration.
- Evaluating at lead times shorter than 2 days introduces initialization bias because IFS uses analysis (past weather) while evaluation uses reanalysis (future-informed), inflating early errors.
- Comparing AI models against NWP baselines without controlling for ensemble generation methods (e.g., initial condition perturbations) confounds architectural differences with ensemble technique differences.

## Evidence (verbatim from paper)

> The deterministic RMSE decreases significantly for models trained with more autoregressive timesteps, even appearing to approach the threshold of IFS deterministic skill limits (panel a). However, the CRPS and ensemble mean RMSE improve much less than the deterministic RMSE. The reason is due to plummeting ensemble spread (see Figure 4a-d) where for a given eRMSE the SFNO checkpoints optimized with long-lead time fine-tuning result in monotonic drops in ensemble variance, deviating from the approximately 1:1 error-spread calibration of the LEF IFS ensemble.

## Citation

```bibtex
@misc{brenowitz2024practicalprobabilistic,
  title={A Practical Probabilistic Benchmark for AI Weather Models},
  author={Brenowitz et al. (2024)},
  year={2024},
  note={arXiv:2401.15305}
}
```

- arXiv: 2401.15305

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.