GithubHelp home page GithubHelp logo

adibvafa / cyclops Goto Github PK

View Code? Open in Web Editor NEW

This project forked from vectorinstitute/cyclops

0.0 1.0 0.0 73.7 MB

Toolkit for healthcare ML implementation

Home Page: https://vectorinstitute.github.io/cyclops/

License: Apache License 2.0

Python 99.09% Dockerfile 0.02% Jinja 0.89%

cyclops's Introduction

cyclops Logo


PyPI code checks integration tests docs codecov docker license

cyclops is a toolkit for facilitating research and deployment of ML models for healthcare. It provides a few high-level APIs namely:

  • query - Query EHR databases (such as MIMIC-IV)
  • data - Create datasets for training, inference and evaluation. We use the popular ๐Ÿค— datasets to efficiently load and slice different modalities of data.
  • models - Use common model implementations using scikit-learn and PyTorch.
  • tasks - Use canonical Healthcare ML tasks such as
    • Mortality prediction
    • Chest X-ray classification
  • evaluate - Evaluate models on clinical prediction tasks
  • monitor - Detect dataset shift relevant for clinical use cases
  • report - Create model report cards for clinical ML models

cyclops also provides a library of end-to-end use cases on clinical datasets such as

๐Ÿฃ Getting Started

Installing cyclops using pip

python3 -m pip install pycyclops

The base package installation supports the use of the data and process APIs to load and transform clinical data, for downstream tasks.

To install additional functionality from the other APIs, they can be installed as extras.

To install with query API support,

python3 -m pip install 'pycyclops[query]'

To install with models, tasks, evaluate and monitor API support,

python3 -m pip install 'pycyclops[models]'

To install with report API support,

python3 -m pip install 'pycyclops[report]'

Multiple extras could also be combined, for example to install with both query and models support:

python3 -m pip install 'pycyclops[query,models]'

๐Ÿง‘๐Ÿฟโ€๐Ÿ’ป Developing

Using poetry

The development 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

Using Conda

The development environment can also be set up using conda. Hence, make sure it is installed and then run:

conda env create
conda install conda-build
conda develop .

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}
}

cyclops's People

Contributors

amrit110 avatar mahshidaln avatar a-kore avatar fcogidi avatar hoxell avatar kadenmc avatar elhamdolatabadi avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.