TensorFlow Federated 0.15.0
Pre-release
Pre-release
Release 0.15.0
Major Features and Improvements
- Updated
tensorflow-addonspackage dependency to0.9.0. - Added API to expose the native backend more conveniently. See
tff.backends.native.*for more information. - Added a compiler argument to the
tff.framework.ExecutionContextAPI and
provided a compiler for the native execution environment, which improves
TFF’s default concurrency pattern. - Introduced a new
tff.templates.MeasuredProcessconcept, a specialization
oftff.templates.IterativeProcess. - Extends
tff.learninginterfaces to accepttff.templates.MeasuredProcess
objects for aggregation and broadcast computations. - Introduce new convenience method
tff.learning.weights_type_from_model. - Introduced the concept of a
tff.framework.FederatingStrategy, which
parameterizes thetff.framework.FederatingExecutorso that the
implementation of a specific intrinsic is easier to provide. - Reduced duplication in TFF’s generated ASTs.
- Enabled usage of GPUs on remote workers.
- Documentation improvements.
Breaking Changes
- The
IterativeProcessreturn from
tff.learning.build_federated_averaging_processand
tff.learning.build_federated_sgd_processnow zip the second tuple output
(the metrics) to change the result from a structure of federated values to
to a federated structure of values. - Removed
tff.framework.set_default_executorfunction, instead you should
use the more convenienttff.backends.native.set_local_execution_context
function or manually construct a context an set it using
tff.framework.set_default_context. - The
tff.Computationbase class now contains an abstract__hash__method,
to ensure compilation results can be cached. Any custom implementations of
this interface should be updated accordingly.
Bug Fixes
- Fixed issue for missing variable initialization for variables explicitly not
added to any collections. - Fixed issue where table initializers were not run if the
tff.tf_computationdecorated function used no variables.
Thanks to our Contributors
This release contains contributions from many people at Google, as well as:
jvmcns@