An open-source Python framework for federated learning: you train one model across several sites while patient data stays where it is.
| Website | https://flower.ai |
| Source code | https:// |
| Developed by | Flower Labs, University of Oxford (origin) (2020) |
| Type | Software library: Python package |
| Lifecycle phase | Development |
| FUTURE-AI | Universality, Robustness |
| For | AI developers, Researchers |
| Facilitation | No facilitator needed |
| Skills needed | Python, a machine learning framework such as PyTorch |
| Cost | Free |
| Languages | English |
| Maturity | Established |
| Licence | Apache-2.0 |
What it is¶
With Flower you write a client app that trains on local data and a server app that combines the model updates, using a built-in strategy such as federated averaging or one you write yourself. It works with common machine learning libraries, including PyTorch, TensorFlow, scikit-learn, XGBoost and the medical imaging library MONAI. You can simulate a federation on one machine first and then deploy it across real sites. It also offers add-ons for differential privacy and secure aggregation, which reduce what the server can learn from a single site’s updates. Flower started as a research project at the University of Oxford and is now maintained by Flower Labs with an open community.
In healthcare¶
Federated learning suits multi-hospital projects where data-sharing agreements or the GDPR prevent pooling patient records. Note that federated training alone does not make a model private: model updates can still leak information, so combine it with differential privacy or secure aggregation and a security review.
Where to use it in The ELSA Way¶
Privacy and security › Privacy-preserving techniques: Flower implements federated learning with optional differential privacy and secure aggregation, which lets you measure the performance trade-offs this passage warns about.
References¶
Beutel DJ, Topal T, Mathur A, Qiu X, Fernandez-Marques J, Gao Y, et al. Flower: A Friendly Federated Learning Research Framework. arXiv preprint arXiv:2007.14390. 2020. Beutel et al. (2020)
Related tools¶
ARX: Free desktop software and Java library for anonymising structured personal data, with built-in checks of re-identification risk and of how much useful information remains.
MLflow: An open-source platform that records what went into each model run and keeps a versioned registry of trained models, which lets you trace any deployed model back to its code, data and settings.
- Beutel, D. J., Topal, T., Mathur, A., Qiu, X., Fernandez-Marques, J., Gao, Y., Sani, L., Li, K. H., Parcollet, T., de Gusmão, P. P. B., & Lane, N. D. (2020). Flower: A Friendly Federated Learning Research Framework. arXiv. 10.48550/ARXIV.2007.14390