Skip to content
/ ecg Public
forked from awni/ecg

Cardiologist-level arrhythmia detection and classification in ambulatory electrocardiograms using a deep neural network

License

Notifications You must be signed in to change notification settings

gweiying/ecg

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Install

Clone the repository

git clone [email protected]:awni/ecg.git

If you don't have virtualenv, install it with

pip install virtualenv

Make and activate a new Python 2.7 environment

virtualenv -p python2.7 ecg_env
source ecg_env/bin/activate

Install the requirements (this may take a few minutes).

For CPU only support run

./setup.sh

To install with GPU support run

env TF=gpu ./setup.sh

Training

In the repo root direcotry (ecg) make a new directory called saved.

mkdir saved

To train a model use the following command, replacing path_to_config.json with an actual config:

python ecg/train.py path_to_config.json

Note that after each epoch the model is saved in ecg/saved/<experiment_id>/<timestamp>/<model_id>.hdf5.

For an actual example of how to run this code on a real dataset, you can follow the instructions in the cinc17 README. This will walk through downloading the Physionet 2017 challenge dataset and training and evaluating a model.

Testing

After training the model for a few epochs, you can make predictions with.

python ecg/predict.py <dataset>.json <model>.hdf5

replacing <dataset> with an actual path to the dataset and <model> with the path to the model.

Citation and Reference

This work is published in the following paper in Nature Medicine

Cardiologist-level arrhythmia detection and classification in ambulatory electrocardiograms using a deep neural network

If you find this codebase useful for your research please cite:

@article{hannun2019cardiologist,
  title={Cardiologist-level arrhythmia detection and classification in ambulatory electrocardiograms using a deep neural network},
  author={Hannun, Awni Y and Rajpurkar, Pranav and Haghpanahi, Masoumeh and Tison, Geoffrey H and Bourn, Codie and Turakhia, Mintu P and Ng, Andrew Y},
  journal={Nature Medicine},
  volume={25},
  number={1},
  pages={65},
  year={2019},
  publisher={Nature Publishing Group}
}

About

Cardiologist-level arrhythmia detection and classification in ambulatory electrocardiograms using a deep neural network

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 98.7%
  • Shell 1.3%