← Back to research
Under review · J. Biomedical Informatics

Federated Diabetes

Privacy-preserving federated learning for diabetes risk prediction, externally validated on 1.28 million BRFSS patients.

ProblemDiabetes risk models trained on one hospital's data often fail elsewhere — and privacy rules block pooling patient records to fix that.
ApproachTrain locally at each site, share only model updates, and compare four privacy-preserving ways of combining them.
ResultTested on 1.28 million people it never trained on, the federated model generalizes 40% better than one trained centrally.
SignificanceHospitals can collaborate on better risk models without ever sharing a patient record.
0.757External AUC (BRFSS)
1.28MExternal patients
0.001Calibration error (ECE)
40%Narrower generalization gap

The Problem

Clinical risk models trained centrally tend to fail on out-of-domain patients, and privacy constraints often prevent pooling raw records across institutions in the first place. The goal: a diabetes risk model trained without sharing data that still holds up on a population it never saw.

Approach

Demographically partitioned NHANES client nodes train locally; four aggregation strategies — FedAvg, FedProx, FedNova, SCAFFOLD — are compared over 50 rounds under non-IID participation, with a DP-SGD privacy sweep (Opacus) tracing the utility–privacy frontier and isotonic calibration repairing probability estimates.

Outcome

External validation on 1.28M BRFSS respondents reaches AUC 0.757 with ECE 0.001 after calibration — a generalization gap 40% narrower than centralized training, with utility recovered above ε≈10. Subgroup fairness is reported across demographic strata, and the full pipeline is reproducible end-to-end.

Methodology Pipeline

NHANES CLIENTS LOCAL DP-SGD FEDAGG REGIME BRFSS VALIDATION

Key Result

Centralized training

Wider generalization gap between training and real-world performance.

Federated training

40% narrower gap — without any site ever sharing a patient record.

Generalization gap, centralized vs. federated

↗ View on GitHub