7.7.14. ECG Classification

Classify normal vs anomalous heartbeats from ECG signals.

7.7.14.1. Overview

This example demonstrates heartbeat classification using ECG (electrocardiogram) signals. It can identify normal heartbeats and various arrhythmia conditions, enabling early detection of cardiac abnormalities.

Application: Wearable health monitors, cardiac monitoring, medical devices

Task Type: Time Series Classification / Anomaly Detection

Data Type: Multivariate (ECG leads)

7.7.14.2. Configuration

Classification Mode:

common:
  target_module: 'timeseries'
  task_type: 'generic_timeseries_classification'
  target_device: 'F28P55'

dataset:
  dataset_name: 'ecg_classification'

training:
  model_name: 'CLS_4k_NPU'
  training_epochs: 50
  batch_size: 32

testing: {}
compilation: {}

7.7.14.3. Running the Example

# Classification mode
cd tinyml-modelzoo
./run_tinyml_modelzoo.sh examples/ecg_classification/config.yaml

# Anomaly detection mode
./run_tinyml_modelzoo.sh examples/ecg_classification/config_anomaly_detection.yaml

7.7.14.4. Dataset Details

Input Variables:

  • ECG signal samples

  • Multiple leads (if available)

Classes (Classification mode):

  • Normal heartbeat

  • Abnormal heartbeat / Arrhythmia

Anomaly Detection Mode:

Train on normal heartbeats only, detect anomalies based on reconstruction error.

7.7.14.5. See Also