An SVM approach for identifying atrial fibrillation

Physiol Meas. 2018 Sep 27;39(9):094007. doi: 10.1088/1361-6579/aadf49.

Abstract

Objectives: We designed an automated algorithm to classify short electrocardiogram (ECG) strips into four categories: normal rhythm, atrial fibrillation, noisy segment, or other rhythm disturbances.

Approach: The algorithm is based on identification of the R peak and recognition of the other ECG waves. Time-frequency domain features, the average and variability of the intra-beat temporal interval, and the average beat morphology were also calculated. These features (61 features at all) were the input to a support vector machine (SVM) with and without a feed-forward 2-layer neural network consisting of 20 neurons trained on an annotated database. Data were drawn from the PhysioNet Challenge 2017 dataset, consisting of 8528 recordings, of which 60.43% are normal, 0.54% are noisy, 9.04% are AF, and 30% are other rhythm disturbances. The results were validated on 3658 ECG recordings of similar length and percent from each of the four groups.

Main results: We used a quadratic SVM classifier with a combination of 61 features to classify the short ECG recordings into one of the four categories mentioned above. The use of an additional neural network to improve the identification of 'other' rhythms that were misclassified as 'normal' did not statistically affect the results. Our algorithm obtained a total score (F1) of 0.80 on the hidden dataset (placing 18th-24th out of all the algorithms participating in the challenge; places 18-24 received the same score).

Significance: Our algorithm was also able to classify AF versus non-AF and normal versus abnormal (arrhythmia or noise) records.

Publication types

  • Research Support, Non-U.S. Gov't
  • Validation Study

MeSH terms

  • Atrial Fibrillation / diagnosis*
  • Diagnosis, Computer-Assisted / methods*
  • Electrocardiography / instrumentation
  • Electrocardiography / methods*
  • Humans
  • Pattern Recognition, Automated / methods
  • Support Vector Machine*