Privacy-preserving personalized health monitoring system using federated meta-learning on wearable device data.
This project combines Federated Learning and Meta-Learning to create a system that can generalize across multiple users while adapting rapidly to individual physiological patterns, all without sharing raw health data.
- Federated learning architecture with privacy preservation
- Meta-learning (MAML) for fast personalization
- Non-IID data partitioning across simulated clients
- Wearable device health data analysis
- Differential privacy integration
- Interactive visualization dashboard
- PyTorch 2.0+
- Flower (Federated Learning)
- learn2learn (Meta-Learning) ← We use learn2learn, NOT higher
- Opacus (Differential Privacy)
- TensorBoard (Training Visualization)
- Hugging Face Datasets
Note: This project specifically uses
learn2learnfor MAML implementation. If you encounter installation issues, seedocs/learn2learn_setup.md.
# Quick install (all dependencies)
pip install -r requirements.txt- Explore the dataset:
jupyter notebook notebooks/phase2_data_exploration.ipynb- Train federated model (Phase 3+):
python -m src.federated.server- Launch TensorBoard (Phase 4+):
tensorboard --logdir=results/tensorboardRun the consolidated test suite (recommended):
python -m test.run_all_tests
Or run pytest directly:
pytest
Most of this code (except for the machine learning modules) was rapidly prototyped and may lead to unexpected errors. Please check the CONTRIBUTING.md file for guidelines, and report any issues via the GitHub Issues tab.
Federated Meta Learning/
├── notebooks/ # Jupyter notebooks for analysis
├── src/
│ ├── data/ # Data loading and preprocessing
│ ├── models/ # Neural network architectures
│ ├── federated/ # Flower client/server
│ └── utils/ # Metrics and visualization
├── configs/ # Configuration files
└── results/ # Experiment outputs
Source: SahilBhatane/Federated_Meta-learning_on_wearable_devices (Hugging Face)
Specifications:
- 200 samples: 140 train, 60 test
- 4 users with heterogeneous health patterns
- Features: Heart Rate, Blood Pressure, Temperature, SpO2, Respiratory Rate, Battery
- Target: Health Status (Healthy/Unhealthy)
- Non-IID distribution by user (natural data heterogeneity)
See GUIDE.md for detailed setup and usage instructions.
See Planning.md for architecture and research documentation.
- Phase 1: Planning (done)
- Phase 2: Dataset & Foundation (done)
- Phase 3: Implementation (done) (63.26% accuracy achieved)
- Phase 4: Evaluation ← Currently working
- Phase 5: Optimization
GNU AFFERO GENERAL PUBLIC LICENSE