HoangTrungNguyen commited on
Commit
72ff9f7
·
verified ·
1 Parent(s): 3c0abfb

Global scaling, normalized MAE, saved models and marimo workflow

Browse files
decode_reimplementation_outputs/README.md CHANGED
@@ -10,8 +10,12 @@ Re-implement the training flow from the DECODE paper for the local I-BLEND data:
10
  2. Convert original power readings in W to interval energy in Wh.
11
  3. Merge occupancy and calendar/schedule features.
12
  4. Optionally merge weather if the local weather range overlaps the energy range.
13
- 5. Add historical energy features, including the previous three same-working-day-class values at the same time instant.
14
- 6. Normalize with Min-Max scaling.
 
 
 
 
15
  7. Split chronologically into 70% train, 15% validation, and 15% test.
16
  8. Train Ridge Regression, Decision Tree, Random Forest, and optionally LSTM.
17
  The LSTM backend prefers PyTorch when available and falls back to TensorFlow/Keras.
@@ -63,6 +67,13 @@ python3 scripts/decode_reimplementation.py --mode meters --target Boys_main --ep
63
  - `results_paper_buildings.csv`: model metrics for 7 building-level targets.
64
  - `results_meters.csv`: model metrics for 9 meter-level targets.
65
  - `run_config_*.json`: run metadata and paths.
 
 
 
 
 
 
 
66
 
67
  ## Notes
68
 
 
10
  2. Convert original power readings in W to interval energy in Wh.
11
  3. Merge occupancy and calendar/schedule features.
12
  4. Optionally merge weather if the local weather range overlaps the energy range.
13
+ 5. Add historical energy features, including `prev_same_day_type_energy_1`,
14
+ `prev_same_day_type_energy_2`, and `prev_same_day_type_energy_3`: the
15
+ energy values from the previous three days that have the same
16
+ working/non-working class and the same time instant.
17
+ 6. Normalize with one shared Min-Max scaler fitted only on the 70% training
18
+ partitions pooled across all buildings/meters (no validation/test leakage).
19
  7. Split chronologically into 70% train, 15% validation, and 15% test.
20
  8. Train Ridge Regression, Decision Tree, Random Forest, and optionally LSTM.
21
  The LSTM backend prefers PyTorch when available and falls back to TensorFlow/Keras.
 
67
  - `results_paper_buildings.csv`: model metrics for 7 building-level targets.
68
  - `results_meters.csv`: model metrics for 9 meter-level targets.
69
  - `run_config_*.json`: run metadata and paths.
70
+ - `global_scalers_*.joblib`: shared global feature/target scalers.
71
+ - `models/<target>/`: fitted sklearn bundles or PyTorch/Keras checkpoints.
72
+ - `predictions/<target>/*_full.csv`: predictions across train, validation and
73
+ test rows; sequence models begin after their lookback window.
74
+
75
+ `mae_normalized` is the primary paper-comparable MAE. `mae_wh` is retained as
76
+ an interpretable secondary metric.
77
 
78
  ## Notes
79