Skip to content

Releases: securefederatedai/openfl

v1.6

04 Oct 20:47
ad53a0f
Compare
Choose a tag to compare

We are excited to announce the release of OpenFL 1.6! This release brings the following changes.

New Features and APIs:

  • Federated LLM fine-tuning:

    • Horovod: Use horovod to efficiently train LLMs across multiple private clusters
    • Neuralchat-7b fine-tuning: Learn how to fine-tune neuralchat-7b using the Intel® Extension for Transformers and the workflow interface.
  • Workflow API enhancements: Introducing an experimental Workspace Export feature that can be used to transform a Workflow API-based FL experiment into the TaskRunner API format for running in a distributed deployment. There is also groundwork laid for a future FederatedRuntime implementation for Workflow API, in addition to the currently supported LocalRuntime.

  • Federated Evaluation: Federated evaluation allows for the assessment of ML models in a federated learning system by validating the model's performance locally on decentralized collaborator nodes, and then aggregating these metrics to gauge overall effectiveness, without compromising data privacy and security. FE is now officially supported by OpenFL, including example tutorials on how to use this new feature (via TaskRunner API).

  • Expanded AI Accelerator Support: Intel® Data Center GPU Max Series support via the Intel® Extension for PyTorch, including examples for training on datasets such as MNIST (via Workflow API) and TinyImageNet (via Interactive API)

  • Improved straggler collaborator handling: Improvements and bug fixes to aggregator’s fault-tolerance when collaborators stop responding or drop out of a federation. Introducing a cut-off timer-based policy and enabling other policies to be plugged-in. This capability is particularly relevant for large or geo-distributed federations.

  • fx CLI Improvements: We have separated the CLI commands are separated for creating a collaborator from the certificate request generation, for offering improved control of the participant setup workflow.

Highlighting Community Research

  • Mitigating backdoor attacks in FL - Workflow API example contributed by @perieger (TU Darmstadt) demonstrates how Crowdguard can be used to leverage clients' feedback on individual models, analyze the behavior of neurons in hidden layers, and eliminate poisoned models through an iterative pruning scheme.

Enhanced Documentation:

  • Quickstart Tutorial: An updated TaskRunner API quickstart tutorial makes it easier for newcomers to get up and running with built-in workspaces or custom code.
  • FL Plan Description Documentation: There is now a detailed FL plan description in the to our documentation to help users better understand and configure the federated learning process.

New Contributors

Thank you and welcome to our 30 first time contributors In OpenFL 1.6!

@ptizzza, @grib0ed0v, @joedevon, @akantak, @wangleflex, @fangxiaoran, @danhe1, @bjklemme-intel, @fstrr, @KeertiX, @porteratzo, @amitport, @ashahba, @andreazanetti, @GabrieleRoncolato, @orionsBeltWest, @sbakas, @perieger, @manuelhsantana, @Hmikihiro, @VukW, @aryanxk02, @pboushy, @ParthMandaliya, @yanmxa, @tonywjs, @theakshaypant, @ishaileshpant, @rajithkrishnegowda, @teoparvanov

Full Changelog: v1.5...v1.6

v1.5.1

24 Oct 00:16
Compare
Choose a tag to compare

We are excited to announce the release of OpenFL 1.5.1 - our first since moving to LF AI & Data! This release brings the following changes.

Highlights

What's Changed

New Contributors

Full Changelog: v1.5...v1.5.1

v1.5

25 Jan 22:56
e099e28
Compare
Choose a tag to compare

Highlights

