hrrr_east_hourly

Unconditional reference models trained with gendynamics. The weights correspond to the best validation epoch.

Dataset

NOAA HRRR analysis, distributed by dynamical.org. Upstream source. One hourly precipitation value per fixed eastern U.S. city, approximated by its nearest HRRR grid cell. Complete aligned hours at 150 cities are randomly split 25,000/1,000/65,000. Columns: Albemarle, NC, Americus, GA, Barnesville, GA, Barnstable Town, MA, Bath, ME, Bennettsville, SC, Berlin, NH, Bethlehem, PA, Blackshear, GA, Bloomingdale, GA, Bowie, MD, Boynton Beach, FL, Brevard, NC, Bridgeport, CT, Calais, ME, Caribou, ME, Carrollton, GA, Chiefland, FL, Claremont, NH, Clinton, NC, Colquitt, GA, Columbus, GA, Coral Gables, FL, Dahlonega, GA, Darien, GA, DeFuniak Springs, FL, Edgewater, FL, Elizabeth City, NC, Ellsworth, ME, Erie, PA, Fort Oglethorpe, GA, Fort Pierce, FL, Franklin Town, MA, Fredericksburg, VA, Frostproof, FL, Galax, VA, Gordon, GA, Greensboro, GA, Hanahan, SC, Hartwell, GA, Ithaca, NY, Jacksonville, FL, Johnstown, PA, Key West, FL, Lake City, FL, Lake City, SC, Laurens, SC, Long Branch, NJ, Lynchburg, VA, Marathon, FL, Marion, NC, McKeesport, PA, McRae-Helena, GA, Melbourne, FL, Metter, GA, New Bern, NC, New Castle, PA, New London, CT, Newburyport, MA, North Myrtle Beach, SC, North Tonawanda, NY, Northampton, MA, Norton, VA, Ocean City, NJ, Oxford, NC, Pensacola, FL, Petersburg, VA, Plattsburgh, NY, Poquoson, VA, Poughkeepsie, NY, Reidsville, NC, Rochester, NY, Rock Hill, SC, Rocky Mount, NC, Salamanca, NY, Salem, VA, Sanford, NC, Sanibel, FL, Sarasota, FL, Schenectady, NY, Seaford, DE, St. Marys, PA, Statesville, NC, Tallahassee, FL, Tarpon Springs, FL, Tucker, GA, Utica, NY, Valdosta, GA, Watertown, NY, Waynesboro, GA, Waynesboro, VA, West Columbia, SC, Wewahitchka, FL, Wildwood, FL, Wilkes-Barre, PA, Williamsport, PA, Wilmington, DE, Wilmington, NC, Winchester, VA, York, PA, Oakland, MD, Fontana Dam, NC, Moore Haven, FL, Everglades, FL, Ehrhardt, SC, Parksley, VA, Hornell, NY, Ogdensburg, NY, Pomona Park, FL, Fulton, NY, Pocahontas, VA, Jamesville, NC, Parksville, SC, Doerun, GA, Severn, NC, Damascus, VA, Victoria, VA, Walkersville, MD, Boonton, NJ, Perry, FL, Rome, GA, Warsaw, VA, Cottondale, FL, Oneonta, NY, Hot Springs, NC, Laconia, NH, Oil City, PA, Boardman, NC, Monterey, VA, Georgetown, SC, Biddeford, ME, Waterville, ME, Mountain City, GA, Burlington, NJ, Pottsville, PA, Manteo, NC, Belle Isle, FL, New Market, VA, Arcadia, FL, Clayton, NC, Vance, SC, Torrington, CT, Fitchburg, MA, Beaufort, SC, Plant City, FL, Bethune, SC, Chestertown, MD, Dillwyn, VA, Cuthbert, GA, Waldo, FL. The train/validation/test splits contain 25,000/1,000/65,000 samples of shape [150]. Normalization: Per-coordinate training mean and standard deviation; zero deviations replaced by one. The processed dataset file hrrr_east_hourly_precip_150d.pt has SHA-256 a05977f937a95eb06fa2d56ce97615135163d4a76cc5047603460a957e09c050. The exact generator arguments or processed-file identity, split settings, and seed are in dataset.json. The source data themselves are not redistributed here; source-data terms remain with their provider. The preparation code is in datasets/1_hrrr_east_tabular_dataset.py in the training repository. API-backed sources can change; the processed-file checksum identifies this snapshot.

Architecture and training

All independently trained models use this network architecture:

