|
a |
|
b/README.md |
|
|
1 |
# Continual Learning of Longitudinal Health Records |
|
|
2 |
|
|
|
3 |
[](https://arxiv.org/abs/2112.11944) [](https://pytorch.org/) [](https://opensource.org/licenses/gpl-3-0) [](https://www.python.org/)  |
|
|
4 |
|
|
|
5 |
Repo for reproducing the experiments in [*Continual Learning of Longitudinal Health Records*](https://arxiv.org/abs/2112.11944) (2021). Release [v0.1](releases/v0.1) of the project corresponds to published results. |
|
|
6 |
|
|
|
7 |
Experiments evaluate various continual learning strategies on standard ICU predictive tasks exhibiting covariate shift. Task outcomes are binary, and input data are multi-modal time-series from patient ICU admissions. |
|
|
8 |
|
|
|
9 |
## Setup |
|
|
10 |
|
|
|
11 |
1. Clone this repo locally. |
|
|
12 |
2. Request access to [MIMIC-III](https://www.physionet.org/content/mimiciii/1.4/) and [eICU-CRD](https://www.physionet.org/content/eicu-crd/2.0/).<sup>1</sup> |
|
|
13 |
3. Download the [preprocessed datasets](https://physionet.org/files/mimic-eicu-fiddle-feature/1.0.0/) to the `/data` directory. |
|
|
14 |
|
|
|
15 |
## Results |
|
|
16 |
|
|
|
17 |
To reproduce main results: |
|
|
18 |
|
|
|
19 |
```zsh |
|
|
20 |
uv run main.py --train |
|
|
21 |
``` |
|
|
22 |
|
|
|
23 |
Figures will be saved to `/results/figs`. Instructions to reproduce supplementary experiments can be found [here](/results/README.md). Bespoke experiments can be specified with appropriate flags e.g: |
|
|
24 |
|
|
|
25 |
```posh |
|
|
26 |
uv run main.py --domain_shift "hospital" --outcome "mortality_48h" --models "CNN" --strategies "EWC" "Replay" --validate --train |
|
|
27 |
``` |
|
|
28 |
|
|
|
29 |
A complete list of available options can be found [here](/config/README.md) or with `uv run main.py --help`. |
|
|
30 |
|
|
|
31 |
## Citation |
|
|
32 |
|
|
|
33 |
If you use any of this code in your work, please reference us: |
|
|
34 |
|
|
|
35 |
```latex |
|
|
36 |
@misc{armstrong2021continual, |
|
|
37 |
title={Continual learning of longitudinal health records}, |
|
|
38 |
author={J. Armstrong and D. Clifton}, |
|
|
39 |
year={2021}, |
|
|
40 |
eprint={2112.11944}, |
|
|
41 |
archivePrefix={arXiv}, |
|
|
42 |
primaryClass={cs.LG} |
|
|
43 |
} |
|
|
44 |
``` |
|
|
45 |
|
|
|
46 |
--- |
|
|
47 |
|
|
|
48 |
### Stack |
|
|
49 |
|
|
|
50 |
For standardisation of ICU predictive task definitions, feature pre-processing, and Continual Learning method implementations, we use the following tools: |
|
|
51 |
|
|
|
52 |
| Tool | Source | |
|
|
53 |
|-----------------------------|----------------------| |
|
|
54 |
|ICU Data | [MIMIC-III](https://www.physionet.org/content/mimiciii/1.4/)<br> [eICU-CRD](https://www.physionet.org/content/eicu-crd/2.0/) | |
|
|
55 |
|Data preprocessing / task definition | [FIDDLE](https://www.physionet.org/content/mimic-eicu-fiddle-feature/1.0.0/) | |
|
|
56 |
|Continual Learning strategies| [Avalanche](https://avalanche.continualai.org/) |
|
|
57 |
|
|
|
58 |
> [!NOTE] |
|
|
59 |
> Temporal Domain Incremental learning experiments require linkage with original MIMIC-III dataset. Requires downloading `ADMISSIONS.csv` from [MIMIC-III](https://physionet.org/content/mimiciii/1.4/) to the `/data/mimic3/` folder. |