Framework for healthcare ML implementation
Project description
cyclops
is a framework for facilitating research and deployment of ML models
in the health (or clinical) setting. It provides a few high-level APIs namely:
query
- Querying EHR databases (such as MIMIC-IV)process
- Process static and temporal EHR dataevaluate
- Evaluate models on clinical prediction tasksmonitor
- Detect data drift relevant for clinical use cases
cyclops
also provides a library of use-cases on clinical datasets. The implemented
use cases include:
- Mortality decompensation prediction
🐣 Getting Started
Installing cyclops using pip
python3 -m pip install pycyclops
The core package only includes support for the process
API. To install support for
query
, evaluate
and monitor
APIs, install them as extra dependency installs.
To install with query
API support,
python3 -m pip install 'pycyclops[query]'
To install with evaluate
API support,
python3 -m pip install 'pycyclops[evaluate]'
To install with monitor
API support,
python3 -m pip install 'pycyclops[monitor]'
Multiple extras could also be combined, for example to install with both query
and
evaluate
API support:
python3 -m pip install 'pycyclops[query,evaluate]'
🧑🏿💻 Developing
The development environment has been tested on python = 3.9
.
The python virtual environment can be set up using poetry. Hence, make sure it is installed and then run:
python3 -m poetry install
source $(poetry env info --path)/bin/activate
API documentation is built using Sphinx and can be locally built by:
cd docs
make html SPHINXOPTS="-D nbsphinx_allow_errors=True"
Contributing
Contributing to cyclops is welcomed. See Contributing for guidelines.
📚 Documentation
📓 Notebooks
To use jupyter notebooks, the python virtual environment can be installed and used inside an IPython kernel. After activating the virtual environment, run:
python3 -m ipykernel install --user --name <name_of_kernel>
Now, you can navigate to the notebook's Kernel
tab and set it as
<name_of_kernel>
.
🎓 Citation
Reference to cite when you use CyclOps in a project or a research paper:
@article {Krishnan2022.12.02.22283021,
author = {Krishnan, Amrit and Subasri, Vallijah and McKeen, Kaden and Kore, Ali and Ogidi, Franklin and Alinoori, Mahshid and Lalani, Nadim and Dhalla, Azra and Verma, Amol and Razak, Fahad and Pandya, Deval and Dolatabadi, Elham},
title = {CyclOps: Cyclical development towards operationalizing ML models for health},
elocation-id = {2022.12.02.22283021},
year = {2022},
doi = {10.1101/2022.12.02.22283021},
publisher = {Cold Spring Harbor Laboratory Press},
URL = {https://www.medrxiv.org/content/early/2022/12/08/2022.12.02.22283021},
journal = {medRxiv}
}
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
Hashes for pycyclops-0.1.31-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f353dc5efbae177d20cd3e7286f8194b9f2509036cd98505c72f4a1df1c12d9b |
|
MD5 | b31045146ccdd2ba9b0b0f71cfcfe4f1 |
|
BLAKE2b-256 | b63badfbcdd9c891b120a53c9808b14de34f290109e5cb2ea8057bf1f6b5cc32 |