Skip to content

Releases: google-parfait/tensorflow-federated

TensorFlow Federated 0.49.0

14 Feb 16:21
Compare
Choose a tag to compare
Pre-release

Release 0.49.0

Major Features and Improvements

  • Created the Baselines API of the GLDv2 (landmark) dataset for simulation,
    with a GLDv2 preprocessing function, a GLDv2 tasks function, and a Google
    mirror of the GLDv2 baselines tasks.

Breaking Changes

  • Temporarily removed tff.program.PrefetchingDataSource, the
    PrefetchingDataSourceIterator tests are flaky and it's not immediately clear
    if this is due to the implementation of the PrefetchingDataSourceIterator or
    due to a bug in the test.
  • Deprecated the following API, Python execution is deprecated instead use CPP
    execution:
    • tff.backends.native.create_local_python_execution_context
    • tff.backends.native.create_remote_python_execution_context
    • tff.backends.native.create_remote_async_python_execution_context
    • tff.backends.native.set_remote_async_python_execution_context
  • Removed the following API, Python execution is deprecated instead use CPP
    execution:
    • tff.backends.native.set_local_python_execution_context
    • tff.backends.native.set_remote_python_execution_context
    • tff.frameowrk.FederatingExecutor
    • tff.framework.ComposingExecutorFactory
    • tff.framework.ExecutorValue
    • tff.framework.Executor
    • tff.framework.FederatedComposingStrategy
    • tff.framework.FederatedResolvingStrategy
    • tff.framework.FederatingStrategy
    • tff.framework.ReconstructOnChangeExecutorFactory
    • tff.framework.ReferenceResolvingExecutor
    • tff.framework.RemoteExecutor
    • tff.framework.ResourceManagingExecutorFactory
    • tff.framework.ThreadDelegatingExecutor
    • tff.framework.TransformingExecutor
    • tff.framework.UnplacedExecutorFactory
  • Removed duplicate API from tff.framework, instead use:
    • tff.types.type_from_tensors
    • tff.types.type_to_tf_tensor_specs
    • tff.types.deserialize_type
    • tff.types.serialize_type
  • Renamed tff.learning.Model to tff.learning.models.VariableModel.
  • Renamed the
    cpp_execution_context.(create|set)_local_async_cpp_execution_context
    function to match the name of
    execution_context.(create|set)_(sync|async)_local_cpp_execution_context.

Bug Fixes

  • Fixed bug in FLAIR download URLs.
  • Enabled and fixed python type annotations in many packages.

TensorFlow Federated 0.48.0

31 Jan 17:33
Compare
Choose a tag to compare
Pre-release

Release 0.48.0

Major Features and Improvements

  • Implemented divisive split logic needed by DistributeAggregateForm, which is
    currently under development and will replace MapReduceForm and BroadcastForm
    in the future.

Breaking Changes

  • Renamed the cpp_execution_context.(create|set)_local_cpp_execution_context
    function to match the name of
    execution_context.(create|set)_(sync|async)_local_cpp_execution_context.
  • Deleted the sizing Python execution context and executor.
  • Deleted the thread debugging Python execution context and executor.
  • Removed ExecutorService from the public API.
  • Deleted the local async python execution context.

Bug Fixes

  • Enabled and fixed python type annotations in some modules in the
    executors, types, and core package.

TensorFlow Federated 0.47.0

23 Jan 23:18
Compare
Choose a tag to compare
Pre-release

Release 0.47.0

Major Features and Improvements

  • Added a LayoutMap message in the computation proto for TensorFlow
    DTensor based execution.

Breaking Changes

  • Removed the compiler_fn parameter from the high level
    *_mergeable_execution_context functions.

Bug Fixes

  • Aligned the context types allowed by the
    tff.program.NativeFederatedContext and the
    tff.program.PrefetchingDataSource.
  • Updated build_functional_model_delta_update to use ReduceDataset ops to
    rely on MLIR Bridge for XLA compilation and TPU usage.

TensorFlow Federated 0.46.0

18 Jan 22:08
Compare
Choose a tag to compare
Pre-release

Release 0.46.0

Major Features and Improvements

  • Added parameter and implementation for C++ remote executor to stream the
    values in a structure across the gRPC interface.
  • Added tff.backends.native.desugar_and_transform_to_native to the public
    API.
  • Replaced GroupNorm implementation with implementation from Keras.
  • Added tff.simulations.datasets.flair APIs for the FLAIR dataset.

