Foresight
A generative transformer model trained on 50K patients from the MIMIC-III dataset, ~1M patients from King’s College Hospital and ~20k patients from South London and the Maudsley Mental Health NHS Foundation Trust. Please note that only the MIMIC-III model is available on this webapp, if you would like to collaborate on the other models, please contact us.
The model is geared towards common high-level SNOMED-CT concepts, and performance is better with long timelines.
Citation
Preprint on arXiv
Examples Timeline (Physical Health)
On the MIMIC-III model these examples do not work the best, but can showcase the functionality.
- Kidney Disease
- Wernicke Encephalopathy
- Kidney Disease [Masked]
Examples Text (Physical Health)
First two examples are taken from BMJ
How to
There are two modes: Timeline and Text.
Timeline mode is prefered and works better, it allows one to create a patient timeline using <SEP> and `Age:` tokens to prompt the model there is a time difference between two biomedical concept. If one adds, for example, three disorders to the timeline and does not put SEP or Age tokens inbetween, the model interprets those disorders as appearing at the same time. If one wants to indicate order between disorders/concepts then we need to add the SEP or Age tokens. Repetition of concepts (e.g. mentioning Cough three times) is possible, but a <SEP> token should be used to separate the mentions. Another way to understand this is, if one wants to prompt the model a concept (e.g. Symptom) was affecting the patient for a longer time, you can mention it multiple times and add <SEP> in-between. Check out the Timeline examples above to see how to build a timeline and how to organize the input concepts. Please note that the model works better the longer the timeline is, for very short timelines we can get strange forecasts.
Text mode is experimental at this stage and the model automatically preprocesses the text using MedCAT, finds important biomedical concepts and builds a timeline. Check out the Text examples to see what kind of text we can enter. The more text one uses in the prompt the better the model will work.
FAQ
What can be added to the timeline?
The timeline is used to represent a patients medical history, it can contain symptoms, medications, procedures and disorders. We should add as much information as we have for a patient and use the SEP/AGE token to denote tamporal difference between concetps - please have a look at the timeline examples below to see how.
Can this be used to forecast risk of a disorder/symptom?
Yes, the model is suggesting what disorders the patient has or will have in the future - so at the same time the model suggests the current diagnosis and risk of future disorders/symptoms.
Can this be used to suggest commonly used medications given a set of symptoms and disorders?
Yes, by selecting the Medications and Substances option on the right side of the screen. The same can be done for suggestion of symptoms/procedures given disorders/medications.
What are the first three concepts (Ethnicity, Sex, Age)?
The first three concepts provide additional information about the patient to the model. They are not required, but having them improves the performance.
What are the filters (Ignore siblings/parents/children)?
SNOMED is an ontology and there is a parent/child relation between concepts. For example the concept Diabetes Mellitus is a parent of the concept Type 1 Diabetes Mellitus. If we for example select the option ignore Children, the model will not output children of concepts that are already in the timeline (prompt). For example, if Diabetes Mellitus is in the timeline, the model will never output T1DM if we select ignore children.
How to clear the timeline?
Click on the KCL logo in the top left corner.
Where can I find SNOMED codes to use for the filters?
You can browse through all snomed codes at:
SNOMED Browser
Disclaimer
Do not use this to diagnose real patients or yourself, it is an experimental tool.
Contact
Please use our Discourse Board to ask any questions, post comments or give feedback.