Robust Remote ECG Monitoring under Energy Constraints: Anomaly Filtering versus Predictive Uncertainty
Authors: Mustafa Fuad Rifet Ibrahim, Maurice Meijer, Alexander Schlaefer, Peer Stelldinger
Organizations: CTO System Innovation, NXP Semiconductors Germany GmbH, Beiersdorfstraße 12, Hamburg, 22529, Germany · Institute of Medical Technology and Intelligent Systems, Hamburg University of Technology, Am Schwarzenberg-Campus 1, Hamburg, 21073, Germany · Faculty of Computer Science and Digital Society, Hamburg University of Applied Sciences, Berliner Tor 5, Hamburg, 20099, Germany · Business Line Secure Connected Edge, NXP Semiconductors, High Tech Campus 60, Eindhoven, 5656, The Netherlands
Machine learning for remote electrocardiogram monitoring must handle noise and diseases absent from training under tight resource constraints. We investigate whether upstream unsupervised anomaly detection can improve monitoring decisions more efficiently than classifier-derived uncertainty. We evaluate five detectors on PTB-XL and BUT QDB and compare a two-stage filter-classifier system with Monte Carlo Dropout and deep ensembles under unseen-disease and noise conditions. Performance is averaged over five training seeds. We measure single-pass energy, latency, and graph memory on a microcontroller's central processing unit (CPU) and neural processing unit (NPU). Per-score neural network costs account for repeated evaluations but exclude scoring outside deployed graphs. Energy equations relate filtering and rejection to avoided classifier execution. Across four disease scenarios, Deep Support Vector Data Description (Deep SVDD) achieves the highest mean area under the receiver operating characteristic curve within all tested finite CPU energy budgets. On the NPU, it leads at 1 mJ, while Monte Carlo Dropout has slightly higher means at 10 and 100 mJ. With a narrow CPU classifier, the Deep SVDD two-stage system increases the fraction of correctly classified or correctly rejected inputs by 15.0-19.4 percentage points over classification without rejection. Estimated energy per input is 1.93-6.99 mJ, compared with 52.53 mJ for Monte Carlo Dropout and 8.76-17.51 mJ for deep ensembles, at each method's retrospectively selected test accuracy peak. These results support upstream filtering for efficient remote monitoring, while independent validation and complete-system measurements remain necessary.
Figures & tables
Figure 1: Upstream filtering and classifier-derived uncertainty. (a) The UAD filter rejects a fraction rf of ECG windows at threshold τf , avoiding classifier execution for those inputs. (b) UQ-based rejection at threshold τu follows all classifier evaluations. Here, K denotes the number of MC-Dropout passes. For DE, the member count M replaces K . UQ energy is estimated from one measured classifier pass multiplied by K or M . All energy estimates exclude score calculations outside the deployed graphs. The equations assume equal classifier costs and exclude escalation.
Method
HYP
CD
STTC
MI
Noise
Deep SVDD
0.7792 ± 0.0071
0.7658 ± 0.0065
0.6647 ± 0.0346
0.6725 ± 0.0044
0.9896 ± 0.0022
(132.9 KB)
(247.8 KB)
(132.9 KB)
(132.9 KB)
(67.1 KB)
AE
0.7812 ± 0.0013
0.6547 ± 0.0009
0.6145 ± 0.0018
0.5903 ± 0.0018
0.9903 ± 0.0012
(67.4 KB)
(256.4 KB)
(106.9 KB)
(256.4 KB)
(10.8 KB)
VAE
0.7798 ± 0.0010
0.6546 ± 0.0005
0.6086 ± 0.0028
0.5821 ± 0.0021
0.9876 ± 0.0017
(50.9 KB)
(112.1 KB)
(73.6 KB)
(83.3 KB)
(116.8 KB)
Table 1: Highest observed mean AUC and corresponding SRAM usage. Each maximum is selected separately per method and scenario across the evaluated float32 and int8 configurations, without an energy or latency constraint. AUC values show mean ± SD across five training seeds. Values in parentheses below the AUCs give SRAM usage in KB for CPU execution of the same configuration. UQ entries use the matching classifier reference graph. Bold identifies the highest displayed AUC per scenario without implying statistical significance. HYP, CD, STTC, and MI identify the withheld disease class. Noise denotes the BUT QDB task. A dash indicates that the UQ baseline is not applicable.
Figure 2: Experiment 1: mean detection AUC evaluated on the PC against estimated neural network energy (top) and latency (bottom) per score for CPU execution. Points show configurations retained separately for each method and cost metric. Error bars indicate one standard deviation across five training seeds. Cost axes are logarithmic. The energy reference at 10 mJ represents an illustrative 1 mW allocation for one score every 10 s. Configurations in the shaded region beyond the 10 s latency line cannot sustain sequential processing of one window every 10 s.
Figure 3: Experiment 1: mean detection AUC evaluated on the PC against estimated neural network energy (top) and latency (bottom) per score for NPU execution. Costs include CPU operations retained within the deployed graphs. Error bars show one standard deviation across five training seeds. Point selection, logarithmic cost axes, and the 10 mJ and 10 s references follow Fig. 2 . The shaded region again identifies configurations too slow for sequential processing of one window every 10 s.
Method
1 mJ
10 mJ
100 mJ
Unconstrained
Deep SVDD
0.6893 ± 0.0075
0.7183 ± 0.0092
0.7206 ± 0.0090
0.7206 ± 0.0090
AE
0.6557 ± 0.0039
0.6600 ± 0.0008
0.6602 ± 0.0008
0.6602 ± 0.0008
VAE
0.6414 ± 0.0069
0.6563 ± 0.0009
0.6563 ± 0.0009
0.6563 ± 0.0009
MAD
–
–
–
0.7324 ± 0.0023
NF
0.6375 ± 0.0196
0.7119 ± 0.0011
0.7119 ± 0.0011
0.7119 ± 0.0011
MC-Dropout
–
–
0.7025 ± 0.0045
0.7056 ± 0.0042
Table 2: Best mean AUC ± propagated SD across the four PTB-XL disease scenarios under a per-score energy limit for CPU execution. Selection includes float32 and int8 deployments. Each scenario contributes its highest feasible mean AUC with equal weight and must separately satisfy the budget. The propagated SD describes training variability for fixed configurations, not the standard error of the mean. Bold identifies the highest displayed mean per column, without implying statistical significance. A dash indicates an absent feasible configuration in at least one scenario.
Method
1 mJ
10 mJ
100 mJ
Unconstrained
Deep SVDD
0.6997 ± 0.0059
0.6997 ± 0.0059
0.6997 ± 0.0059
0.6997 ± 0.0059
AE
0.6559 ± 0.0039
0.6602 ± 0.0008
0.6602 ± 0.0008
0.6602 ± 0.0008
VAE
0.6465 ± 0.0065
0.6563 ± 0.0009
0.6563 ± 0.0009
0.6563 ± 0.0009
MAD
–
–
–
0.7324 ± 0.0023
NF
0.6730 ± 0.0122
0.6730 ± 0.0122
0.6730 ± 0.0122
0.6730 ± 0.0122
MC-Dropout
–
0.7025 ± 0.0045
0.7025 ± 0.0045
0.7025 ± 0.0045
Table 3: Best mean AUC ± propagated SD across the four PTB-XL disease scenarios under a per-score energy limit for NPU execution. Selection uses int8 deployments. Each scenario contributes its highest feasible mean AUC with equal weight and must separately satisfy the budget. The propagated SD describes training variability for fixed configurations, not the standard error of the mean. Bold identifies the highest displayed mean per column, without implying statistical significance. A dash indicates an absent feasible configuration in at least one scenario.
Figure 4: Experiment 2 with CPU execution costs and classifier width w=0.25 . The upper row shows custom accuracy evaluated on the PC, and the lower row shows estimated neural network energy per incoming window on a logarithmic scale. Columns identify the withheld disease class. Shading indicates one standard deviation across five training seeds. In both rows, markers identify each method’s maximum mean custom accuracy. Their energy values therefore refer to the same operating points as their accuracy values.
Scenario
Method
A∗ (%)
r∗ (%)
E∗ (mJ/input)
E∗/A∗ (mJ/correct)
HYP
Two-stage system
64.98 ± 0.86
22.0
6.99 ± 0.06
10.75 ± 0.17
MC-Dropout
60.06 ± 1.20
28.5
52.53 ± 0.96
87.46 ± 2.37
DE
62.98 ± 1.28
26.5
17.51 ± 0.32
27.80 ± 0.76
CD
Two-stage system
65.10 ± 1.09
28.0
6.76 ± 0.05
10.39 ± 0.19
MC-Dropout
60.92 ± 1.54
35.0
52.53 ± 0.96
86.23 ± 2.69
DE
63.34 ± 0.79
37.0
17.51 ± 0.32
27.65 ± 0.61
Table 4: Accuracy evaluated on the PC and estimated CPU energy costs at w=0.25 and each method’s oracle accuracy peak, selected from the test-set rejection sweep. A∗ is mean custom accuracy ± SD across five training seeds, and r∗ is the rejected fraction. E∗ (energy per input) and E∗/A∗ (energy per correct decision) show estimates ± propagated dispersion. The latter includes accuracy variability. Bold identifies the highest accuracy and lowest costs per scenario, without implying statistical significance.
Figure 5: Experiment 2 with CPU execution costs and classifier width w=1.0 , using the same filter configurations as in Fig. 4 . Accuracy, shading, and peak markers follow the same conventions. The wider classifier increases both accepted-window classification cost and the cost of repeated UQ evaluations. All UQ configurations shown exceed 10 s of graph execution per input on the CPU.
Setting
Method
HYP (J)
CD (J)
STTC (J)
MI (J)
CPU, w=0.25
Two-stage system
60.4 ± 0.5
58.4 ± 0.4
46.9 ± 0.4
16.6 ± 0.3
MC-Dropout
453.9 ± 8.3
453.9 ± 8.3
453.9 ± 8.3
453.9 ± 8.3
DE
151.3 ± 2.8
151.3 ± 2.8
75.6 ± 1.4
75.6 ± 1.4
CPU, w=1
Two-stage system
172.2 ± 0.8
158.5 ± 0.7
159.1 ± 0.7
109.1 ± 0.6
MC-Dropout
3171.1 ± 16.3 †
4756.7 ± 24.5 †
4756.7 ± 24.5 †
3171.1 ± 16.3 †
DE
1585.6 ± 8.2 †
1585.6 ± 8.2 †
1585.6 ± 8.2 †
792.8 ± 4.1 †
Table 5: Extrapolated neural network energy in joules for 8,640 input windows at each method’s own maximum mean custom accuracy. Both per-input energy and its propagated dispersion are multiplied by 8,640. The resulting ± values describe dispersion attached to the extrapolation, not measured day-to-day variability. The workload corresponds to ten-second windows arriving every 10 s for one day. Bold identifies the lowest estimated energy within each hardware setting and scenario. Other wearable-system energy costs are excluded.
Appendix figures & tables3 assets
Supplementary material from the paper’s appendix.
Appendix
Width w
Scenario
Parameters
K
p
M
0.25
HYP
89,344
30
0.5
10
CD
89,344
30
0.3
10
STTC
140,672
30
0.3
5
MI
15,360
30
0.5
5
1
HYP
89,344
20
0.3
10
CD
89,344
30
0.5
10
Appendix
Table A.1: Selected Experiment 2 configurations, shared between CPU and NPU deployments. The Parameters column gives the Deep SVDD parameter count. K and p are the number of MC-Dropout evaluations and dropout probability. M is the number of ensemble members. Configurations were selected using Experiment 1 test results.
Figure A.1: Experiment 2 with NPU execution costs and classifier width w=0.25 . The upper row shows mean custom accuracy evaluated on the PC with one standard deviation across five training seeds. The lower row shows estimated neural network energy per incoming window, including CPU operations retained within the deployed graphs. Markers identify each method’s accuracy peak in both rows.
Figure A.2: Experiment 2 with NPU execution costs and classifier width w=1.0 . Plot conventions match Fig. A.1 . The filter configurations are unchanged, while the larger classifier increases the classification and UQ costs.
School of Engineering and Applied Science, University of Pennsylvania, Philadelphia, PA 19104, USA · VinUni–Illinois Smart Health Center, VinUniversity, Hanoi 100000, Vietnam · College of Engineering and Computer Science, VinUniversity, Hanoi 100000, Vietnam