{
  "name": "mlp",
  "params": {
    "width": 128,
    "depth": 3,
    "time_dim": 64,
    "dropout": 0.0,
    "use_norm": true,
    "dim": 150
  }
}
Directory Model Prediction target Trainable parameters Sampling steps Learning rate Epochs run / best Val loss Test loss
ddpm-v DDPM-V velocity 171,798 128 0.0005 640 / 623 1.158 1.139
dlpm-eps DLPM-Eps noise 171,798 128 0.0005 439 / 339 0.7712 0.8336
tedm-origin t-EDM denoised data 171,798 64 0.0005 640 / 640 0.6628 0.6261

The complete selected final model and training settings are below and in each directory's config.json. The training settings include the maximum epoch budget; epochs run / best reports what actually happened. provenance.json records software versions and the source revision. Each model was reloaded and checked before upload; export_check.json records that check. Losses use each model's own objective, so they are not comparable sample-quality scores. The number of held-out rows used for each test loss is in metrics.json. Sample previews do not establish tail accuracy.

DDPM-V (ddpm-v/)

{
  "model_parameters": {
    "n_steps": 128,
    "sigma_max": 2.0,
    "sampler": "ddpm"
  },
  "training": {
    "device": "cuda",
    "data_device": "cpu",
    "batch_size": 512,
    "n_epochs": 640,
    "early_stopping_patience": 100,
    "lr": 0.0005,
    "num_workers": 0,
    "use_adamw": true,
    "weight_decay": 1e-06,
    "grad_clip_norm": 10.0,
    "lr_schedule": "cosine",
    "warmup_steps": 100,
    "cosine_eta_min_ratio": 0.05,
    "freq_logging": 16,
    "stats_freq_epochs": 1,
    "log_grad_norm": true,
    "ckpt_freq_epochs": 64,
    "ckpt_keep_last": 4
  }
}

DLPM-Eps (dlpm-eps/)

{
  "model_parameters": {
    "n_steps": 128,
    "alpha": 1.8,
    "sampler": "native"
  },
  "training": {
    "device": "cuda",
    "data_device": "cpu",
    "batch_size": 512,
    "n_epochs": 640,
    "early_stopping_patience": 100,
    "lr": 0.0005,
    "num_workers": 0,
    "use_adamw": true,
    "weight_decay": 1e-06,
    "grad_clip_norm": 10.0,
    "lr_schedule": "cosine",
    "warmup_steps": 100,
    "cosine_eta_min_ratio": 0.05,
    "freq_logging": 16,
    "stats_freq_epochs": 1,
    "log_grad_norm": true,
    "ckpt_freq_epochs": 64,
    "ckpt_keep_last": 4
  }
}

t-EDM (tedm-origin/)

{
  "model_parameters": {
    "n_steps": 64,
    "nu": 2.2,
    "sigma_min": 0.005,
    "sigma_max": 5.0,
    "sigma_data": 1.0,
    "solver": "edm_stochastic_heun"
  },
  "training": {
    "device": "cuda",
    "data_device": "cpu",
    "batch_size": 512,
    "n_epochs": 640,
    "early_stopping_patience": 100,
    "lr": 0.0005,
    "num_workers": 0,
    "use_adamw": true,
    "weight_decay": 1e-06,
    "grad_clip_norm": 10.0,
    "lr_schedule": "cosine",
    "warmup_steps": 100,
    "cosine_eta_min_ratio": 0.05,
    "freq_logging": 16,
    "stats_freq_epochs": 1,
    "log_grad_norm": true,
    "ckpt_freq_epochs": 64,
    "ckpt_keep_last": 4
  }
}

DDIM-V (ddim-v/) shares the trained DDPM-V weights. Only the reverse sampler changes to deterministic DDIM (eta=0); it has no separate training run. Its exact sampling settings are in ddim-v/config.json.

Loading

Install the training package and its dependencies:

python -m pip install git+https://github.com/Diffusion-Research-Lab/2_training_2026_tail_reference_models.git

Then load one of the listed model directories by its underscored name:

from toolkit.huggingface import load_huggingface_model

model, normalization, data_scale = load_huggingface_model("Diffusion-Research-Lab/hrrr-east-hourly-precipitation-150d-diffusion", "ddpm_v", device="cpu")
samples = model.sample(16).float().cpu()
if normalization is not None:
    samples = samples * normalization["std"] + normalization["mean"]

The model-specific files are model.safetensors, config.json, dataset.json, metrics.json, provenance.json, export_check.json, and, when applicable, normalization.safetensors. This repository is released under the MIT license. Cite the model repository revision when using these weights.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support