Research

Paper

TESTING February 20, 2026

Atrial Fibrillation Detection Using Machine Learning

Authors

Ankit Singh, Vidhi Thakur, Nachiket Tapas

Abstract

Atrial fibrillation (AF) is a common cardiac arrhythmia and a major risk factor for ischemic stroke. Early detection of AF using non-invasive signals can enable timely intervention. In this work, we present a comprehensive machine learning framework for AF detection from simultaneous photoplethysmogram (PPG) and electrocardiogram (ECG) signals. We partitioned continuous recordings from 35 subjects into 525 segments (15 segments of 10,000 samples each at 125Hz per subject). After data cleaning to remove segments with missing samples, 481 segments remained (263 AF, 218 normal). We extracted 22 features per segment, including time-domain statistics (mean, standard deviation, skewness, etc.), bandpower, and heart-rate variability metrics from both PPG and ECG signals. Three classifiers -- ensemble of bagged decision trees, cubic-kernel support vector machine (SVM), and subspace k-nearest neighbors (KNN) -- were trained and evaluated using 10-fold cross-validation and hold-out testing. The subspace KNN achieved the highest test accuracy (98.7\%), slightly outperforming bagged trees (97.9\%) and cubic SVM (97.1\%). Sensitivity (AF detection) and specificity (normal rhythm detection) were all above 95\% for the top-performing models. The results indicate that ensemble-based machine learning models using combined PPG and ECG features can effectively detect atrial fibrillation. A comparative analysis of model performance along with strengths and limitations of the proposed framework is presented.

Metadata

arXiv ID: 2602.18036
Provider: ARXIV
Primary Category: cs.CY
Published: 2026-02-20
Fetched: 2026-02-23 05:33

Related papers

Raw Data (Debug)
{
  "raw_xml": "<entry>\n    <id>http://arxiv.org/abs/2602.18036v1</id>\n    <title>Atrial Fibrillation Detection Using Machine Learning</title>\n    <updated>2026-02-20T07:30:08Z</updated>\n    <link href='https://arxiv.org/abs/2602.18036v1' rel='alternate' type='text/html'/>\n    <link href='https://arxiv.org/pdf/2602.18036v1' rel='related' title='pdf' type='application/pdf'/>\n    <summary>Atrial fibrillation (AF) is a common cardiac arrhythmia and a major risk factor for ischemic stroke. Early detection of AF using non-invasive signals can enable timely intervention. In this work, we present a comprehensive machine learning framework for AF detection from simultaneous photoplethysmogram (PPG) and electrocardiogram (ECG) signals. We partitioned continuous recordings from 35 subjects into 525 segments (15 segments of 10,000 samples each at 125Hz per subject). After data cleaning to remove segments with missing samples, 481 segments remained (263 AF, 218 normal).\n  We extracted 22 features per segment, including time-domain statistics (mean, standard deviation, skewness, etc.), bandpower, and heart-rate variability metrics from both PPG and ECG signals. Three classifiers -- ensemble of bagged decision trees, cubic-kernel support vector machine (SVM), and subspace k-nearest neighbors (KNN) -- were trained and evaluated using 10-fold cross-validation and hold-out testing. The subspace KNN achieved the highest test accuracy (98.7\\%), slightly outperforming bagged trees (97.9\\%) and cubic SVM (97.1\\%). Sensitivity (AF detection) and specificity (normal rhythm detection) were all above 95\\% for the top-performing models.\n  The results indicate that ensemble-based machine learning models using combined PPG and ECG features can effectively detect atrial fibrillation. A comparative analysis of model performance along with strengths and limitations of the proposed framework is presented.</summary>\n    <category scheme='http://arxiv.org/schemas/atom' term='cs.CY'/>\n    <published>2026-02-20T07:30:08Z</published>\n    <arxiv:primary_category term='cs.CY'/>\n    <author>\n      <name>Ankit Singh</name>\n    </author>\n    <author>\n      <name>Vidhi Thakur</name>\n    </author>\n    <author>\n      <name>Nachiket Tapas</name>\n    </author>\n  </entry>"
}