Sequence patient electronic healthcare record generation with large language models (LLMs) as the neural database.
Project description
PromptEHR
Wang, Zifeng and Sun, Jimeng. (2022). PromptEHR: Conditional Electronic Healthcare Records Generation with Prompt Learning. EMNLP'22.
News
- [2023/01/08]
PromptEHR
is now integrated intoPyTrial
with a complete documentation and example, please check! New version with bugs fixed is also released!
Usage
Get pretrained PromptEHR model (learned on MIMIC-III sequence EHRs) in three lines:
from promptehr import PromptEHR
model = PromptEHR()
model.from_pretrained()
A jupyter example is available at https://github.com/RyanWangZf/PromptEHR/blob/main/example/demo_promptehr.ipynb.
How to install
Install the correct PyTorch
version by referring to https://pytorch.org/get-started/locally/.
Then try to install PromptEHR
by
pip install git+https://github.com/RyanWangZf/PromptEHR.git
or
pip install promptehr
Load demo synthetic EHRs (generated by PromptEHR)
from promptehr import load_synthetic_data
data = load_synthetic_data()
Use PromptEHR for generation
from promptehr import SequencePatient
from promptehr import load_synthetic_data
from promptehr import PromptEHR
# init model
model = PromptEHR()
model.from_pretrained()
# load input data
demo = load_synthetic_data(n_sample=1000) # we have 10,000 samples in total
# build the standard input data for train or test PromptEHR models
seqdata = SequencePatient(data={'v':demo['visit'], 'y':demo['y'], 'x':demo['feature'],},
metadata={
'visit':{'mode':'dense'},
'label':{'mode':'tensor'},
'voc':demo['voc'],
'max_visit':20,
}
)
# you can try to fit on this data by
# model.fit(seqdata)
# start generate
# n: the target total number of samples to generate
# n_per_sample: based on each sample, how many fake samples will be generated
# the output will have the same format of `SequencePatient`
fake_data = model.predict(seqdata, n=1000, n_per_sample=10)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file PromptEHR-0.0.6.tar.gz
.
File metadata
- Download URL: PromptEHR-0.0.6.tar.gz
- Upload date:
- Size: 230.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 31638dbdf274b35a37b8930cc47619b6467ef689cd9205204a04b01c83f20fe6 |
|
MD5 | f11f68f386c719591c21580f9969f260 |
|
BLAKE2b-256 | adbb9aadbcb822c0d5c358c49b9d4486639821bb389c8ac43f30eb2260611dca |
File details
Details for the file PromptEHR-0.0.6-py3-none-any.whl
.
File metadata
- Download URL: PromptEHR-0.0.6-py3-none-any.whl
- Upload date:
- Size: 312.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a2eae33478b51b3a84ad8b9d676dd9acf439250dfe1908f07c0257749654e775 |
|
MD5 | d303d6162a1150b811c1df1918e4c90f |
|
BLAKE2b-256 | bd71067429415052340eba76d82a0adf9135b59b8cf4781703a45e123b1372cd |