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
|
| 14 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 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 |
|