Probabilistic 0–3 week ahead influenza forecasts from public surveillance data, submitted every week to two forecast hubs:
| Hub | Submission | Locations and targets | Hub guide | Model |
|---|---|---|---|---|
| CDC FluSight Forecast Hub | DMAPRIME-HYB |
U.S. states, DC, Puerto Rico and the nation: influenza hospital admissions and the proportion of ED visits due to influenza; quantiles | docs/hubs/flusight.md | pooled HYB |
| Flu MetroCast Hub | DMAPRIME-ObsHYB |
Metro areas, health service areas and their states: percentage of ED visits due to influenza; sample trajectories | docs/hubs/metrocast.md | pooled ObsHYB |
Both models are hybrid CNN + bidirectional LSTM networks trained jointly on all locations. The hub guides describe each hub's data, the weekly command and the submission file; the model pages describe the methods.
dmaprime/ core package
forecast.py entry point: python -m dmaprime.forecast --hub <hub> --model <model>
data/ data download, the date x location panel, NSSP data and reliability flags
models/ forecasting models (pooled_hyb, pooled_obshyb) and the shared Forecast container
hubs/ per-hub targets, data, checks and submission format (flusight, metrocast)
config/<hub>/<model>.json per-hub model settings: submission model_id, model_version, seeds, ...
docs/hubs/, docs/models/ hub guides and model descriptions
legacy/sc_prisma/ previous South Carolina model (optionally uses non-public Prisma Health data)
data/, outputs/ created at run time (not tracked)
Ensure you have Python 3.8+ installed, then set up the environment:
git clone https://github.com/DMA-PRIME/FluSight-HYB.git
cd FluSight-HYB
pip install -r requirements.txtRun every command from the repository root:
python -m dmaprime.forecast # FluSight, DMAPRIME-HYB
python -m dmaprime.forecast --hub metrocast --model pooled_obshyb # Flu MetroCast, DMAPRIME-ObsHYBEach run downloads the hub's latest data, trains the model and writes the submission file to outputs/<hub>/<model>/submissions/{reference_date}/, with a snapshot of the data used and a run.json record (code commit, configuration, data checksums); --reproduce {reference_date} reruns a recorded week and checks that the result is identical. Details are in the hub guides.
The previous single-state model lives in legacy/sc_prisma/ (see its Model_Information.md). It can run on public data only (FEATURE_SET=target_only) or with Prisma Health data, which is not distributed with this repository (FEATURE_SET=prisma, location set through PRISMA_PATH):
cp .env.example .env
python -m legacy.sc_prisma.train_forecast
python -m legacy.sc_prisma.visualize_resultsIssues and pull requests are welcome.
Copyright 2026 DMA-PRIME. Licensed under the Apache License, Version 2.0; see LICENSE and NOTICE.
Forecasts submitted to the forecast hubs are licensed separately, as stated in the model metadata on each hub.