Binary classification for arrythmia detection with ECG datasets.

Overview

HEART DISEASE AI DATATHON 2021

[Eng] / [Kor]


#English

This is an AI diagnosis modeling contest that uses the heart disease echocardiography and electrocardiogram datasets for artificial intelligence learning promoted as part of the "2021 AI Learning Data Construction Project" to discriminate echocardiography/electrocardiogram diseases.

Task II. Arrythmia on ECG datasets

0. Model

Resnet-based architecture.
Best AUC-ROC Score: 0.9986926250732517

1. Installation

1.1. Environment

Python >= 3.6

1.2. Requirements:

  • tensorflow >= 2.5
  • xmltodict
  • scikit-learn
  • matplotlib
  • numpy
pip install -r requirements.txt

2. Usage

2.1. Training

  1. Basic usage
python train.py -d electrocardiogram/data/train -s model.h5
  1. Training with 8 leads inputs, elevation adjustment, data augmentation and gqussian noises
python train.py -d electrocardiogram/data/train -s model.h5 -l 8 -v -a -n

To see more options:

python train.py -h
  • options:
    • -d, --data : File path of training data
    • -s, --save : File name for saving trained model (extension should be '.h5')
    • -b, --batch : Batch size (default=500)
    • -e, --epoch : Number of epochs (default=50)
    • -l, --lead : Number of leads to be trained (2/8/12) (default=2)
    • -v, --elevation : Option for adjusting elevation
    • -a, --augmentation : Option for data augmentation (stretching & amplifying)
    • -n, --noise : Option for adding noise on data

2.2. Evaluation

  1. Basic usage
python eval.py -d electrocardiogram/data/validation -m model.h5
  1. Evaluation with the best model
python eval.py -d electrocardiogram/data/validation -m best.h5
  1. Evaluation with 12 leads inputs and elevation adjustment
python eval.py -d electrocardiogram/data/validation -m model.h5 -l 12 -v

To see more options:

python eval.py -h
  • options:
    • -d, --data : File path of validation data
    • -m, --model : File name of saved model
    • -l, --lead : Number of leads being trained (default=2) (2/8/12)
    • -v, --elevation : Option for adjusting elevation

#Korean

심초음파/심전도 ai 모델 데이터톤 2021

이 경진대회는 "2021 인공지능 학습용 데이터 구축사업"의 일환으로 추진된 인공지능 학습용 심장질환 심초음파 및 심전도 데이터셋을 이용하여 심초음파/심전도 질환을 판별하는 AI 진단 모델링 경진대회입니다.

Task II. Arrythmia on ECG datasets

심전도 데이터셋을 활용한 부정맥 진단 AI 모델 공모(심전도 데이터셋을 활용한 부정맥 진단 AI 모델 개발)

0. 모델

Resnet 구조 기반의 Binary classification model.
Best AUC-ROC Score: 0.9986926250732517

1. 설치

1.1. 환경

Python >= 3.6

1.2. 필요한 패키지:

  • tensorflow >= 2.5
  • xmltodict
  • scikit-learn
  • matplotlib
  • numpy
pip install -r requirements.txt

2. 사용법

2.1. Training

  1. 기본 사용법 예시 (제출용)
python train.py -d electrocardiogram/data/train -s model.h5
  1. 8개 리드, 상하조정, 데이터 어그멘테이션, 노이즈 적용
python train.py -d electrocardiogram/data/train -s model.h5 -l 8 -v -a -n

To see more options:

python train.py -h
  • options:
    • -d, --data : 트레이닝 데이터 경로
    • -s, --save : 학습된 모델명 (확장자 .h5로 써줄 것)
    • -b, --batch : 배치 사이즈 (default=500)
    • -e, --epoch : 에포크 수 (default=50)
    • -l, --lead : 트레이닝에 쓸 리드 수 (2/8/12) (default=2)
    • -v, --elevation : 상하 조정 옵션
    • -a, --augmentation : 데이터 어그멘테이션 옵션 (stretching & amplifying)
    • -n, --noise : 가우시안 노이즈 적용 옵션

2.2. Evaluation

  1. 기본 사용법 예시
python eval.py -d electrocardiogram/data/validation -m model.h5
  1. 체출된 Best model 평가 (제출용)
python eval.py -d electrocardiogram/data/validation -m best.h5
  1. 12개 리드, 상하조정 적용
python eval.py -d electrocardiogram/data/validation -m model.h5 -l 12 -v

To see more options:

python eval.py -h
  • options:
    • -d, --data : 벨리데이션 데이터 경로
    • -m, --model : 불러올 모델 파일명
    • -l, --lead : 트레이닝된 리드 수 (2/8/12) (default=2)
    • -v, --elevation : 상하 조정 옵션
Owner
HY_Kim
CSer in SUNY Korea.
HY_Kim
Ros2-voiceroid2 - ROS2 wrapper package of VOICEROID2

ros2_voiceroid2 ROS2 wrapper package of VOICEROID2 Windows Only Installation Ins

Nkyoku 1 Jan 23, 2022
"Exploring Vision Transformers for Fine-grained Classification" at CVPRW FGVC8

