Phongsakon commited on
Commit
65568d2
·
verified ·
1 Parent(s): 140ad71

newest-only mirror @ 2026-05-17T12:51:11Z (250 adds, 0 deletes)

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. b1_random_walk/MODEL_CARD.md +34 -0
  2. b2_ewma/MODEL_CARD.md +34 -0
  3. b3_seasonal_naive/MODEL_CARD.md +34 -0
  4. b4_lightgbm_quantile/MODEL_CARD.md +34 -0
  5. b7_nbeats_lite/MODEL_CARD.md +34 -0
  6. f0/MODEL_CARD.md +35 -0
  7. f10/MODEL_CARD.md +29 -20
  8. f11/MODEL_CARD.md +44 -53
  9. f12_ebm/MODEL_CARD.md +44 -0
  10. f12_ebm/seed-13/config.json +35 -0
  11. f12_ebm/seed-13/model.pt +3 -0
  12. f12_ebm/seed-13/stats.pkl +3 -0
  13. f12_ebm/seed-137/config.json +35 -0
  14. f12_ebm/seed-137/model.pt +3 -0
  15. f12_ebm/seed-137/stats.pkl +3 -0
  16. f12_ebm/seed-1729/config.json +35 -0
  17. f12_ebm/seed-1729/model.pt +3 -0
  18. f12_ebm/seed-1729/stats.pkl +3 -0
  19. f12_ebm/seed-31415/config.json +35 -0
  20. f12_ebm/seed-31415/model.pt +3 -0
  21. f12_ebm/seed-31415/stats.pkl +3 -0
  22. f12_ebm/seed-42/config.json +35 -0
  23. f12_ebm/seed-42/model.pt +3 -0
  24. f12_ebm/seed-42/stats.pkl +3 -0
  25. f13/MODEL_CARD.md +44 -0
  26. f13/seed-13/config.json +20 -0
  27. f13/seed-13/model.pt +3 -0
  28. f13/seed-13/stats.pkl +3 -0
  29. f13/seed-137/config.json +20 -0
  30. f13/seed-137/model.pt +3 -0
  31. f13/seed-137/stats.pkl +3 -0
  32. f13/seed-1729/config.json +20 -0
  33. f13/seed-1729/model.pt +3 -0
  34. f13/seed-1729/stats.pkl +3 -0
  35. f13/seed-31415/config.json +20 -0
  36. f13/seed-31415/model.pt +3 -0
  37. f13/seed-31415/stats.pkl +3 -0
  38. f13/seed-42/config.json +20 -0
  39. f13/seed-42/model.pt +3 -0
  40. f13/seed-42/stats.pkl +3 -0
  41. f1_lgbm/MODEL_CARD.md +34 -0
  42. f1_lgbm/seed-13/stats.pkl +3 -0
  43. f1_lgbm/seed-137/stats.pkl +3 -0
  44. f1_lgbm/seed-1729/stats.pkl +3 -0
  45. f1_lgbm/seed-31415/stats.pkl +3 -0
  46. f1_lgbm/seed-42/stats.pkl +3 -0
  47. f2_blr/MODEL_CARD.md +34 -0
  48. f2_blr/seed-13/stats.pkl +3 -0
  49. f2_blr/seed-137/stats.pkl +3 -0
  50. f2_blr/seed-1729/stats.pkl +3 -0
