Ethical Fairness in Ubiquitous Health Sensing without Known Attributes
Organizations: Ira A. Fulton Schools of Engineering, Arizona State University, Tempe, Arizona, USA · Information Science, Cornell University, New York, New York, USA · University of Michigan, Ann Arbor, Michigan, USA · Cornell University, Ithaca, New York, USA
Abstract
In ubiquitous and mobile health systems, computational models infer human states from wearable, behavioral, and physiological sensing data. In these settings, high accuracy alone is insufficient; models must act ethically and equitably across diverse people, contexts, and devices. However, fairness methods that rely on demographic or heterogeneous attributes during training are difficult to enforce because such attributes are often unavailable, privacy-sensitive, regulated, or undesirable to collect. Conventional parity-based fairness can also violate ethical principles by trading off subgroup performance. To address this challenge, we present Flare, Fisher-guided LAtent-subgroup learning with do-no-harm REgularization, a demographic- and heterogeneous-attribute-agnostic framework that aligns human-centered fairness with ethical principles for ubiquitous and mobile sensing. Flare leverages optimization geometry, particularly Fisher Information, to regularize curvature and uncover latent disparities in model behavior without demographic or heterogeneous attributes. By integrating representation, loss, and curvature signals, it identifies hidden performance strata and refines them through collaborative but do-no-harm optimization, enhancing subgroup performance while preserving ethical balance. We also introduce BHE (Beneficence-Harm Avoidance-Equity), a metric suite that operationalizes ethical fairness beyond statistical parity. Across mobile physiological, behavioral, and clinical sensing datasets, including EDA, OhioT1DM, IHS, and Percept-R, Flare improves ethical fairness over state-of-the-art baselines. Ablation, interpretability, and loss-landscape analyses show that these gains arise from flatter optimization geometry, simpler decision rules, and do-no-harm latent-subgroup adaptation. Runtime analysis supports the practicality of Flare for resource-constrained sensing deployments.
Figures & tables
| Dataset | Demographic attributes | Heterogeneous attributes |
| OhioT1DM ( 74 ) | Age; Sex | Cohort; Pump; Sensor Band |
| EDA ( 118 ) | Sex | Group_label |
| IHS ( 2 ) | Sex; Age; Ethnicity | Specialty; PHQ10 0 |
| Percept-R ( 13 ) | Sex; Age(months); Race; Ethnicity | Not available |
| Sensitive Attribute | Baseline (%) | Fair-EO (%) | Fair-DP (%) | Flare (%) |
| OhioT1DM Dataset | ||||
| Age | 70.69 2.79 | 69.16 2.85 | 70.38 5.09 | 74.36 1.89 |
| Cohort | 68.12 1.51 | 66.96 2.52 | 68.41 1.79 | 72.91 0.66 |
| Sex | 68.25 2.93 | 67.31 1.94 | 68.67 0.73 | 72.72 2.05 |
| Pump | 69.97 1.74 | 68.20 0.66 | 68.13 1.77 | 73.62 0.64 |
| Sensor Band | 68.12 1.51 | 66.96 2.52 | 68.41 1.79 | 72.91 0.66 |
| Sensitive Attribute | Fair-EO (%) | Fair-DP (%) | Flare (%) | ||||||
| OhioT1DM Dataset | |||||||||
| Age | |||||||||
| Cohort | |||||||||
| Sex | |||||||||
| Pump | |||||||||
| Dataset | Sensitive Attribute | Benign Baseline (%) | KD (%) | ARL (%) | Reckoner (%) | GOG (%) | Flare (%) |
| OhioT1DM | Age | 70.69 2.79 | 65.01 2.44 | 70.16 0.57 | 66.42 2.21 | 59.12 2.67 | 74.36 1.89 |
| Cohort | 68.12 1.51 | 67.33 0.37 | 70.46 0.67 | 67.57 0.96 | 63.50 1.11 | 72.91 0.66 | |
| Sex | 68.25 2.93 | 69.08 2.50 | 70.71 0.20 | 68.51 2.12 | 69.09 2.64 | 72.72 2.05 | |
| Pump | 69.97 1.74 | 60.66 2.81 | 65.80 0.97 | 61.74 1.23 | 68.01 1.99 | 73.62 0.64 | |
| Sensor Band | 68.12 1.51 | 67.33 0.78 | 70.46 3.67 | 67.57 0.96 | 65.00 1.11 | 72.91 0.66 | |
| EDA | Group_label | 86.91 4.47 | 69.20 2.41 | 87.61 3.34 | 85.55 3.68 | 87.03 4.58 | 89.08 3.91 |
| Dataset | Sensitive Attribute | ARL (%) | KD (%) | Reckoner (%) | GoG (%) | Flare (%) | ||||||||||
| OhioT1DM | Age | -0.54 | -7.92 | 2.22 | -5.68 | -15.99 | 0.35 | -4.28 | -13.84 | 0.58 | -11.58 | -27.06 | 0.12 | 3.67 | 5.75 | 0.90 |
| Cohort | 2.34 | -0.10 | 0.84 | -0.79 | -5.44 | -1.87 | -0.54 | -5.05 | 0.55 | -4.62 | -12.30 | 0.40 | 4.79 | 4.47 | 0.85 | |
| Sex | 2.46 | 3.25 | 2.73 | 0.84 | 1.00 | 0.43 | 0.26 | -1.29 | 0.81 | 0.85 | 1.05 | 0.29 | 4.48 | 3.96 | 0.88 | |
| Pump | -4.17 | -9.26 | 0.78 | -9.31 | -17.33 | -1.07 | -8.23 | -15.18 | 0.51 | -1.95 | -4.24 | -0.25 | 3.66 | 4.95 | 1.11 | |
| Sensor Band | 2.34 | -0.10 | -2.16 | -0.79 | -5.44 | 0.73 | -0.54 | -5.05 | 0.55 | -3.12 | -12.30 | 0.40 | 4.79 | 4.47 | 0.85 | |
| Individual (Sex-Pump) | True Label | Predicted Label | BpT: all fired rules | Flare : all fired rules | Cluster |
| Male-530G | 0 | BpT: 1 Flare: 0 | Predicts 1 if: (1) 3hG ; w=1.000 . (2) Meal & Work ; w=0.277 . (3) 3hG ; w=0.155 . (4) Work & 3hG ; w=0.118 . Predicts 0 if: (1) Bolus & 3hG ; w=0.256. (2) TSB , Bolus & Meal ; w=0.253. (3) 3hG ; w=0.115. (4) Work ; w=0.056. | Predicts 0 if: (1) Meal ; w=0.198 . (2) Work & Bolus & Basal ; w=0.148 . (3) Work & Meal ; w=0.125 . Predicts 1 if: (1) Work & 3hG ; w=0.339. | 0 |
| 1 | BpT: 1 Flare: 1 | Predicts 1 if: (1) 3hG & TSB ; w=0.711 . (2) Meal & TSB ; w=0.597 . (3) TSB ; w=0.3348 . (4) 3hG & Meal ; w=0.0317 . (5) Bolus & Basal ; w=0.0213 . Predicts 0 if: (1) Meal ; w=0.340. | Predicts 1 if: (1) 3hG ; w=1.000 . Predicts 0 if: (1) Basal ; w=0.50. | 2 |
| Sensitive Attribute | n=1 (%) | n=2 (%) | n=3 (%) | n=4 (%) | Flare (%) | ||||||||||
| Age | -9.25 | 0.50 | -3.79 | 0.38 | -1.58 | -1.33 | -1.48 | -12.23 | -7.90 | 5.56 | 3.17 | 0.71 | 3.67 | 5.75 | 0.90 |
| Cohort | -4.64 | -9.04 | -7.93 | 4.44 | 1.09 | -2.00 | 2.96 | 0.42 | -1.19 | 6.09 | 3.65 | -2.41 | 4.79 | 4.47 | 0.85 |
| Sex | -3.85 | -4.81 | 0.26 | 4.66 | 5.28 | -0.11 | 3.15 | 3.61 | 2.46 | 5.01 | 3.15 | -0.86 | 4.48 | 3.96 | 0.88 |
| Pump | -14.82 | 1.84 | -4.90 | -0.10 | -2.92 | -2.82 | -5.60 | -13.57 | -7.97 | 6.02 | 2.33 | -0.31 | 3.66 | 4.95 | 1.11 |
| Sensor Band | -4.64 | -9.04 | -4.92 | 4.44 | 1.09 | -2.00 | 2.96 | 0.42 | -1.19 | 6.09 | 3.65 | -2.41 | 4.79 | 4.47 | 0.85 |
| Dataset | Sensitive Attribute | BpT-w Fisher (%) | BpT-wo Fisher (%) | CAA-wo Fisher (%) | Flare (%) | ||||||||
| OhioT1DM | Age | -9.25 | 0.50 | -3.79 | -1.24 | -2.07 | -1.82 | 1.86 | -1.40 | -3.78 | 3.67 | 5.75 | 0.90 |
| Cohort | -4.64 | -9.04 | -7.93 | 0.97 | -0.43 | -0.69 | 0.28 | -0.49 | -2.06 | 4.79 | 4.47 | 0.85 | |
| Sex | -3.85 | -4.81 | 0.26 | 0.68 | -4.53 | -12.37 | -0.47 | -2.06 | -1.05 | 4.48 | 3.96 | 0.88 | |
| Pump | -14.82 | 1.84 | -4.90 | -9.48 | -3.41 | -2.05 | 0.13 | -0.74 | 0.83 | 3.66 | 4.95 | 1.11 | |
| Sensor Band | -4.64 | -9.04 | -4.92 | 0.97 | -0.43 | -0.69 | -0.28 | 2.49 | -1.06 | 4.79 | 4.47 | 0.85 | |
| Phase | Flare pipeline stage | AMD CPU | NVIDIA GPU | Spark CPU | Spark GPU | Apple M4 | Google Pixel 6 | Raspberry Pi |
| Training | Pre-training stage | 0.211 | 0.338 | 0.308 | 0.596 | 0.157 | 1.456 | 1.714 |
| Training | Cluster fitting stage | 5.416 | 5.630 | 6.365 | 5.769 | 11.472 | 10.815 | 17.691 |
| Training | Training cluster assignment | 0.012 | 0.013 | 0.014 | 0.013 | 0.015 | 0.014 | 0.012 |
| Training | Adaptation for Cluster 1 | 0.382 | 0.733 | 0.554 | 0.904 | 0.299 | 3.471 | 3.093 |
| Training | Adaptation for Cluster 2 | 0.348 | 0.672 | 0.542 | 0.739 | 0.245 | 3.449 | 3.126 |
| Inference | Inference cluster assignment | 2.360 | 2.387 | 2.870 | 2.881 | 2.023 | 4.476 | 10.338 |
Appendix figures & tables13 assets
Supplementary material from the paper’s appendix.
Appendix
| Dataset | Participants | Features | Samples | Task | Model (Encoder–Classifier) |
| OhioT1DM ( 74 ) | 11 | 7 | 8307 | Glucose (binary) | input–256–128–64–32 / 32–8–2 |
| IHS ( 2 ) | 85 | 18 | 2315 | Mood (binary) | input–128–64–32 / 32–16–8–2 |
| EDA ( 118 ) | 76 | 340 | 5497 | Stress (binary) | input–128 / 128–64–64–2 |
| Percept-R ( 13 ) | 76 | (60,5) | 32852 | Speech correctness (binary) | input–52–32–32–2 / 52–32–2 |
| Stage 1 | Step 3 | |||||
| Frozen Layers | ||||||
| IHS | 0.497 | 0.0259 | 0.568 | 4 | ||
| Ohio | 0.74 | 0.919 | 0.614 | 9 | ||
| EDA | 0.76 | 0.79 | 0.690 | 8 | ||
| Percept-R | 0.3 | 0.7 | 0.7 | 3 | ||
| Percept-R | EDA | |||||
| Metric | LSTM | MLP | CNN | LSTM | CNN | MLP |
| Accuracy | 0.7639 | 0.7665 | 0.7789 | 0.6445 | 0.8529 | 0.8676 |
| F1-score | 0.7737 | 0.7665 | 0.7777 | 0.6418 | 0.8512 | 0.8692 |
| Recall | 0.7839 | 0.7865 | 0.7989 | 0.6445 | 0.8529 | 0.8676 |
| AUC | 0.7777 | 0.8485 | 0.8520 | 0.6617 | 0.9025 | 0.9223 |
| Ohio | IHS | |||||
| Sensitive Attribute | Subgroup | Baseline F1 | KD F1 | ARL F1 | Reckoner F1 | GOG F1 | Flare F1 |
| OhioT1DM Dataset | |||||||
| Sex | Female | 0.6839 | 0.6985 | 0.7085 | 0.7136 | 0.6882 | 0.7127 |
| Male | 0.6119 | 0.6631 | 0.7057 | 0.6937 | 0.6137 | 0.7417 | |
| Age | 20-40 | 0.3942 | 0.5089 | 0.5896 | 0.6922 | 0.3983 | 0.7407 |
| 40-60 | 0.6723 | 0.6976 | 0.7121 | 0.6931 | 0.6776 | 0.7263 | |
| 60-80 | 0.7103 | 0.7437 | 0.8030 | 0.7815 | 0.6976 | 0.7638 | |
| Sensitive Attribute | Subgroup | Baseline F1 | KD F1 | ARL F1 | Reckoner F1 | GOG F1 | Flare F1 |
| Sex | Male | 0.5975 | 0.5694 | 0.6203 | 0.5764 | 0.5857 | 0.6247 |
| Female | 0.5957 | 0.5910 | 0.6324 | 0.5673 | 0.6128 | 0.6418 | |
| Age | 23 | 0.8151 | 0.5884 | 0.8182 | 0.7273 | 0.4969 | 0.9091 |
| 24 | 0.3194 | 0.2941 | 0.4158 | 0.3678 | 0.3529 | 0.4436 | |
| 25 | 0.5872 | 0.5772 | 0.5901 | 0.6101 | 0.5756 | 0.6033 | |
| 26 | 0.6515 | 0.6071 | 0.6588 | 0.5803 | 0.6635 | 0.6915 |
| Sensitive Attribute | Subgroup | Baseline F1 | KD F1 | ARL F1 | Reckoner F1 | GOG F1 | Flare F1 |
| Sex | Male | 0.7638 | 0.7648 | 0.7611 | 0.7488 | 0.7639 | 0.7868 |
| Female | 0.7817 | 0.7837 | 0.7637 | 0.7304 | 0.7890 | 0.8248 | |
| Age (months) | 100 | 0.7033 | 0.7445 | 0.6677 | 0.6515 | 0.7187 | 0.8007 |
| 101-130 | 0.7574 | 0.7584 | 0.7523 | 0.7334 | 0.7545 | 0.7969 | |
| 131-160 | 0.8198 | 0.8005 | 0.8083 | 0.7851 | 0.8100 | 0.8141 | |
| 160 | 0.8370 | 0.8360 | 0.8374 | 0.8379 | 0.8408 | 0.8593 |
| Phase | Flare Pipeline Stage | AMD CPU | NVIDIA GPU | Spark CPU | Spark GPU | Apple M4 | Google Pixel 6 | Raspberry Pi | |||||||
| Util. | RSS | Util. | RSS | Util. | RSS | Util. | RSS | Util. | RSS | Util. | RSS | Util. | RSS | ||
| Training | Pre-training stage | 3.17 | 555.4 | 77.09 | 1022.4 | 4.99 | 488.4 | 7.56 | 1458.1 | 9.64 | 306.5 | 12.40 | 326.4 | 25.10 | 416.9 |
| Training | Cluster fitting stage | 3.13 | 995.0 | 42.97 | 1622.9 | 5.03 | 955.8 | 1.40 | 2069.8 | 4.64 | 716.3 | 12.41 | 605.1 | 24.44 | 762.3 |
| Training | Training cluster assignment | 0.00 | 982.5 | 40.00 | 1608.8 | 0.00 | 936.2 | 0.00 | 2060.4 | 0.07 | 716.3 | 0.00 | 512.3 | 0.00 | 747.1 |
| Training | Adaptation for Cluster 1 | 2.56 | 1009.7 | 43.00 | 1648.6 | 4.84 | 956.7 | 0.00 | 2155.3 | 8.48 | 680.0 | 12.17 | 513.6 | 24.60 | 767.8 |
| Training | Adaptation for Cluster 2 | 3.08 | 1009.8 | 84.38 | 1648.6 | 4.85 | 956.7 | 0.00 | 2155.3 | 9.29 | 680.6 | 12.34 | 515.4 | 24.90 | 769.3 |
| Sex | Pump | True Label | BpT Rules | Flare Rules | Cluster |
| Female | 630G | 0 | Predicts 0: fires when Meal , 3hG and Work ; weight 0.148. Predicts 0: fires when TSB and Bolus ; weight 0.249. Predicts 0: fires when 3hG ; weight 0.096. Predicts 1: fires when Work and TSB and Meal ; weight 0.398 . Predicts 1: fires when Bolus and Meal and TSB ; weight 0.291 . Predicts 1: fires when Meal and Work ; weight 0.277 . Predicts 1: fires when Bolus ; weight 0.172 . | Predicts 0: fires when Work and Bolus and Basal ; weight 0.262 . Predicts 0: fires when TSB ; weight 0.144 . Predicts 0: fires when Work and Meal ; weight 0.125 . Predicts 0: fires when Bolus ; weight 0.101 . Predicts 0: fires when 3hG ; weight 0.092 . Predicts 1: fires when TSB ; weight 0.0645. | 0 |
| Male | 530G | 0 | Predicts 0: fires when Bolus and TSB ; weight 0.082. Predicts 0: fires when 3hG ; weight 0.0018. Predicts 1: fires when TSB ; weight 0.3348 . Predicts 1: fires when 3hG and Work and Bolus ; weight 0.201 . Predicts 1: fires when Meal and Bolus ; weight 0.173 . Predicts 1: fires when 3hG and Meal ; weight 0.0317 . Predicts 1: fires when Meal ; weight 0.0152 . | Predicts 0: fires when Basal ; weight 0.50 . | 1 |
| Female | 630G | 1 | Predicts 0: fires when Meal ; weight 0.940 . Predicts 1: fires when 3hG and TSB ;weight 0.511. Predicts 1: fires when Meal and TSB ; weight 0.097. Predicts 1: fires when TSB ; weight 0.035. Predicts 1: fires when 3hG and Meal ; weight 0.032. Predicts 1: fires when Bolus and Basal ; weight 0.021. | Predicts 0: fires when Basal ; weight 0.50. Predicts 1: fires when 3hG ; weight 1.000 . | 1 |
| Male | 530G | 0 | Predicts 0: fires when Bolus and TSB ; weight 0.082. Predicts 0: fires when 3hG ; weight 0.002. Predicts 1: fires when Meal ; weight 0.238 . Predicts 1: fires when 3hG , Work , Bolus ; weight 0.201 . Predicts 1: fires when Meal , Bolus ; weight 0.173 . Predicts 1: fires when 3hG and Meal ; weight 0.032 . Predicts 1: fires when Meal ; weight 0.015 . | Predicts 0: fires when Basal ; weight 0.50 . | 2 |
| Female | 530G | 1 | Predicts 0: fires when Basal , TSB , 3hG ; weight 0.404 . Predicts 0: fires when TSB and Bolus ; weight 0.374 . Predicts 0: fires when 3hG ; weight 0.002 . Predicts 1: fires when 3hG and Meal ; weight 0.032. Predicts 1: fires when Meal ; weight 0.015. | Predicts 0: fires when TSB ; weight 1.0. Predicts 1: fires when TSB ; weight 1.0 . Predicts 1: fires when 3hG ; weight 1.0 . Predicts 1: fires when Basal ; weight 0.50 . | 2 |
| Sensitive Attribute | n=1 (%) | n=2 (%) | n=3 (%) | n=4 (%) | Flare (%) | ||||||||||
| EDA Dataset | |||||||||||||||
| Group_label | 1.50 | -0.51 | 2.13 | 1.78 | 0.67 | -1.31 | -0.22 | 1.48 | -1.47 | 0.69 | 0.48 | -0.01 | 2.16 | 0.70 | 0.57 |
| Sex | 1.49 | -0.13 | 0.31 | 0.93 | -0.90 | -1.73 | 1.67 | -0.62 | -2.92 | 0.89 | -0.70 | -1.61 | 2.55 | 0.68 | 0.06 |
| Mean | 1.49 | -0.32 | 1.22 | 1.35 | -0.11 | -1.52 | 0.72 | 0.43 | -2.20 | 0.79 | -0.11 | -0.81 | 2.36 | 0.69 | 0.31 |
| IHS Dataset | |||||||||||||||
Algorithmic Fairness
Algorithmic fairness studies how automated decisions distribute errors, opportunities, and harms across groups, and how to measure and reduce disparities.
See all 419 papers