Spaces:
Sleeping
Sleeping
| # notebooks | |
| Jupyter notebooks for interactive model training and evaluation. These mirror the CLI training scripts but with inline visualisations for loss curves, LOPO results, and confusion matrices. | |
| ## Notebooks | |
| | Notebook | Purpose | | |
| |----------|---------| | |
| | `mlp.ipynb` | MLP training with per-epoch loss/accuracy plots, LOPO evaluation, confusion matrix, and ROC curve generation | | |
| | `xgboost.ipynb` | XGBoost training with feature importance visualisation, LOPO evaluation, per-person metrics table, and ROC curve generation | | |
| ## When to use | |
| Use the notebooks for exploratory work and visualisation during development. For reproducible training runs with ClearML logging and checkpoint saving, use the CLI scripts (`python -m models.mlp.train` and `python -m models.xgboost.train`). | |
| ## Data dependency | |
| Both notebooks call into `data_preparation.prepare_dataset` to load and split the dataset. Collected `.npz` files must be present under `data/collected_<participant>/`. See [`data_preparation/README.md`](../data_preparation/README.md) for details on the data format and collection protocol. | |
| ## Key results reproduced | |
| The notebooks produce the same core evaluation results as the CLI scripts: | |
| **Pooled split (70/15/15)** | |
| | Model | Accuracy | F1 | ROC-AUC | | |
| |-------|----------|-----|---------| | |
| | XGBoost | 95.87% | 0.959 | 0.991 | | |
| | MLP | 92.92% | 0.929 | 0.971 | | |
| **LOPO (9 participants)** | |
| | Model | LOPO AUC | Optimal threshold | F1 at optimal | | |
| |-------|----------|-------------------|---------------| | |
| | MLP | 0.862 | 0.228 | 0.858 | | |
| | XGBoost | 0.870 | 0.280 | 0.855 | | |