Skip to content

Releases: JetBrains-Research/tensorflow-federated

TensorFlow Federated 0.88.0

Choose a tag to compare

@github-actions github-actions released this 15 Jan 11:48

Release 0.88.0

Added

  • tff.tensorflow.to_type.
  • Added pack_args_into_struct and unpack_args_from_struct to the public
    API under framework.

Changed

  • Add round end timestamp to train metrics in
    tff.learning.programs.train_model.

Deprecated

  • tff.types.tensorflow_to_type, use tff.tensorflow.to_type instead.

Changed

  • Updated to use an environment-agnostic way to represent a sequence of data.
  • Updated JAX computations and contexts to be able to handle sequence types.
  • Moved tff.types.structure_from_tensor_type_tree and
    tff.types.type_to_tf_tensor_specs to the tff.tensorflow package.

Removed

  • tff.framework.merge_cardinalities
  • tff.framework.CardinalityCarrying
  • tff.framework.CardinalityFreeDataDescriptor
  • tff.framework.CreateDataDescriptor
  • tff.framework.DataDescriptor
  • tff.framework.Ingestable

TensorFlow Federated 0.87.0

Choose a tag to compare

@github-actions github-actions released this 03 Mar 13:35

Release 0.87.0

Added

  • Added an implementation of AdamW to tff.learning.optimizers.

Changed

  • Support None gradients in tff.learning.optimizers. This mimics the
    behavior of tf.keras.optimizers - gradients that are None will be
    skipped, and their corresponding optimizer output (e.g. momentum and
    weights) will not be updated.
  • The behavior of DPGroupingFederatedSum::Clamp: it now sets negatives to 0.
    Associated test code has been updated. Reason: sensitivity calculation for
    DP noise was calibrated for non-negative values.
  • Change tutorials to use tff.learning.optimizers in conjunction with
    tff.learning computations.
  • tff.simulation.datasets.TestClientData only accepts dictionaries whose
    leaf nodes are not tf.Tensors.

Fixed

  • A bug where tff.learning.optimizers.build_adafactor would update its step
    counter twice upon every invocation of .next().
  • A bug where tensor learning rates for tff.learning.optimizers.build_sgdm
    would fail with mixed dtype gradients.
  • A bug where different optimizers had different behavior on empty weights
    structures. TFF optimizers now consistently accept and function as no-ops on
    empty weight structures.
  • A bug where tff.simulation.datasets.TestClientData.dataset_computation
    yielded datasets of indeterminate shape.

Removed

  • tff.jax_computation, use tff.jax.computation instead.
  • tff.profiler, this API is not used.
  • Removed various stale tutorials.
  • Removed structure from tff.program.SavedModelFileReleaseManager's
    get_value method parameters.
  • Removed support for tf.keras.optimizers in tff.learning.