EHR Forecast
Predict first-recorded diagnoses over five years from synthetic patient histories. This final model uses 512 selected features and 40 independent LightGBM classifiers.
- Code and reproduction instructions
- Technical report
- Accepted inference implementation: GitHub commit
3a04344bdb009c2f339f54a7a998617ec3202fef.
Model and evaluation
The fixed recipe uses 150 trees per target, 31 leaves, learning rate 0.05, minimum leaf size 20, L2 penalty 20, 0.8 row/column sampling and base seed 20261016. All 2,791 official training patients were used. There is no ensemble or early stopping. Preprocessing and feature selection are fitted on official train only.
On the 365-patient official validation split, mAP is 0.246334 and macro AUROC is 0.762251. Predictions were locked before this score was calculated. Official validation was examined in earlier project versions, so this is a reused evaluation set. These values are not hidden-test scores. The 358 test patients' outcomes are withheld.
Files and use
final_model.zip contains 40 native LightGBM model files, fitted feature definitions,
selected column indices and integrity metadata: 46 members in total. It contains
no patient rows, raw dataset files or predictions. Use the linked Python pipeline
to reconstruct the expected inputs and run inference.
With Python 3.12 and the supplied task data available locally:
git clone https://github.com/LL333111/ehr-forecast-final.git
cd ehr-forecast-final
python -m pip install -e . huggingface_hub
hf download X13579/ehr-forecast-final final_model.zip --local-dir model
ehr-forecast predict --raw data/raw --model model/final_model.zip --output outputs/predictions.csv
Keep the supplied data's directory structure. The output path must be new. The command writes probabilities in the task's target-code order and sets already-diagnosed targets to zero. Input and archive integrity checks run before use.
The archive SHA-256 is:
7f91977f6532970a2c0813a36f31f643fec99cc5e632405fd27b405a4114c0a0
Eligibility and limitations
Predictors use events strictly before each patient's anchor. The representation combines structured clinical histories, measurements, trajectories, timing, missingness, interactions and imaging examination facts. Annual QALY/DALY/QOLS, costs, reason fields and unverified DNA, image-pixel and ECG payloads are excluded. No external datasets or pretrained weights are used.
Results are from synthetic data, one final seed and a historically reused validation split. Rare-condition estimates are unstable, and real-world clinical performance has not been established. This model has not been validated for clinical decisions. The task data is derived from Synthea's Coherent Synthetic Data Set; see NOTICE for attribution. Raw data is not redistributed.