PCA-Driven Adaptive Sensor Triage for Edge AI Inference
Organizations: Independent Researchers
Abstract
Multi-channel sensor networks in industrial IoT often exceed available bandwidth. We propose PCA-Triage, a streaming algorithm that converts incremental PCA loadings into proportional per-channel sampling rates under a bandwidth budget. PCA-Triage runs in O(wdk) time with zero trainable parameters (0.67 ms per decision). We evaluate on 7 benchmarks (8--82 channels) against 9 baselines. PCA-Triage is the best unsupervised method on 3 of 6 datasets at 50% bandwidth, winning 5 of 6 against every baseline with large effect sizes (r = 0.71--0.91). On TEP, it achieves F1 = 0.961 +/- 0.001 -- within 0.1% of full-data performance -- while maintaining F1 > 0.90 at 30% budget. Targeted extensions push F1 to 0.970. The algorithm is robust to packet loss and sensor noise (3.7--4.8% degradation under combined worst-case).
Figures & tables
| Static/Batch | Streaming/Adaptive | |
|---|---|---|
| Fixed Rules | Uniform, SoD | DSRA, AIMD |
| Data-Driven | Batch PCA, Offline FS | PCA-Triage (Ours) |
| Dataset | Domain | Ch. | Samples | Source |
|---|---|---|---|---|
| TEP | Chemical process | 52 | 250K | [ 3 ] |
| SMD | Server machines | 38 | 388K | [ 33 ] |
| MSL | Spacecraft telemetry | 55 | 132K | [ 34 ] |
| PSM | Server metrics | 25 | 220K | [ 35 ] |
| HAI | Industrial control | 82 | 259K | [ 36 ] |
| SKAB | Water circulation | 8 | 47K | Skoltech |
| PCA-T | Var | Thr | Uni | R.D. | |
|---|---|---|---|---|---|
| 10% | .908 | .909 | .914 | .920 | .460 |
| 20% | .915 | .912 | .917 | .918 | .591 |
| 30% | .924 | .917 | .920 | .918 | .675 |
| 40% | .943 | .927 | .935 | .919 | .732 |
| 50% | .961 | .948 | .958 | .924 | .788 |
| 60% | .963 | .959 | .966 | .927 | .820 |
| Method | TEP | SMD | PSM | MSL | HAI | SKAB |
|---|---|---|---|---|---|---|
| PCA-Triage | ||||||
| Variance | ||||||
| Threshold | ||||||
| Uniform | ||||||
| Random Dropout | ||||||
| Mutual Info † |
| Dataset | Classifier | PCA-T | Uniform | Variance | Full |
|---|---|---|---|---|---|
| TEP | RF | .962 | .920 | .946 | .961 |
| SVM | .960 | .902 | .933 | .963 | |
| KNN | .903 | .881 | .903 | .926 | |
| SMD | RF | .981 | .968 | .976 | .994 |
| SVM | .964 | .956 | .963 | .972 | |
| KNN | .973 | .964 | .971 | .990 |
| Fault | PCA-Triage | Variance | Threshold |
|---|---|---|---|
| IDV(1): A/C Feed | 19 | 0 | 19 |
| IDV(2): B Composition | 19 | 19 | 19 |
| IDV(4): Reactor CW | 19 | 19 | 19 |
| IDV(5): Condenser CW | 19 | 19 | 19 |
| Param | Value | F1 Mean | F1 Std |
|---|---|---|---|
| 3 | 0.962 | 0.003 | |
| 5 | 0.962 | 0.003 | |
| 8 | 0.962 | 0.002 | |
| 10 | 0.962 | 0.001 | |
| 15 | 0.955 | 0.002 | |
| 20 | 0.939 | 0.004 |
| Configuration | F1 | Std | F1 |
|---|---|---|---|
| Full PCA-Triage | 0.961 | 0.002 | — |
| No data-driven (Uniform) | 0.924 | 0.002 | 3.93% |
| No PCA (Variance) | 0.949 | 0.001 | 1.30% |
| No smoothing ( ) | 0.954 | 0.002 | 0.74% |
| Aggressive smooth ( ) | 0.954 | 0.002 | 0.77% |
| No proportional (Threshold) | 0.958 | 0.004 | 0.31% |
| Budget | Fwd-Fill | Linear | Zero |
|---|---|---|---|
| 10% | .910 | .928 (+1.8%) | .433 |
| 30% | .925 | .944 (+1.9%) | .574 |
| 50% | .962 | .968 (+0.7%) | .757 |
| 70% | .962 | .966 (+0.4%) | .930 |
| Method | ms (edge) | ms (laptop) | Peak MB | Coeff. ‡ |
|---|---|---|---|---|
| PCA-Triage | 0.67 | 1.46 | 8.5 | 520 |
| Uniform | 0.06 | 0.07 | 24.8 | 0 |
| Threshold | 0.16 | 0.75 | 8.1 | 0 |
| Variance | 0.15 | 0.70 | 8.1 | 0 |
| Random Dropout | 0.06 | 0.12 | 8.1 | 0 |
| Random Proj. | 0.18 | 0.70 | 8.2 | 9,600 |
| Fault | Type | PCA-T | Var | Thr | Full |
|---|---|---|---|---|---|
| IDV(1) | A/C feed step | .845 | .858 | .907 | .977 |
| IDV(2) | B comp. step | .814 | .867 | .908 | .970 |
| IDV(4) | Reactor CW step | .723 | .739 | .736 | .980 |
| IDV(5) | Condenser CW step | .774 | .722 | .797 | .975 |
| IDV(6) | A feed loss | .902 | .896 | .955 | .980 |
| IDV(7) | C header press. | .919 | .792 | .862 | .980 |
| PCA-T | Variance | Uniform | ||
|---|---|---|---|---|
| 0.00 | .795 | .852 | .057 | .852 |
| 0.20 | .764 | .847 | .084 | .839 |
| 0.40 | .765 | .840 | .076 | .834 |
| 0.60 | .762 | .837 | .075 | .829 |
| 0.80 | .759 | .832 | .073 | .828 |
| 0.95 | .761 | .830 | .069 | .821 |
| Config | F1 Mean | F1 Std |
|---|---|---|
| Fixed | .969 | .002 |
| Fixed | .968 | .003 |
| Fixed | .967 | .001 |
| Fixed | .964 | .002 |
| Fixed | .952 | .003 |
| Adaptive (90% var.) | .964 | .002 |
| Config | F1 Mean | F1 Std |
|---|---|---|
| Single | .968 | .003 |
| Single | .967 | .001 |
| Ensemble | .968 | .002 |
| Ensemble | .967 | .002 |
| Ensemble | .968 | .002 |
| Hybrid + sharpening | .970 | .001 |
| Dataset | Best Scorer | F1 | vs Hybrid PCA+Var |
|---|---|---|---|
| TEP | Hybrid PCA+Var | .970 | — |
| SMD | Hybrid PCA+Var | .987 | — |
| MSL | All tied | .919 | 0 |
| PSM | Hybrid PCA+Var | .965 | — |
| HAI | Fixed | 1.000 | 0.0004 |
| SKAB | Fixed | .562 | 0.013 |
| Dataset | PCA-T | LSTM-Attn | Tfm-Attn | Params |
|---|---|---|---|---|
| TEP | .623 | .631 | 14K / 12K | |
| SMD | .961 | .964 | 12K / 12K | |
| MSL | .914 | .914 | 15K / 12K | |
| PSM | .886 | .884 | 9K / 12K | |
| HAI | .998 | .998 | 20K / 12K | |
| SKAB | .503 | .502 | 6K / 12K |
| Condition | TEP | SMD | PSM |
|---|---|---|---|
| Clean (baseline) | .972 | .987 | .968 |
| Jitter | .901 | .966 | .932 |
| Packet loss 5% | .972 | .987 | .968 |
| Packet loss 10% | .972 | .987 | .968 |
| Noise | .966 | .986 | .968 |
| Noise | .889 | .967 | .925 |
| Method | TEP | SMD | PSM |
|---|---|---|---|
| PCA-Triage (spatial) | .972 | .987 | .968 |
| Send-on-Delta ( ) | .962 | .993 | .997 |
| Joint PCA+SoD ( ) | .964 | .990 | .974 |
| OGD (regret-optimal) | .934 | .976 | .921 |
| Variance | .950 | .978 | .910 |
| Uniform | .922 | — | .898 |
| Method | Mean Rank |
|---|---|
| PCA-Triage | 1.50 |
| Threshold | 2.83 |
| Variance | 3.00 |
| Random Dropout | 3.50 |
| Uniform | 4.17 |
| Threshold | Variance | Uniform | Rand. Drop | |
|---|---|---|---|---|
| (raw) | .016 | .031 | .047 | .078 |
| Holm sig. | n.s. | n.s. | n.s. | n.s. |
| W / L / T | 6/0/0 | 5/1/0 | 5/1/0 | 5/1/0 |
| Effect | 1.00 | 0.91 | 0.81 | 0.71 |
| Budget | F1 | F1 | BW Saved | MB/hr Saved |
|---|---|---|---|---|
| 10% | 0.908 | 5.3% | 90% | 0.64 |
| 30% | 0.924 | 3.7% | 70% | 0.50 |
| 50% | 0.961 | 0.0% | 50% | 0.36 |
| 70% | 0.963 | 0.2% | 30% | 0.21 |
| 90% | 0.963 | 0.2% | 10% | 0.07 |
Adaptive Sampling
Adaptive sampling allocates limited data, measurements, or computation where they are expected to be most useful.
See all 202 papers