Aerostratospheric

GIR Open-Tier Suite

Multi-head scikit-learn research models for the Aerostratospheric Defense GIR open tier.

Publisher: Aerostratospheric
Live page: Defense GIR

Dataset aerostratospheric/gir
Sibling model uogw-scientific-suite
Source code aerostratospheric-defense-gir
Trainer train_hf_models.py (this repo)
Retrain GitHub Actions · 20:00 UTC daily
License MIT

Open public feeds only. Not classified. Not DEFCON / FPCON.
Not a substitute for NWS, USGS, or CISA official channels.


What is in the box

Head File Task Notes (last train 2026-09-07)
Open status models/open_status.joblib GREEN / YELLOW / ORANGE / RED 4,001 synthetic + live factors · holdout acc 0.904 / macro-F1 0.838
Anomaly intensity models/anomaly_intensity.joblib Regression 3·alert + 2·watch + info 58 dated UOGW snapshots · R² ≈ 1.0 (linear definition)
NWS severity models/nws_severity.joblib Unknown / Minor / Moderate / Severe / Extreme 227 live alerts · hashed event tokens + flags

Also shipped: inference.py, metrics.json, config.json, requirements.txt, training/ snapshots.

On 2026-09-07 the published GIR banner was YELLOW. The logistic replica voted ORANGE on the same live factors (nws=227, max_mag=5.5, uogw_alerts=3). Prefer scripts/compute_us_open_status.py in the GitHub repo when you need exact banner parity.


Quick start

pip install scikit-learn joblib numpy huggingface_hub
from huggingface_hub import snapshot_download
from pathlib import Path
import importlib.util

root = Path(snapshot_download("aerostratospheric/gir-open-tier-suite"))
spec = importlib.util.spec_from_file_location("inf", root / "inference.py")
inf = importlib.util.module_from_spec(spec)
spec.loader.exec_module(inf)

print(inf.predict_open_status(
    nws_alert_count=227,
    usgs_max_mag=5.5,
    uogw_alerts=3,
    uogw_watches=0,
    active_public_flights=0,
))
print(inf.predict_intensity(alert=3, watch=0, info=0))

Training data

Source Role
data/status/us_open_conditions_latest.json Live published banner
data/events/nws_active_alerts_latest.geojson Event text + urgency/certainty/severity
data/events/usgs_quakes_2.5_day_latest.geojson Magnitude sample
data/events/eonet_open_latest.json Category counts (descriptive)
data/anomalies/uogw_anomalies_2026*.json Alert/watch/info time series

Open-status features: nws_alert_count, usgs_max_mag, uogw_alerts, uogw_watches, active_public_flights.

The classifier is trained mostly on a rule-consistent synthetic grid plus the live point, so it approximates compute_us_open_status.py rather than discovering a new readiness scale.


Training procedure

Daily GitHub Action checks out GIR, runs train_hf_models.py, and uploads here.

  • Open status: StandardScaler + LogisticRegression
  • Intensity: Ridge on dated count snapshots
  • NWS severity: hashed event tokens + warning/watch/advisory flags + RandomForestClassifier

Intended use / out of scope

Use: open briefings, education, “what is already public?” checks, dashboard prototypes.

Do not use as: DEFCON, FPCON, targeting support, or a sole life-safety alert.


Citation

Aerostratospheric / Midwest Stratospheric Data Systems (2026).
GIR Open-Tier Suite.
https://www.midwestsds.com/
https://midwestsds.com/aerostratospheric-defense-gir.html
https://huggingface.co/aerostratospheric/gir-open-tier-suite

Credits — Aerostratospheric

Curated and published by Aerostratospheric, an Illinois nonprofit corporation. Midwest Stratospheric Data Systems (MSDS) operates as a limited partnership under Aerostratospheric.

Casey, Illinois · NASA GLOBE GO-4VW9B · Ham KE9CFY · launchcontrol@midwestsds.com

Latest daily metrics

See metrics.json in this repository for the exact tables from the most recent Actions run.

Downloads last month
-
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Datasets used to train aerostratospheric/gir-open-tier-suite