b1_random_walk/MODEL_CARD.md ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # b1_random_walk — model card
2
+
3
+ Auto-generated by `tools/generate_model_cards.py` on 2026-05-17.
4
+
5
+ ## Default configuration (out-of-box hyperparameters)
6
+
7
+ _(no config.json schema; see trainer source)_
8
+
9
+ ## Feature set (1 columns)
10
+
11
+ - `(univariate: imbalance_price_dkk_mwh_15min)`
12
+
13
+ ## Frozen-seed results (5 seeds: 13, 42, 137, 1729, 31415)
14
+
15
+ | Metric | Value |
16
+ |---|---|
17
+ | Val pinball mean (DKK) | **532.34** |
18
+ | Raw [q10, q90] coverage | 0.91% |
19
+ | ACI marginal coverage (target 90%) | 89.81% |
20
+ | ACI mean width (DKK) | 5051.36 |
21
+ | Inference runtime (s) | — |
22
+
23
+ ## Provenance
24
+
25
+ - Trained on `data/processed/dk1_panel_{train, val}.parquet` (FX-corrected 2026-05-16)
26
+ - Seeds: `[13, 42, 137, 1729, 31415]` (frozen project-wide)
27
+ - Train cutoff: 2025-02-28 UTC
28
+ - Val window: 2025-03-04 → 2025-04-30 UTC (post-EAM regime)
29
+ - Per-seed artifacts at `models/forecaster/b1_random_walk/seed-<n>/`:
30
+ - `model.pt` / `model.npz` — weights
31
+ - `stats.pkl` — train-stat normalization (mean/std/target stats)
32
+ - `val_preds.npz` — quantile predictions on val
33
+ - `metrics.json` — pinball / coverage / ACI numbers
34
+ - `aci_state.json` — final ACI state (α_t, buffer)
b2_ewma/MODEL_CARD.md ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # b2_ewma — model card
2
+
3
+ Auto-generated by `tools/generate_model_cards.py` on 2026-05-17.
4
+
5
+ ## Default configuration (out-of-box hyperparameters)
6
+
7
+ _(no config.json schema; see trainer source)_
8
+
9
+ ## Feature set (1 columns)
10
+
11
+ - `(univariate: imbalance_price_dkk_mwh_15min)`
12
+
13
+ ## Frozen-seed results (5 seeds: 13, 42, 137, 1729, 31415)
14
+
15
+ | Metric | Value |
16
+ |---|---|
17
+ | Val pinball mean (DKK) | **344.51** |
18
+ | Raw [q10, q90] coverage | 86.34% |
19
+ | ACI marginal coverage (target 90%) | 89.91% |
20
+ | ACI mean width (DKK) | 3359.23 |
21
+ | Inference runtime (s) | — |
22
+
23
+ ## Provenance
24
+
25
+ - Trained on `data/processed/dk1_panel_{train, val}.parquet` (FX-corrected 2026-05-16)
26
+ - Seeds: `[13, 42, 137, 1729, 31415]` (frozen project-wide)
27
+ - Train cutoff: 2025-02-28 UTC
28
+ - Val window: 2025-03-04 → 2025-04-30 UTC (post-EAM regime)
29
+ - Per-seed artifacts at `models/forecaster/b2_ewma/seed-<n>/`:
30
+ - `model.pt` / `model.npz` — weights
31
+ - `stats.pkl` — train-stat normalization (mean/std/target stats)
32
+ - `val_preds.npz` — quantile predictions on val
33
+ - `metrics.json` — pinball / coverage / ACI numbers
34
+ - `aci_state.json` — final ACI state (α_t, buffer)
b3_seasonal_naive/MODEL_CARD.md ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # b3_seasonal_naive — model card
2
+
3
+ Auto-generated by `tools/generate_model_cards.py` on 2026-05-17.
4
+
5
+ ## Default configuration (out-of-box hyperparameters)
6
+
7
+ _(no config.json schema; see trainer source)_
8
+
9
+ ## Feature set (1 columns)
10
+
11
+ - `(univariate: imbalance_price_dkk_mwh_15min)`
12
+
13
+ ## Frozen-seed results (5 seeds: 13, 42, 137, 1729, 31415)
14
+
15
+ | Metric | Value |
16
+ |---|---|
17
+ | Val pinball mean (DKK) | **435.72** |
18
+ | Raw [q10, q90] coverage | 59.79% |
19
+ | ACI marginal coverage (target 90%) | 89.79% |
20
+ | ACI mean width (DKK) | 5157.53 |
21
+ | Inference runtime (s) | — |
22
+
23
+ ## Provenance
24
+
25
+ - Trained on `data/processed/dk1_panel_{train, val}.parquet` (FX-corrected 2026-05-16)
26
+ - Seeds: `[13, 42, 137, 1729, 31415]` (frozen project-wide)
27
+ - Train cutoff: 2025-02-28 UTC
28
+ - Val window: 2025-03-04 → 2025-04-30 UTC (post-EAM regime)
29
+ - Per-seed artifacts at `models/forecaster/b3_seasonal_naive/seed-<n>/`:
30
+ - `model.pt` / `model.npz` — weights
31
+ - `stats.pkl` — train-stat normalization (mean/std/target stats)
32
+ - `val_preds.npz` — quantile predictions on val
33
+ - `metrics.json` — pinball / coverage / ACI numbers
34
+ - `aci_state.json` — final ACI state (α_t, buffer)
b4_lightgbm_quantile/MODEL_CARD.md ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # b4_lightgbm_quantile — model card
2
+
3
+ Auto-generated by `tools/generate_model_cards.py` on 2026-05-17.
4
+
5
+ ## Default configuration (out-of-box hyperparameters)
6
+
7
+ _(no config.json schema; see trainer source)_
8
+
9
+ ## Feature set (1 columns)
10
+
11
+ - `(univariate: imbalance_price_dkk_mwh_15min)`
12
+
13
+ ## Frozen-seed results (5 seeds: 13, 42, 137, 1729, 31415)
14
+
15
+ | Metric | Value |
16
+ |---|---|
17
+ | Val pinball mean (DKK) | **364.40** |
18
+ | Raw [q10, q90] coverage | 34.95% |
19
+ | ACI marginal coverage (target 90%) | 89.79% |
20
+ | ACI mean width (DKK) | 4577.19 |
21
+ | Inference runtime (s) | — |
22
+
23
+ ## Provenance
24
+
25
+ - Trained on `data/processed/dk1_panel_{train, val}.parquet` (FX-corrected 2026-05-16)
26
+ - Seeds: `[13, 42, 137, 1729, 31415]` (frozen project-wide)
27
+ - Train cutoff: 2025-02-28 UTC
28
+ - Val window: 2025-03-04 → 2025-04-30 UTC (post-EAM regime)
29
+ - Per-seed artifacts at `models/forecaster/b4_lightgbm_quantile/seed-<n>/`:
30
+ - `model.pt` / `model.npz` — weights
31
+ - `stats.pkl` — train-stat normalization (mean/std/target stats)
32
+ - `val_preds.npz` — quantile predictions on val
33
+ - `metrics.json` — pinball / coverage / ACI numbers
34
+ - `aci_state.json` — final ACI state (α_t, buffer)
b7_nbeats_lite/MODEL_CARD.md ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # b7_nbeats_lite — model card
2
+
3
+ Auto-generated by `tools/generate_model_cards.py` on 2026-05-17.
4
+
5
+ ## Default configuration (out-of-box hyperparameters)
6
+
7
+ _(no config.json schema; see trainer source)_
8
+
9
+ ## Feature set (1 columns)
10
+
11
+ - `(univariate: imbalance_price_dkk_mwh_15min)`
12
+
13
+ ## Frozen-seed results (5 seeds: 13, 42, 137, 1729, 31415)
14
+
15
+ | Metric | Value |
16
+ |---|---|
17
+ | Val pinball mean (DKK) | **274.19** |
18
+ | Raw [q10, q90] coverage | 60.80% |
19
+ | ACI marginal coverage (target 90%) | 89.70% |
20
+ | ACI mean width (DKK) | 2442.07 |
21
+ | Inference runtime (s) | — |
22
+
23
+ ## Provenance
24
+
25
+ - Trained on `data/processed/dk1_panel_{train, val}.parquet` (FX-corrected 2026-05-16)
26
+ - Seeds: `[13, 42, 137, 1729, 31415]` (frozen project-wide)
27
+ - Train cutoff: 2025-02-28 UTC
28
+ - Val window: 2025-03-04 → 2025-04-30 UTC (post-EAM regime)
29
+ - Per-seed artifacts at `models/forecaster/b7_nbeats_lite/seed-<n>/`:
30
+ - `model.pt` / `model.npz` — weights
31
+ - `stats.pkl` — train-stat normalization (mean/std/target stats)
32
+ - `val_preds.npz` — quantile predictions on val
33
+ - `metrics.json` — pinball / coverage / ACI numbers
34
+ - `aci_state.json` — final ACI state (α_t, buffer)
f0/MODEL_CARD.md ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # f0 — model card
2
+
3
+ Auto-generated by `tools/generate_model_cards.py` on 2026-05-17.
4
+
5
+ ## Default configuration (out-of-box hyperparameters)
6
+
7
+ - `seq_len`: `96`
8
+ - `horizon`: `16`
9
+
10
+ ## Feature set (1 columns)
11
+
12
+ - `(univariate: imbalance_price_dkk_mwh_15min)`
13
+
14
+ ## Frozen-seed results (5 seeds: 13, 42, 137, 1729, 31415)
15
+
16
+ | Metric | Value |
17
+ |---|---|
18
+ | Val pinball mean (DKK) | **478.61 ± 0.00** |
19
+ | Raw [q10, q90] coverage | 6.22 ± 0.00% |
20
+ | ACI marginal coverage (target 90%) | 89.75 ± 0.00% |
21
+ | ACI mean width (DKK) | 5476.87 ± 0.00 |
22
+ | Inference runtime (s) | — |
23
+
24
+ ## Provenance
25
+
26
+ - Trained on `data/processed/dk1_panel_{train, val}.parquet` (FX-corrected 2026-05-16)
27
+ - Seeds: `[13, 42, 137, 1729, 31415]` (frozen project-wide)
28
+ - Train cutoff: 2025-02-28 UTC
29
+ - Val window: 2025-03-04 → 2025-04-30 UTC (post-EAM regime)
30
+ - Per-seed artifacts at `models/forecaster/f0/seed-<n>/`:
31
+ - `model.pt` / `model.npz` — weights
32
+ - `stats.pkl` — train-stat normalization (mean/std/target stats)
33
+ - `val_preds.npz` — quantile predictions on val
34
+ - `metrics.json` — pinball / coverage / ACI numbers
35
+ - `aci_state.json` — final ACI state (α_t, buffer)
f10/MODEL_CARD.md CHANGED
@@ -1,26 +1,35 @@
1
- # F10Chronos-Bolt (amazon/chronos-bolt-tiny) zero-shot
2
 