Breaking Changes

  • Removed file extension for model_output_manager used in
    tff.learning.programs

Bug Fixes

  • Enabled and fixed python type annotations in some modules.
  • Changed tff.learning.algorithms.build_weighted_fed_prox parameter
    validation to allow proximal_strength = 0.0, matching the pydoc.

TensorFlow Federated 0.45.0

13 Jan 00:20
Compare
Choose a tag to compare
Pre-release

Release 0.45.0

Major Features and Improvements

  • Integrated the CppToPythonExecutorBridge into the CPPExecutorFactory.
  • Changed Python Remote Executor to decompose and stream structures in Compute
    and CreateValue when _stream_structs is true. Added a bool parameter
    stream_structs to
    tff.backends.native.set_localhost_cpp_execution_context() API.

Breaking Changes

  • Renamed tff.backends.native.set_localhost_cpp_execution_context() to
    backends.native.set_sync_local_cpp_execution_context().
  • Renamed tff.framework.ExecutionContext to
    tff.framework.SyncExecutionContext to be consistent with
    tff.framework.AsyncExecutionContext.
  • Removed the SyncSerializeAndExecuteCPPContext and
    AsyncSerializeAndExecuteCPPContext classes.

Bug Fixes

  • Fixed usage of typing.Generic in the learning package.
  • Enabled pytype analysis for some modules.
  • Fixed lint and formatting issues for some modules.

TensorFlow Federated 0.44.0

27 Dec 20:00
Compare
Choose a tag to compare
Pre-release

Release 0.44.0

Major Features and Improvements

  • Improved the Python type annotations for tff.program API.
  • Extended the metrics interface on FunctionalModel to accept the entire BatchOutput structure from the model forward_pass (not just the predictions).
  • Introduced a DTensor Executor.

Bug Fixes

  • Fixed async RuntimeWarning in the tff.program.NativeFederatedContext.

TensorFlow Federated 0.43.0

17 Dec 00:17
Compare
Choose a tag to compare
Pre-release

Release 0.43.0

Major Features and Improvements

  • Improve serialization method to allow structures larger than 2 GiB (~500
    million model parameters):
    • tff.learning.models.FunctionalModel
    • tff.programs.FileProgramStateManager

Bug Fixes

  • Fix a bug using copy.deepcopy for structures of awaitables (non-pickable)
    in tff.learning.programs.
  • Fix a bug when resuming an evaluation in
    tff.learning.programs.EvaluationManager where the restarted evaluation
    would overwrite released metrics.

v0.42.0: Increment the version and add release notes.

14 Dec 18:00
Compare
Choose a tag to compare

Release 0.42.0

Major Features and Improvements

  • Reduced memory usage for entropy compression.
  • Updated com_google_protobuf version to v3.19.0.
  • Removed dependency on six.

Breaking Changes

  • Removed default value for the key parameter from the abstract base class
    tff.program.ReleaseManager.

Bug Fixes

  • Fixed a whitespace syntax issue with shutting down a process when using the
    localhost C++ execution context.
  • Modified tff.simulation.build_uniform_sampling_fn so that the output
    raises on non-integer inputs.
  • Only wait a subprocess instance if it is not None.

TensorFlow Federated v0.41.0

29 Nov 18:45
Compare
Choose a tag to compare
Pre-release

Release 0.41.0

Major Features and Improvements

  • TFF-C++ runtime now installed by default. Note that this release will have a
    significantly larger PIP package size.
  • Introduce tff.learning.programs for federated program-logic using the
    tff.program APIs.
  • Updated tensorflow to version 2.11.0.
  • Updated tensorflow_compression to version 2.11.0.
  • Updated bazel_skylib to version 1.3.0.

TensorFlow Federated 0.40.0

15 Nov 17:06
Compare
Choose a tag to compare
Pre-release

Release 0.40.0

Major Features and Improvements

  • Skip model updates that are non-finite in
    tff.learning.templates.build_apply_optimizer_finalizer.

Breaking Changes

  • Removed deprecated APIs in tff.learning.framework
  • Update the Python package scripts to use Python 3.10 by default.
  • Remove module wildcard imports from init.py files in TFF.
  • Update the Python package scripts to use Python 3.10 by default.

Bug Fixes

  • Remove functools.wraps within tff.tf_computation.
  • Fix typo in iNaturalist dataset docstring.