FGVC8 Exploring Vision Transformers for Fine-grained Classification paper presented at the CVPR 2021, The Eight Workshop on Fine-Grained Visual Catego

Marcos V. Conde 19 Dec 06, 2022
Official PyTorch Implementation of Mask-aware IoU and maYOLACT Detector [BMVC2021]

The official implementation of Mask-aware IoU and maYOLACT detector. Our implementation is based on mmdetection. Mask-aware IoU for Anchor Assignment

Kemal Oksuz 46 Sep 29, 2022
Unified API to facilitate usage of pre-trained "perceptor" models, a la CLIP

mmc installation git clone https://github.com/dmarx/Multi-Modal-Comparators cd 'Multi-Modal-Comparators' pip install poetry poetry build pip install d

David Marx 37 Nov 25, 2022
Dialect classification

Dialect-Classification This repository presents the data that was used in a talk at ICKL-5 (5th International Conference on Kurdish Linguistics) at th

Kurdish-BLARK 0 Nov 12, 2021
PyTorch implementations of neural network models for keyword spotting

Honk: CNNs for Keyword Spotting Honk is a PyTorch reimplementation of Google's TensorFlow convolutional neural networks for keyword spotting, which ac

Castorini 475 Dec 15, 2022
PyTorch implementation of our ICCV 2021 paper, Interpretation of Emergent Communication in Heterogeneous Collaborative Embodied Agents.

PyTorch implementation of our ICCV 2021 paper, Interpretation of Emergent Communication in Heterogeneous Collaborative Embodied Agents.

Saim Wani 4 May 08, 2022
Bidimensional Leaderboards: Generate and Evaluate Language Hand in Hand

Bidimensional Leaderboards: Generate and Evaluate Language Hand in Hand Introduction We propose a generalization of leaderboards, bidimensional leader

4 Dec 03, 2022
Image transformations designed for Scene Text Recognition (STR) data augmentation. Published at ICCV 2021 Workshop on Interactive Labeling and Data Augmentation for Vision.

Data Augmentation for Scene Text Recognition (ICCV 2021 Workshop) (Pronounced as "strog") Paper Arxiv Why it matters? Scene Text Recognition (STR) req

Rowel Atienza 152 Dec 28, 2022
A project to build an AI voice assistant using Python . The Voice assistant interacts with the humans to perform basic tasks.

AI_Personal_Voice_Assistant_Using_Python A project to build an AI voice assistant using Python . The Voice assistant interacts with the humans to perf

Chumui Tripura 1 Oct 30, 2021
Pointer-generator - Code for the ACL 2017 paper Get To The Point: Summarization with Pointer-Generator Networks

Note: this code is no longer actively maintained. However, feel free to use the Issues section to discuss the code with other users. Some users have u

Abi See 2.1k Jan 04, 2023
A minimal solution to hand motion capture from a single color camera at over 100fps. Easy to use, plug to run.

Minimal Hand A minimal solution to hand motion capture from a single color camera at over 100fps. Easy to use, plug to run. This project provides the

Yuxiao Zhou 824 Jan 07, 2023
Source Code and data for my paper titled Linguistic Knowledge in Data Augmentation for Natural Language Processing: An Example on Chinese Question Matching

Description The source code and data for my paper titled Linguistic Knowledge in Data Augmentation for Natural Language Processing: An Example on Chin

Zhengxiang Wang 3 Jun 28, 2022
Code for "On the Effects of Batch and Weight Normalization in Generative Adversarial Networks"

Note: this repo has been discontinued, please check code for newer version of the paper here Weight Normalized GAN Code for the paper "On the Effects

Sitao Xiang 182 Sep 06, 2021
A geometric deep learning pipeline for predicting protein interface contacts.

A geometric deep learning pipeline for predicting protein interface contacts.

44 Dec 30, 2022
IsoGCN code for ICLR2021

IsoGCN The official implementation of IsoGCN, presented in the ICLR2021 paper Isometric Transformation Invariant and Equivariant Graph Convolutional N

horiem 39 Nov 25, 2022
Code for Max-Margin Contrastive Learning - AAAI 2022

Max-Margin Contrastive Learning This is a pytorch implementation for the paper Max-Margin Contrastive Learning accepted to AAAI 2022. This repository

Anshul Shah 12 Oct 22, 2022
Official PyTorch implementation for "Low Precision Decentralized Distributed Training with Heterogenous Data"

Low Precision Decentralized Training with Heterogenous Data Official PyTorch implementation for "Low Precision Decentralized Distributed Training with

Aparna Aketi 0 Nov 23, 2021
A PyTorch implementation of QANet.

QANet-pytorch NOTICE I'm very busy these months. I'll return to this repo in about 10 days. Introduction An implementation of QANet with PyTorch. Any

H. Z. 343 Nov 03, 2022
Image Segmentation Animation using Quadtree concepts.

QuadTree Image Segmentation Animation using QuadTree concepts. Usage usage: quad.py [-h] [-fps FPS] [-i ITERATIONS] [-ws WRITESTART] [-b] [-img] [-s S

Alex Eidt 29 Dec 25, 2022