We are excited to announce the release of OpenFL 1.5! This release brings the following changes:

  • New Workflows Interface (Experimental) - a new way of composing federated learning experiments inspired by Metaflow. Enables the creation of custom aggregator and collaborators tasks. This initial release is intended for simulation on a single node (using the LocalRuntime); distributed execution (FederatedRuntime) to be enabled in a future release.
  • New use cases enabled by the workflow interface:
    • End-of-round validation with aggregator dataset
    • Privacy Meter - Privacy meter, based on state-of-the-art membership inference attacks, provides a tool to quantitatively audit data privacy in statistical and machine learning algorithms. The objective of a membership inference attack is to determine whether a given data record was in the training dataset of the target model. Measures of success (accuracy, area under the ROC curve, true positive rate at a given false positive rate ...) for particular membership inference attacks against a target model are used to estimate privacy loss for that model (how much information a target model leaks about its training data). Since stronger attacks may be possible, these measures serve as lower bounds of the actual privacy loss. The Privacy Meter workflow example generates privacy loss reports for all party's local model updates as well as the global models throughout all rounds of the FL training.
    • Vertical Federated Learning Examples
    • Federated Model Watermarking using the WAFFLE method
    • Differential Privacy – Global differentially private federated learning using Opacus library to achieve a differentially private result w.r.t the inclusion or exclusion of any collaborator in the training process. At each round, a subset of collaborators are selected using a Poisson distribution over all collaborators, the selected collaborators perform local training with periodic clipping of their model delta (with respect to the current global model) to bound their contribution to the average of local model updates. Gaussian noise is then added to the average of these local models at the aggregator. This example is implemented in two different but statistically equivalent ways – the lower level API utilizes RDPAccountant and DPDataloader Opacus objects to perform privacy accounting and collaborator selection respectively, whereas the higher level API uses PrivacyEngine Opacus object for collaborator selection and internally utilizes RDPAccountant for privacy accounting.
  • Habana Accelerator Support
  • Official support for Python 3.9 and 3.10
  • EDEN Compression Pipeline: Communication-Efficient and Robust Distributed Mean Estimation for Federated Learning (paper link)
  • FLAX Framework Support
  • Improvements to the resiliency and security of the director / envoy infrastructure:
    • Optional notification to plan participants to agree to experiment sent to their infrastructure
    • Improved resistance to loss of network connectivity and failure at various stages of execution
  • Windows Support (Experimental): Continuous Integration now tests OpenFL on Windows, but certain features may not work as expected. Full Windows support will be added in a future release.

Breaking Changes

  • Removal of Python 3.6 support due to numpy requirements
  • Removal of FastEstimator examples due to dependency package incompatibility with OpenFL

What's Changed

Read more

OpenFL 1.4

31 Aug 23:34
3a0d662
Compare
Choose a tag to compare

The OpenFL v1.4 release contains the following:

OpenFL 1.3

18 Mar 08:16
c2e8c0d
Compare
Choose a tag to compare

The OpenFL v1.3 release contains the following updates:

OpenFL 1.2.1

15 Dec 09:40
Compare
Choose a tag to compare

The OpenFL v1.2.1 release contains the following updates:

OpenFL 1.2

28 Oct 13:37
Compare
Choose a tag to compare

The OpenFL v1.2 release contains the following updates:

OpenFL 1.1

19 May 22:18
1f5d6e7
Compare
Choose a tag to compare

The OpenFL v1.1 release contains the following updates:

  • New Interactive Python API (experimental)
  • Example FedProx algorithm implementation for PyTorch and Tensorflow
  • AggregationFunctionInterface for custom aggregation functions
  • Adds a Keras-based NLP Example
  • Fixed lossy compression pipelines and added an example for usage
  • Bug fixes and documentation improvements

OpenFL 1.0.1

01 Mar 18:54
3645f8d
Compare
Choose a tag to compare

v1.0.1 is a patch release. It includes the following updates:

  • New docker CI tests
  • New Pytorch UNet Kvasir tutorial
  • Cleanup / fixes to other OpenFL tutorials
  • Fixed description for Pypi
  • Status/documentation/community badges for README.md

OpenFL 1.0

01 Feb 05:24
b41b9ff
Compare
Choose a tag to compare

This release includes:

  • The official open source release of OpenFL
  • Tensorflow 2.0 and PyTorch support
  • Examples for classification, segmentation, and adversarial training
  • No-install Docker and Singularity* deployments
  • Python native API intended for single node federated learning experiments
  • fx CLI for multi-node production deployments
  • Additional test coverage for OpenFL components

* Singularity supported via DockerHub integration: singularity shell docker://openfl:latest