ECG Arrhythmia classification using Deep Convolution Neural Networks in Transfer Learning
Haroon, Muhammad Arshad (2020)
Avaa tiedosto
Lataukset:
Haroon, Muhammad Arshad
2020
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2020061719005
https://urn.fi/URN:NBN:fi:amk-2020061719005
Tiivistelmä
Electrocardiogram (ECG) is a health monitoring test which assists clinicians to detect abnormal cardiac activity based on heart’s electrical activity. Early classification of ECG signals is important towards the possible treatment measures for the patients. In principle ECG is a time series signal as a result of heart’s electrical activity. Various methods have been devised to apply Machine learning algorithms for the classification of these time series signals. These methods require feature extraction which in turn pose problems such as inconsistency in the extracted features as well as variability found in the ECG features. Deep learning methods such as algorithms based on Convolution Neural Networks (CNN) can be used to avoid manual crafting of features from ECG signals. Due to the large amount of ECG data and the complexity of CNNs, GPU processing is often required in order to train and test the models quickly. Google Colab provides a free tier with limited memory space for implementing complex and deep neural networks. Also, already trained network on some other data can be used to learn common features for new data and modified to produce desired results. Among many, Res-Net-50 and VGG-16 are well-known models being used for transfer learning.
In this project study ECG data is acquired from MIT-BIH Arrhythmia database. Using wave form database (wfdb) library in Python ECG signals were studied and observations were made for different characteristics and data variations. QRS detection was performed by locating the R peaks in ECG strips based on the annotation files for individual records. Segmented one dimensional data was converted to images for deep neural network training via CNN. Multi-layer CNN, ResNet-50 and VGG-16 were used for deep convolution and transfer learning and the computing was performed in Google Colab environment. Accuracies of 83 % via ResNet-50 and 99 % via VGG-16 were achieved using two dimensional ECG data. Higher accuracy with VGG-16 proves that Transfer learning can be applied for ECG arrhythmia classification.
In this project study ECG data is acquired from MIT-BIH Arrhythmia database. Using wave form database (wfdb) library in Python ECG signals were studied and observations were made for different characteristics and data variations. QRS detection was performed by locating the R peaks in ECG strips based on the annotation files for individual records. Segmented one dimensional data was converted to images for deep neural network training via CNN. Multi-layer CNN, ResNet-50 and VGG-16 were used for deep convolution and transfer learning and the computing was performed in Google Colab environment. Accuracies of 83 % via ResNet-50 and 99 % via VGG-16 were achieved using two dimensional ECG data. Higher accuracy with VGG-16 proves that Transfer learning can be applied for ECG arrhythmia classification.