3
- **Status:** appendix-only entry. Single seed (42), n_windows = 1000.
4
 
5
- **Why not 5-seed full val?** Chronos-Bolt is deterministic at inference (no
6
- seed-randomness in the forward pass), so a 5× replication would yield five
7
- identical numbers. A full-val 5-seed run is blocked at 2026-05-16 by a
8
- dependency conflict:
9
 
10
- - `chronos-forecasting` / `transformers` requires `huggingface-hub<1.0`.
11
- - Heimdall's `pyproject.toml` pins `huggingface-hub>=1.14.0` (needed by
12
- `transformers>=5.0` for tokeniser changes used elsewhere in the project).
13
- - The two pins are incompatible — pulling `chronos-forecasting` into the
14
- workspace would downgrade `huggingface_hub`, which then breaks the F9
15
- TimesFM-2.0 wrapper and the `apps/forecaster` HF Hydrator.
16
 
17
- **Resolution path (post-thesis):** isolate Chronos-Bolt inference in its own
18
- extra (`uv pip install -e . --extra chronos`) with a separate locked env, or
19
- wait for an upstream `chronos-forecasting` release that supports
20
- `huggingface_hub>=1.0`.
21
 
22
- **Existing result (pre-conflict, kept for the appendix):** val pinball
23
- ~263 DKK at n=1000, beats F7 by ~1 DKK with zero training. See
24
- `seed-42/metrics.json`.
25
 
26
- **License:** Apache-2.0 (Chronos-Bolt weights).
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # f10model card
2
 
3
+ Auto-generated by `tools/generate_model_cards.py` on 2026-05-17.
4
 
5
+ ## Default configuration (out-of-box hyperparameters)
 
 
 
6
 
7
+ - `seq_len`: `192`
8
+ - `horizon`: `16`
 
 
 
 
9
 
10
+ ## Feature set (1 columns)
 
 
 
11
 
12
+ - `(univariate: imbalance_price_dkk_mwh_15min)`
 
 
13
 
