prodrome-clock

Hourly early warning for sepsis in intensive care, from the Prodrome pipeline. Trained on hospital system A of the PhysioNet/CinC 2019 challenge corpus and evaluated on system B, which it never saw.

This is a research artefact. It is not a medical device, it has not been cleared or approved by any regulator, and it must not be used to inform clinical decisions.

Read this before the numbers

  • It predicts a recorded clinical suspicion, not a biological event. The label turns on six hours before a clinician documented suspicion of infection alongside a rise in SOFA score. Every label in this field is a proxy.
  • A three-feature clock reaches 100% of this model's utility score. A baseline that alerts on nothing but how long the patient has been in the unit scores 0.2413 against this model's 0.2413. Septic stays in this corpus run substantially longer than the rest, and the challenge utility metric rewards that. What this model adds is visible in the ranking, the in-window detection rate and the calibration, not in the headline score.
  • The model leans heavily on the workup and the clock. An ablation fitting the same model on measured values alone reaches roughly half the utility, while the ordering and staleness columns alone reach most of it. Nobody orders a lactate for a patient they are relaxed about, so the test-ordering pattern encodes clinician suspicion, and the label is a record of clinician suspicion.
  • Two hospital systems in one country is not the world. The only supported claim is the transfer measured below.
  • The reported lead times are generous. A long median largely reflects patients flagged early in a long stay, which is why the stricter in-window detection rate is reported beside it.

Results

Measured by prodrome eval on corpus ef46d3e6ec24, split seed 7. External results first, because that is the number that means something.

tested on utility AUPRC AUROC detected (ever) detected (in window) median lead alerts per patient-day precision among alerted calibration error
site B (external, never trained on) 0.2413 0.047 0.628 0.347 0.065 45.5 h 0.04 0.346 0.097
site A (internal) 0.2938 0.080 0.642 0.369 0.101 30.5 h 0.04 0.506 0.090

utility is the published challenge scoring function, where alerting through the whole beneficial window scores 1 and never alerting scores 0. precision among alerted is the share of alerted patients who go on to become septic, against a base rate of about 7 percent.

What it promises

With probability at least 95% over the calibration draw, at most 4.0 alerts are raised per patient-day and at least 30% of alerted patients go on to develop sepsis (observed on the calibration slice: 0.04 alerts per patient-day, 45% precision).

Checked on the external test patients, that promise held: precision among alerted patients was 0.346 against a floor of 0.30, and the alert rate was 0.04 against a budget of 4.0 per patient-day.

The threshold is not a default. It is chosen on held-out calibration patients as the lowest cut whose precision, at its exact Clopper-Pearson lower bound, clears the operator's floor and whose alert rate stays inside the operator's budget. When no threshold qualifies, the policy alerts on nothing rather than implying a guarantee it cannot support.

What the model is reading

ablation features utility share of full auroc auprc in window alerts/pt-day
full 205 0.2468 100% 0.8016 0.0724 0.153 0.11
physiology_only 125 0.1159 47% 0.7697 0.0604 0.117 0.08
process_only 75 0.2159 87% 0.7263 0.0523 0.109 0.09
clock_only 3 0.2428 98% 0.6656 0.0488 0.074 0.06
workup_only 72 0.2119 86% 0.7539 0.0520 0.115 0.10
no_time_index 202 0.2316 94% 0.7937 0.0707 0.156 0.14

The process and clock columns alone reach 87% of the full model's utility, more than physiology alone at 47%. This model is substantially reading the workup rather than the patient, which is worth knowing before anyone calls it an early warning.

Measured on site B (external).

Subgroups on the external site

A model that works on average and fails on the over-eighties is a model that fails, so the breakdown is here rather than on request.

dimension group patients septic utility AUROC detection rate
unit micu 6,923 390 0.1658 0.542 0.251
age_band 80_plus 2,322 129 0.1949 0.598 0.279
age_band 50_to_64 6,278 351 0.2268 0.612 0.316
age_band under_50 4,818 276 0.2351 0.610 0.341
sex male 10,732 647 0.2357 0.628 0.342
sex female 9,268 495 0.2486 0.627 0.354
unit sicu 6,982 428 0.2720 0.689 0.393
age_band 65_to_79 6,582 386 0.2736 0.665 0.402
unit unknown 6,095 324 0.2888 0.649 0.401

Intended use

Research and education: reproducing the reported numbers, comparing a new method against a measured baseline on an openly licensed corpus, and studying calibrated abstention and cross-hospital transfer.

Out of scope: any clinical use, any deployment that informs patient care, any triage or resource allocation, and any claim about a population unlike the two hospital systems in this corpus.

How to use it

pip install prodrome
prodrome init
prodrome data fetch      # the corpus, under its own licence, 42 MB
prodrome data prepare
prodrome train && prodrome calibrate && prodrome eval

The model file here is loadable by prodrome.core.registry through the configuration recorded alongside it. A clinical model without its feature pipeline is not a model, so the preprocessing travels with the weights.

Training data

corpus PhysioNet/CinC Challenge 2019, version 1.0.0
patients 40,336 across two hospital systems
rows 1,552,210, one per ICU hour
septic 2,932 patients, 7.3 percent
trained on system A, 4067 held-out patients at test
corpus digest ef46d3e6ec2497f7279ef352acdc32521cf54d42bb785ba2f3df4f2e179d854f

Licence and attribution

The model weights and the Prodrome source are Apache-2.0.

This model was produced from the PhysioNet/Computing in Cardiology Challenge 2019 database, which is available under the Open Database License (ODbL) v1.0. Under section 4.3 of that licence this notice accompanies the model as a Produced Work. The database itself is neither redistributed with this model nor included in the source repository. Cite Reyna et al., Early Prediction of Sepsis from Clinical Data: The PhysioNet/Computing in Cardiology Challenge 2019, Critical Care Medicine 48(2), 2020.

Reproducing this card

Every number above is generated from the committed evaluation reports by prodrome publish card, so the card cannot drift from what the harness measured.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support