Evaluates the classification accuracy and energy efficiency of a hardware-aware spiking neural network (SNN) for real-time ECG beat detection and categorization. Use when the user wants to benchmark on MIT-BIH, or asks about evaluating this task. Reports Accuracy.
Installs into .claude/skills of the current project.
Are you the author of Mit Bih Ecg Eval?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/qhjqhj00-mit-bih-ecg-eval)
---
name: mit-bih-ecg-eval
description: Evaluates the classification accuracy and energy efficiency of a hardware-aware spiking neural network (SNN) for real-time ECG beat detection and categorization. Use when the user wants to benchmark on MIT-BIH, or asks about evaluating this task. Reports Accuracy.
metadata:
skill_kind: dataset_eval
source_arxiv: 2406.06543
bibtex_key: [REDACTED]
confidence: high
---
# mit-bih-ecg-eval
> SparrowSNN: A Hardware/software Co-design for Energy Efficient ECG Classification — Yan et al. (2024) (arXiv:2406.06543, 2024)
## What this evaluates
Evaluates the classification accuracy and energy efficiency of a hardware-aware spiking neural network (SNN) for real-time ECG beat detection and categorization.
## Datasets
- **MIT-BIH** — total ?; splits: train (-1), test (-1), online (-1)
## Metrics
- `Accuracy` **(primary)** — range: percent
- Percentage of correctly classified heartbeats out of the total test set.
- `Sensitivity (Se)` — range: percent
- True Positive Rate: TP / (TP + FN).
- `Positive Predictivity (P+)` — range: percent
- Precision: TP / (TP + FP).
- `Energy per inference` — range: nJ
- Total energy consumed per heartbeat classification, calculated from dynamic/static power, memory read/write energy, and leakage over the inference cycle count.
## Input / output format
**Input**: 180-sample ECG window centered on an R-peak, normalized to [0, 1].
**Output**: One of four class labels (N, SVEB, VEB, F) and associated energy/power metrics.
## Scoring recipe
```python
def evaluate(predictions, gold):
correct = sum(1 for p, g in zip(predictions, gold) if p == g)
accuracy = correct / len(gold)
tp = sum(1 for p, g in zip(predictions, gold) if p == g == 'N')
fn = sum(1 for p, g in zip(predictions, gold) if p != g and g == 'N')
fp = sum(1 for p, g in zip(predictions, gold) if p != g and p == 'N')
se = tp / (tp + fn) if (tp + fn) > 0 else 0
pp = tp / (tp + fp) if (tp + fp) > 0 else 0
return accuracy, se, pp
```
## Common pitfalls
- Energy estimates are tightly coupled to the 22nm ASIC synthesis and 4MHz clock frequency, making direct comparisons with other works at different nodes or frequencies misleading.
- Training data is heavily augmented with SMOTE to balance classes, which inflates training set size but does not reflect real-world class imbalance.
- Patient-specific online training uses 20% of a patient's data for fine-tuning, which is not available in standard zero-shot or fully supervised benchmarks.
## Evidence (verbatim from paper)
> We evaluate the performance before and after per-patient fine-tuning using two key metrics: sensitivity (Se) and positive predictivity (P+) [6], with calculations detailed below: Se = TP / (TP + FN); P+ = TP / (TP + FP). where TP FN and FP indicate true positive, false negative and false positive. ... The overall accuracy of the SNN has increased by 1.57%.
## Citation
```bibtex
@misc{yan2024sparrowsnn,
title={SparrowSNN: A Hardware/software Co-design for Energy Efficient ECG Classification},
author={Yan et al. (2024)},
year={2024},
note={arXiv:2406.06543}
}
```
- arXiv: 2406.06543