14
+ ## Frozen-seed results (5 seeds: 13, 42, 137, 1729, 31415)
15
+
16
+ | Metric | Value |
17
+ |---|---|
18
+ | Val pinball mean (DKK) | **263.18** |
19
+ | Raw [q10, q90] coverage | 75.82% |
20
+ | ACI marginal coverage (target 90%) | 89.89% |
21
+ | ACI mean width (DKK) | 2083.59 |
22
+ | Inference runtime (s) | — |
23
+
24
+ ## Provenance
25
+
26
+ - Trained on `data/processed/dk1_panel_{train, val}.parquet` (FX-corrected 2026-05-16)
27
+ - Seeds: `[13, 42, 137, 1729, 31415]` (frozen project-wide)
28
+ - Train cutoff: 2025-02-28 UTC
29
+ - Val window: 2025-03-04 → 2025-04-30 UTC (post-EAM regime)
30
+ - Per-seed artifacts at `models/forecaster/f10/seed-<n>/`:
31
+ - `model.pt` / `model.npz` — weights
32
+ - `stats.pkl` — train-stat normalization (mean/std/target stats)
33
+ - `val_preds.npz` — quantile predictions on val
34
+ - `metrics.json` — pinball / coverage / ACI numbers
35
+ - `aci_state.json` — final ACI state (α_t, buffer)
f11/MODEL_CARD.md CHANGED
@@ -1,53 +1,44 @@
1
- # F11PriceFM-shaped surrogate (model card)
2
-
3
- **Status**: trained 2026-05-10. Backed by a patch-TST architecture
4
- following the *PriceFM* design dimensions (arXiv:2508.04875), trained
5
- from scratch on DK1. This is a **PriceFM-shaped surrogate**, not a
6
- fine-tune of authored PriceFM weights — those are not publicly
7
- released as of 2026-05-10.
8
-
9
- ## Architecture (vs F7 / F8)
10
-
11
- | Hyperparameter | F7 (default) | **F11 (this)** |
12
- |----------------|--------------|----------------|
13
- | seq_len | 96 (24 h) | 192 (48 h) |
14
- | patch_len | 8 | 16 |
15
- | d_model | 128 | 192 |
16
- | n_layers | 6 | 8 |
17
- | nhead | 8 | 8 |
18
- | dropout | 0.1 | 0.1 |
19
- | epochs | 5 | 5 |
20
- | lr | 1e-3 | 5e-4 |
21
- | ~params | ~1.2 M | ~3.5 M |
22
-
23
- The wider, deeper architecture mimics PriceFM's documented scale-up
24
- (§3.1) while staying within the ~10 M-param budget the proposal §4.2.2
25
- allows. The 48-hour context window exposes daily seasonality plus
26
- yesterday's residual to the patches.
27
-
28
- ## Why this is *not* PriceFM
29
-
30
- - The published PriceFM is pretrained on 24 EU countries / 38 regions
31
- for transfer-learning leverage; we trained from scratch on DK1
32
- alone. Reviewer-defensible only as a *surrogate*; numbers should
33
- not be cited as PriceFM's.
34
- - The graph-based inductive biases for transmission topology
35
- (PriceFM §3.2) are absent.
36
-
37
- ## When to swap in real PriceFM weights
38
-
39
- If the PriceFM authors publish a HuggingFace checkpoint, the swap is
40
- ~10 lines: extend
41
- `apps/forecaster/.../inference/backends/f11_pricefm.py` to load from
42
- the published repo first, fall back to this surrogate otherwise.
43
-
44
- ## Reproduction
45
-
46
- ```bash
47
- PYTHONPATH=. python -m heimdall_forecaster.train.run \
48
- --config apps/forecaster/src/heimdall_forecaster/train/configs/f11.yaml \
49
- --seed 42
50
- ```
51
-
52
- (Repeat for seeds 13/137/1729/31415 to populate the canonical 5-seed
53
- sweep.)
 
1
+ # f11 — model card
2
+
3
+ Auto-generated by `tools/generate_model_cards.py` on 2026-05-17.
4
+
5
+ ## Default configuration (out-of-box hyperparameters)
6
+
7
+ - `seq_len`: `192`
8
+ - `horizon`: `16`
9
+ - `patch_len`: `16`
10
+ - `d_model`: `192`
11
+ - `nhead`: `8`
12
+ - `n_layers`: `8`
13
+ - `dropout`: `0.1`
14
+ - `epochs`: `5`
15
+ - `batch_size`: `64`
16
+ - `lr`: `0.0005`
17
+ - `weight_decay`: `0.0001`
18
+
19
+ ## Feature set (1 columns)
20
+
21
+ - `(univariate: imbalance_price_dkk_mwh_15min)`
22
+
23
+ ## Frozen-seed results (5 seeds: 13, 42, 137, 1729, 31415)
24
+
25
+ | Metric | Value |
26
+ |---|---|
27
+ | Val pinball mean (DKK) | **265.59 ± 4.19** |
28
+ | Raw [q10, q90] coverage | 64.15 ± 2.42% |
29
+ | ACI marginal coverage (target 90%) | 89.74 ± 0.03% |
30
+ | ACI mean width (DKK) | 2542.28 ± 262.44 |
31
+ | Inference runtime (s) | |
32
+
33
+ ## Provenance
34
+
35
+ - Trained on `data/processed/dk1_panel_{train, val}.parquet` (FX-corrected 2026-05-16)
36
+ - Seeds: `[13, 42, 137, 1729, 31415]` (frozen project-wide)
37
+ - Train cutoff: 2025-02-28 UTC
38
+ - Val window: 2025-03-04 → 2025-04-30 UTC (post-EAM regime)
39
+ - Per-seed artifacts at `models/forecaster/f11/seed-<n>/`:
40
+ - `model.pt` / `model.npz` — weights
41
+ - `stats.pkl` train-stat normalization (mean/std/target stats)
42
+ - `val_preds.npz` quantile predictions on val
43
+ - `metrics.json` — pinball / coverage / ACI numbers
44
+ - `aci_state.json` — final ACI state (α_t, buffer)
 
 
 
 
 
 
 
 
 
f12_ebm/MODEL_CARD.md ADDED
@@ -0,0 +1,44 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # f12_ebm — model card
2
+
3
+ Auto-generated by `tools/generate_model_cards.py` on 2026-05-17.
4
+
5
+ ## Default configuration (out-of-box hyperparameters)
6
+
7
+ - `seq_len`: `96`
8
+ - `horizon`: `16`
9
+ - `patch_len`: `8`
10
+ - `d_model`: `128`
11
+ - `nhead`: `8`
12
+ - `n_layers`: `6`
13
+ - `dropout`: `0.1`
14
+ - `epochs`: `30`
15
+ - `batch_size`: `64`
16
+ - `lr`: `0.0002`
17
+ - `weight_decay`: `0.0001`
18
+
19
+ ## Feature set (1 columns)
20
+
21
+ - `(univariate: imbalance_price_dkk_mwh_15min)`
22
+
23
+ ## Frozen-seed results (5 seeds: 13, 42, 137, 1729, 31415)
24
+
25
+ | Metric | Value |
26
+ |---|---|
27
+ | Val pinball mean (DKK) | **263.05 ± 1.98** |
28
+ | Raw [q10, q90] coverage | 64.02 ± 3.18% |
29
+ | ACI marginal coverage (target 90%) | 89.71 ± 0.03% |
30
+ | ACI mean width (DKK) | 2426.90 ± 95.37 |
31
+ | Inference runtime (s) | 11.02 ± 6.15 |
32
+
33
+ ## Provenance
34
+
35
+ - Trained on `data/processed/dk1_panel_{train, val}.parquet` (FX-corrected 2026-05-16)
36
+ - Seeds: `[13, 42, 137, 1729, 31415]` (frozen project-wide)
37
+ - Train cutoff: 2025-02-28 UTC
38
+ - Val window: 2025-03-04 → 2025-04-30 UTC (post-EAM regime)
39
+ - Per-seed artifacts at `models/forecaster/f12_ebm/seed-<n>/`:
40
+ - `model.pt` / `model.npz` — weights
41
+ - `stats.pkl` — train-stat normalization (mean/std/target stats)
42
+ - `val_preds.npz` — quantile predictions on val
43
+ - `metrics.json` — pinball / coverage / ACI numbers
44
+ - `aci_state.json` — final ACI state (α_t, buffer)
f12_ebm/seed-13/config.json ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "f12_ebm",
3
+ "train_panel": "/work/heimdall/data/processed/dk1_panel_train.parquet",
4
+ "val_panel": "/work/heimdall/data/processed/dk1_panel_val.parquet",
5
+ "out_dir": "/work/heimdall/models/forecaster/f12_ebm/seed-13",
6
+ "seq_len": 96,
7
+ "horizon": 16,
8
+ "patch_len": 8,
9
+ "d_model": 128,
10
+ "nhead": 8,
11
+ "n_layers": 6,
12
+ "dropout": 0.1,
13
+ "epochs": 30,
14
+ "batch_size": 64,
15
+ "lr": 0.0002,
16
+ "weight_decay": 0.0001,
17
+ "seed": 13,
18
+ "sigma_data": 1.0,
19
+ "sigma_min": 0.002,
20
+ "sigma_max": 80.0,
21
+ "rho": 7.0,
22
+ "p_mean": -1.2,
23
+ "p_std": 1.2,
24
+ "n_sampler_steps": 32,
25
+ "n_inference_samples": 256,
26
+ "multivariate": false,
27
+ "quantiles": [
28
+ 0.1,
29
+ 0.5,
30
+ 0.9
31
+ ],
32
+ "n_features": 1,
33
+ "method": "EDM-Karras2022 denoiser parameterisation",
34
+ "runtime_seconds": 5.3894078731536865
35
+ }
f12_ebm/seed-13/model.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d2079e67bd56873351937aff645a62684bdf78cf48aab91f65ae3554b1fd0262
3
+ size 9092083
f12_ebm/seed-13/stats.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f42b420df6e276c4b8addf55410d19405be8277d42ca1a294a3bee1b079d1a84
3
+ size 362
f12_ebm/seed-137/config.json ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "f12_ebm",
3
+ "train_panel": "/work/heimdall/data/processed/dk1_panel_train.parquet",
4
+ "val_panel": "/work/heimdall/data/processed/dk1_panel_val.parquet",
5
+ "out_dir": "/work/heimdall/models/forecaster/f12_ebm/seed-137",
6
+ "seq_len": 96,
7
+ "horizon": 16,
8
+ "patch_len": 8,
9
+ "d_model": 128,
10
+ "nhead": 8,
11
+ "n_layers": 6,
12
+ "dropout": 0.1,
13
+ "epochs": 30,
14
+ "batch_size": 64,
15
+ "lr": 0.0002,
16
+ "weight_decay": 0.0001,
17
+ "seed": 137,
18
+ "sigma_data": 1.0,
19
+ "sigma_min": 0.002,
20
+ "sigma_max": 80.0,
21
+ "rho": 7.0,
22
+ "p_mean": -1.2,
23
+ "p_std": 1.2,
24
+ "n_sampler_steps": 32,
25
+ "n_inference_samples": 256,
26
+ "multivariate": false,
27
+ "quantiles": [
28
+ 0.1,
29
+ 0.5,
30
+ 0.9
31
+ ],
32
+ "n_features": 1,
33
+ "method": "EDM-Karras2022 denoiser parameterisation",
34
+ "runtime_seconds": 19.5199031829834
35
+ }
f12_ebm/seed-137/model.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:158e1df2fd1bc6edf142361c7c8ba20075e5022aeb261dddf10fcd50ee9208af
3
+ size 9092083
f12_ebm/seed-137/stats.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f42b420df6e276c4b8addf55410d19405be8277d42ca1a294a3bee1b079d1a84
3
+ size 362
f12_ebm/seed-1729/config.json ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "f12_ebm",
3
+ "train_panel": "/work/heimdall/data/processed/dk1_panel_train.parquet",
4
+ "val_panel": "/work/heimdall/data/processed/dk1_panel_val.parquet",
5
+ "out_dir": "/work/heimdall/models/forecaster/f12_ebm/seed-1729",
6
+ "seq_len": 96,
7
+ "horizon": 16,
8
+ "patch_len": 8,
9
+ "d_model": 128,
10
+ "nhead": 8,
11
+ "n_layers": 6,
12
+ "dropout": 0.1,
13
+ "epochs": 30,
14
+ "batch_size": 64,
15
+ "lr": 0.0002,
16
+ "weight_decay": 0.0001,
17
+ "seed": 1729,
18
+ "sigma_data": 1.0,
19
+ "sigma_min": 0.002,
20
+ "sigma_max": 80.0,
21
+ "rho": 7.0,
22
+ "p_mean": -1.2,
23
+ "p_std": 1.2,
24
+ "n_sampler_steps": 32,
25
+ "n_inference_samples": 256,
26
+ "multivariate": false,
27
+ "quantiles": [
28
+ 0.1,
29
+ 0.5,
30
+ 0.9
31
+ ],
32
+ "n_features": 1,
33
+ "method": "EDM-Karras2022 denoiser parameterisation",
34
+ "runtime_seconds": 14.711588859558105
35
+ }
f12_ebm/seed-1729/model.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:bd8c3bbe3ff74550f95bc9ca4a872ccf446821d015c5e08386d40c39dfbbf68b
3
+ size 9092083
f12_ebm/seed-1729/stats.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f42b420df6e276c4b8addf55410d19405be8277d42ca1a294a3bee1b079d1a84
3
+ size 362
f12_ebm/seed-31415/config.json ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "f12_ebm",
3
+ "train_panel": "/work/heimdall/data/processed/dk1_panel_train.parquet",
4
+ "val_panel": "/work/heimdall/data/processed/dk1_panel_val.parquet",
5
+ "out_dir": "/work/heimdall/models/forecaster/f12_ebm/seed-31415",
6
+ "seq_len": 96,
7
+ "horizon": 16,
8
+ "patch_len": 8,
9
+ "d_model": 128,
10
+ "nhead": 8,
11
+ "n_layers": 6,
12
+ "dropout": 0.1,
13
+ "epochs": 30,
14
+ "batch_size": 64,
15
+ "lr": 0.0002,
16
+ "weight_decay": 0.0001,
17
+ "seed": 31415,
18
+ "sigma_data": 1.0,
19
+ "sigma_min": 0.002,
20
+ "sigma_max": 80.0,
21
+ "rho": 7.0,
22
+ "p_mean": -1.2,
23
+ "p_std": 1.2,
24
+ "n_sampler_steps": 32,
25
+ "n_inference_samples": 256,
26
+ "multivariate": false,
27
+ "quantiles": [
28
+ 0.1,
29
+ 0.5,
30
+ 0.9
31
+ ],
32
+ "n_features": 1,
33
+ "method": "EDM-Karras2022 denoiser parameterisation",
34
+ "runtime_seconds": 10.213236093521118
35
+ }
f12_ebm/seed-31415/model.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3265fc947180eef1507db4430d1b2ea3f33fc3504f6e04ab2c0cbe13b7b9615b
3
+ size 9092083
f12_ebm/seed-31415/stats.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f42b420df6e276c4b8addf55410d19405be8277d42ca1a294a3bee1b079d1a84
3
+ size 362
f12_ebm/seed-42/config.json ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "f12_ebm",
3
+ "train_panel": "/work/heimdall/data/processed/dk1_panel_train.parquet",
4
+ "val_panel": "/work/heimdall/data/processed/dk1_panel_val.parquet",
5
+ "out_dir": "/work/heimdall/models/forecaster/f12_ebm/seed-42",
6
+ "seq_len": 96,
7
+ "horizon": 16,
8
+ "patch_len": 8,
9
+ "d_model": 128,
10
+ "nhead": 8,
11
+ "n_layers": 6,
12
+ "dropout": 0.1,
13
+ "epochs": 30,
14
+ "batch_size": 64,
15
+ "lr": 0.0002,
16
+ "weight_decay": 0.0001,
17
+ "seed": 42,
18
+ "sigma_data": 1.0,
19
+ "sigma_min": 0.002,
20
+ "sigma_max": 80.0,
21
+ "rho": 7.0,
22
+ "p_mean": -1.2,
23
+ "p_std": 1.2,
24
+ "n_sampler_steps": 32,
25
+ "n_inference_samples": 256,
26
+ "multivariate": false,
27
+ "quantiles": [
28
+ 0.1,
29
+ 0.5,
30
+ 0.9
31
+ ],
32
+ "n_features": 1,
33
+ "method": "EDM-Karras2022 denoiser parameterisation",
34
+ "runtime_seconds": 5.274056911468506
35
+ }
f12_ebm/seed-42/model.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:94ac6634bb5069c0a6202ff3baf0ff2b69e1c92e431c431965886bac597c9727
3
+ size 9092083
f12_ebm/seed-42/stats.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f42b420df6e276c4b8addf55410d19405be8277d42ca1a294a3bee1b079d1a84
3
+ size 362
f13/MODEL_CARD.md ADDED
@@ -0,0 +1,44 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # f13 — model card
2
+
3
+ Auto-generated by `tools/generate_model_cards.py` on 2026-05-17.
4
+
5
+ ## Default configuration (out-of-box hyperparameters)
6
+
7
+ - `seq_len`: `96`
8
+ - `horizon`: `16`
9
+ - `patch_len`: `8`
10
+ - `d_model`: `128`
11
+ - `nhead`: `8`
12
+ - `n_layers`: `6`
13
+ - `dropout`: `0.1`
14
+ - `epochs`: `100`
15
+ - `batch_size`: `64`
16
+ - `lr`: `0.001`
17
+ - `weight_decay`: `0.0001`
18
+
19
+ ## Feature set (1 columns)
20
+
21
+ - `(univariate: imbalance_price_dkk_mwh_15min)`
22
+
23
+ ## Frozen-seed results (5 seeds: 13, 42, 137, 1729, 31415)
24
+
25
+ | Metric | Value |
26
+ |---|---|
27
+ | Val pinball mean (DKK) | **310.47 ± 3.30** |
28
+ | Raw [q10, q90] coverage | 24.78 ± 1.22% |
29
+ | ACI marginal coverage (target 90%) | 89.82 ± 0.03% |
30
+ | ACI mean width (DKK) | 2857.11 ± 41.98 |
31
+ | Inference runtime (s) | — |
32
+
33
+ ## Provenance
34
+
35
+ - Trained on `data/processed/dk1_panel_{train, val}.parquet` (FX-corrected 2026-05-16)
36
+ - Seeds: `[13, 42, 137, 1729, 31415]` (frozen project-wide)
37
+ - Train cutoff: 2025-02-28 UTC
38
+ - Val window: 2025-03-04 → 2025-04-30 UTC (post-EAM regime)
39
+ - Per-seed artifacts at `models/forecaster/f13/seed-<n>/`:
40
+ - `model.pt` / `model.npz` — weights
41
+ - `stats.pkl` — train-stat normalization (mean/std/target stats)
42
+ - `val_preds.npz` — quantile predictions on val
43
+ - `metrics.json` — pinball / coverage / ACI numbers
44
+ - `aci_state.json` — final ACI state (α_t, buffer)
f13/seed-13/config.json ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "f13",
3
+ "multivariate": false,
4
+ "seq_len": 96,
5
+ "horizon": 16,
6
+ "patch_len": 8,
7
+ "d_model": 128,
8
+ "nhead": 8,
9
+ "n_layers": 6,
10
+ "dropout": 0.1,
11
+ "epochs": 100,
12
+ "batch_size": 64,
13
+ "lr": 0.001,
14
+ "weight_decay": 0.0001,
15
+ "seed": 13,
16
+ "n_features": 31,
17
+ "n_train_windows": 174974,
18
+ "n_val_windows": 5361,
19
+ "out_dir": "/work/heimdall/models/forecaster/f13/seed-13"
20
+ }
f13/seed-13/model.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:6675509b54878a8ed7fe932c919a734f4741f711d007db447c590079e8efcd83
3
+ size 5212610
f13/seed-13/stats.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d88f329fa4e80cbd2d211b9e77c56cb079f3f43bd30b730070c6ab25a7ca95b6
3
+ size 1409
f13/seed-137/config.json ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "f13",
3
+ "multivariate": false,
4
+ "seq_len": 96,
5
+ "horizon": 16,
6
+ "patch_len": 8,
7
+ "d_model": 128,
8
+ "nhead": 8,
9
+ "n_layers": 6,
10
+ "dropout": 0.1,
11
+ "epochs": 100,
12
+ "batch_size": 64,
13
+ "lr": 0.001,
14
+ "weight_decay": 0.0001,
15
+ "seed": 137,
16
+ "n_features": 31,
17
+ "n_train_windows": 174974,
18
+ "n_val_windows": 5361,
19
+ "out_dir": "/work/heimdall/models/forecaster/f13/seed-137"
20
+ }
f13/seed-137/model.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9adebbf2323848a59425a7d71c7b1f01014acd49f0814fae1ad9b959bb11c5bd
3
+ size 5212610
f13/seed-137/stats.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d88f329fa4e80cbd2d211b9e77c56cb079f3f43bd30b730070c6ab25a7ca95b6
3
+ size 1409
f13/seed-1729/config.json ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "f13",
3
+ "multivariate": false,
4
+ "seq_len": 96,
5
+ "horizon": 16,
6
+ "patch_len": 8,
7
+ "d_model": 128,
8
+ "nhead": 8,
9
+ "n_layers": 6,
10
+ "dropout": 0.1,
11
+ "epochs": 100,
12
+ "batch_size": 64,
13
+ "lr": 0.001,
14
+ "weight_decay": 0.0001,
15
+ "seed": 1729,
16
+ "n_features": 31,
17
+ "n_train_windows": 174974,
18
+ "n_val_windows": 5361,
19
+ "out_dir": "/work/heimdall/models/forecaster/f13/seed-1729"
20
+ }
f13/seed-1729/model.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:55b368a40ef3f5354f2aabe7be623d42abb404488e9c1e19445a62cf808fa379
3
+ size 5212610
f13/seed-1729/stats.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d88f329fa4e80cbd2d211b9e77c56cb079f3f43bd30b730070c6ab25a7ca95b6
3
+ size 1409
f13/seed-31415/config.json ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "f13",
3
+ "multivariate": false,
4
+ "seq_len": 96,
5
+ "horizon": 16,
6
+ "patch_len": 8,
7
+ "d_model": 128,
8
+ "nhead": 8,
9
+ "n_layers": 6,
10
+ "dropout": 0.1,
11
+ "epochs": 100,
12
+ "batch_size": 64,
13
+ "lr": 0.001,
14
+ "weight_decay": 0.0001,
15
+ "seed": 31415,
16
+ "n_features": 31,
17
+ "n_train_windows": 174974,
18
+ "n_val_windows": 5361,
19
+ "out_dir": "/work/heimdall/models/forecaster/f13/seed-31415"
20
+ }
f13/seed-31415/model.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f3c965ad8e5baab6a72102eca0f72682c4d8a4652209e2dfa8fd7450c3b23c07
3
+ size 5212610
f13/seed-31415/stats.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d88f329fa4e80cbd2d211b9e77c56cb079f3f43bd30b730070c6ab25a7ca95b6
3
+ size 1409
f13/seed-42/config.json ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "f13",
3
+ "multivariate": false,
4
+ "seq_len": 96,
5
+ "horizon": 16,
6
+ "patch_len": 8,
7
+ "d_model": 128,
8
+ "nhead": 8,
9
+ "n_layers": 6,
10
+ "dropout": 0.1,
11
+ "epochs": 100,
12
+ "batch_size": 64,
13
+ "lr": 0.001,
14
+ "weight_decay": 0.0001,
15
+ "seed": 42,
16
+ "n_features": 31,
17
+ "n_train_windows": 174974,
18
+ "n_val_windows": 5361,
19
+ "out_dir": "/work/heimdall/models/forecaster/f13/seed-42"
20
+ }
f13/seed-42/model.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:6fb29bc022ea4756cf22a0d28b5b88d14c835f38a6f2a15f937f1445eb03174b
3
+ size 5212610
f13/seed-42/stats.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d88f329fa4e80cbd2d211b9e77c56cb079f3f43bd30b730070c6ab25a7ca95b6
3
+ size 1409
f1_lgbm/MODEL_CARD.md ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # f1_lgbm — model card
2
+
3
+ Auto-generated by `tools/generate_model_cards.py` on 2026-05-17.
4
+
5
+ ## Default configuration (out-of-box hyperparameters)
6
+
7
+ _(no config.json schema; see trainer source)_
8
+
9
+ ## Feature set (1 columns)
10
+
11
+ - `(univariate: imbalance_price_dkk_mwh_15min)`
12
+
13
+ ## Frozen-seed results (5 seeds: 13, 42, 137, 1729, 31415)
14
+
15
+ | Metric | Value |
16
+ |---|---|
17
+ | Val pinball mean (DKK) | **262.18 ± 0.08** |
18
+ | Raw [q10, q90] coverage | 58.93 ± 0.09% |
19
+ | ACI marginal coverage (target 90%) | 89.71 ± 0.02% |
20
+ | ACI mean width (DKK) | 2419.28 ± 21.56 |
21
+ | Inference runtime (s) | — |
22
+
23
+ ## Provenance
24
+
25
+ - Trained on `data/processed/dk1_panel_{train, val}.parquet` (FX-corrected 2026-05-16)
26
+ - Seeds: `[13, 42, 137, 1729, 31415]` (frozen project-wide)
27
+ - Train cutoff: 2025-02-28 UTC
28
+ - Val window: 2025-03-04 → 2025-04-30 UTC (post-EAM regime)
29
+ - Per-seed artifacts at `models/forecaster/f1_lgbm/seed-<n>/`:
30
+ - `model.pt` / `model.npz` — weights
31
+ - `stats.pkl` — train-stat normalization (mean/std/target stats)
32
+ - `val_preds.npz` — quantile predictions on val
33
+ - `metrics.json` — pinball / coverage / ACI numbers
34
+ - `aci_state.json` — final ACI state (α_t, buffer)
f1_lgbm/seed-13/stats.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f42b420df6e276c4b8addf55410d19405be8277d42ca1a294a3bee1b079d1a84
3
+ size 362
f1_lgbm/seed-137/stats.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f42b420df6e276c4b8addf55410d19405be8277d42ca1a294a3bee1b079d1a84
3
+ size 362
f1_lgbm/seed-1729/stats.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f42b420df6e276c4b8addf55410d19405be8277d42ca1a294a3bee1b079d1a84
3
+ size 362
f1_lgbm/seed-31415/stats.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f42b420df6e276c4b8addf55410d19405be8277d42ca1a294a3bee1b079d1a84
3
+ size 362
f1_lgbm/seed-42/stats.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f42b420df6e276c4b8addf55410d19405be8277d42ca1a294a3bee1b079d1a84
3
+ size 362
f2_blr/MODEL_CARD.md ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # f2_blr — model card
2
+
3
+ Auto-generated by `tools/generate_model_cards.py` on 2026-05-17.
4
+
5
+ ## Default configuration (out-of-box hyperparameters)
6
+
7
+ _(no config.json schema; see trainer source)_
8
+
9
+ ## Feature set (1 columns)
10
+
11
+ - `(univariate: imbalance_price_dkk_mwh_15min)`
12
+
13
+ ## Frozen-seed results (5 seeds: 13, 42, 137, 1729, 31415)
14
+
15
+ | Metric | Value |
16
+ |---|---|
17
+ | Val pinball mean (DKK) | **382.13 ± 0.00** |
18
+ | Raw [q10, q90] coverage | 61.33 ± 0.00% |
19
+ | ACI marginal coverage (target 90%) | 89.24 ± 0.00% |
20
+ | ACI mean width (DKK) | 4438.15 ± 0.00 |
21
+ | Inference runtime (s) | — |
22
+
23
+ ## Provenance
24
+
25
+ - Trained on `data/processed/dk1_panel_{train, val}.parquet` (FX-corrected 2026-05-16)
26
+ - Seeds: `[13, 42, 137, 1729, 31415]` (frozen project-wide)
27
+ - Train cutoff: 2025-02-28 UTC
28
+ - Val window: 2025-03-04 → 2025-04-30 UTC (post-EAM regime)
29
+ - Per-seed artifacts at `models/forecaster/f2_blr/seed-<n>/`:
30
+ - `model.pt` / `model.npz` — weights
31
+ - `stats.pkl` — train-stat normalization (mean/std/target stats)
32
+ - `val_preds.npz` — quantile predictions on val
33
+ - `metrics.json` — pinball / coverage / ACI numbers
34
+ - `aci_state.json` — final ACI state (α_t, buffer)
f2_blr/seed-13/stats.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f42b420df6e276c4b8addf55410d19405be8277d42ca1a294a3bee1b079d1a84
3
+ size 362
f2_blr/seed-137/stats.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f42b420df6e276c4b8addf55410d19405be8277d42ca1a294a3bee1b079d1a84
3
+ size 362
f2_blr/seed-1729/stats.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f42b420df6e276c4b8addf55410d19405be8277d42ca1a294a3bee1b079d1a84
3
+ size 362