tensorflow-federated

An open-source framework for machine learning and other computations on decentralized data.

APACHE-2.0 License

Downloads
28.6K
Stars
2.3K
Committers
118

Bot releases are hidden (Show)

tensorflow-federated - TensorFlow Federated 0.60.0

Published by jkr26 over 1 year ago

Release 0.60.0

Major Features and Improvements

  • DTensor TF executor is now integrated with the default TFF C++ worker.
  • Added federated program documentation and guidelines.
  • Removed the pytype dependency from TFF.
  • tff.learning.algorithms.build_fed_recon_eval now supports TFF optimizers.

Breaking Changes

  • Updated tff.types.deserialize_type to not accept/return None.
  • Removed the tff.framework.ComputationBuildingBlock.is_foo methods.
  • Renamed tff.learning.algorithms.build_personalization_eval to
    tff.learning.algorithms.build_personalization_eval_computation
  • tff.learning.models.ReconstructionModel.from_keras_model will now check
    that global and local variables are disjoint, raise ValueError if they are
    not.

Bug Fixes

  • Fixed tff.learning.models.ReconstructionModel.has_only_global_variables
    (it was returning incorrect value).
tensorflow-federated - TensorFlow Federated 0.59.0

Published by xiaoyux11 over 1 year ago

Release 0.59.0

Major Features and Improvements

  • Removed compression for worker_binary.
  • Allowed tensor and numpy float-like objects in optimizer hyperparameters.
  • Improved API/filtering logic in FilteringReleaseManager.

Breaking Changes

  • Renamed build_personalization_eval to
    build_personalization_eval_computation.
  • Updated tff.to_type implementation and type annotation to not
    accept/return None.

Bug Fixes

  • Fixed and documented pytype errors in the program package.
  • Fixed bug in how tff.program.NativeFederatedContext handles arguments of
    various types.
tensorflow-federated - TensorFlow Federated 0.58.0

Published by nicolemitchell over 1 year ago

Release 0.58.0

Major Features and Improvements

  • Updated algorithms built from tff.learning.models.FunctionalModel to allow
    nested outputs.
  • Added the PrefetchingDataSource back to the tff.program API now that the
    flakiness has been fixed.

Bug Fixes

  • Changed return type of
    tff.simulation.compose_dataset_computation_with_learning_process to be a
    tff.learning.templates.LearningProcess.
  • Fixed flaky tests in prefetching_data_source_test.
  • Fixed type annotations and lint errors.
  • Cleaned up error messages and typing information in
    tff.learning.optimizers.
tensorflow-federated - TensorFlow Federated 0.57.0

Published by zcharles8 over 1 year ago

Release 0.57.0

Major Features and Improvements

  • Allow functional models to return a structure.

Breaking Changes

  • Removed support for handling attrs as containers in the tff.program API.
  • Migrated the personalization_eval module to the algorithms package.
  • Deleted the tff.learning.build_local_evaluation API.
  • Migrated tff.learning.reconstruction to the tff.learning.algorithms package.
  • Updated to dm-tree version 0.1.8.
  • Updated to dp-accounting version 0.4.1.
  • Updated to tensorflow-privacy version 0.8.9.
tensorflow-federated - TensorFlow Federated 0.56.0

Published by michaelreneer over 1 year ago

Release 0.56.0

Major Features and Improvements

  • Added Vizier backed tuning program logic to tff.learning.
  • Updated the tff.learning.programs.EvaluationManager to clean up states
    after recording the evaluation is completed.

Breaking Changes

  • Removed deprecated tff.learning.framework.ServerState symbol.
tensorflow-federated - TensorFlow Federated 0.55.0

Published by jkr26 over 1 year ago

Release 0.55.0

Major Features and Improvements

  • Removed nest_asyncio dependency from tutorials.
  • Added a new
    aggregatorrtff.aggregators.DifferentiallyPrivateFactory.tree_adaptive for
    combining DP-FTRL (https://arxiv.org/abs/2103.00039) and adaptive clipping
    (https://arxiv.org/abs/1905.03871).
  • Updated tff.learning.programs.EvaluationManager to set the evaluation
    deadline from the start time.

Breaking Changes

  • Python runtime deleted; C++ runtime covers all known use-cases.

Bug Fixes

  • Fixed a bug attempting to push tf.data.Dataset iterator ops onto GPUs.
tensorflow-federated - TensorFlow Federated 0.54.0

Published by xiaoyux11 over 1 year ago

Release 0.54.0

Major Features and Improvements

  • Added attributes to tff.learning.programs.EvaluationManager, this enables
    constructing new EvaluationManagers from existing ones.
  • Added Subsample Process abstract class and the implementation of Threshold
    Sampling Process Remove introducing dependency on relayout op for control
    edges.
  • Replaced usage of attrs in tff.aggregators with typing.NamedTuple.
  • Removed introducing dependency on relayout op for control edges.

Breaking Changes

  • Removed run_server and server_context from the tff.simulation API.
  • Removed the following symbols from the tff.framework API:
    • tff.framework.local_executor_factory
    • tff.framework.DataBackend
    • tff.framework.DataExecutor
    • tff.framework.EagerTFExecutor

Bug Fixes

  • Removed use of deprecated tff.learning symbols, and clear cell image
    outputs.
tensorflow-federated - TensorFlow Federated 0.53.0

Published by huili0140 over 1 year ago

Release 0.53.0

Major Features and Improvements

  • Updated TF version to 2.12.0.
  • Relaxed runtime type checks on tff.learning.templates.LearningProcess to allow non-sequence CLIENTS arguments.
  • tff.simulation.compose_dataset_computation_with_learning_process now returns a tff.learning.templates.LearningProcess.
  • Updated the tff.program.FederatedDataSourceIterators so that they can be serialized.

Breaking Changes

  • Deleted the forward_pass attribute from the FunctionalModel interface.
  • Removed from_keras_model, MetricsFinalizersType, BatchOutput, Model, and ModelWeights symbols from the tff.learning package. Users should instead use the tff.learning.models package for these symbols.
  • Removed deprecated tff.learning.federated_aggregate_keras_metric function.
  • Removed implicit attribute forwarding on tff.simulation.compose_dataset_computation_with_learning_process.
  • Removed deprecated tff.framework.remote_executor_factory_from_stubs.
  • Removed deprecated tff.backends.xla APIs.
  • Renamed the tff.backends.test APIs to: tff.backends.test.(create|set)_(sync|async)_test_cpp_execution_context.
tensorflow-federated - TensorFlow Federated 0.52.0

Published by ZacharyGarrett over 1 year ago

Release 0.52.0

Major Features and Improvements

  • Exposed tff.backends.mapreduce.consolidate_and_extract_local_processing as
    public API.
  • Updated the federated program API to be able to handle tff.Serializable
    objects.

Breaking Changes

  • Deprecated handling attrs classes as containers in the tff.program API.
  • Updated tff.learning.algorithms implementations to use
    tff.learning.models.FunctionalModel.loss instead of
    FunctionalModel.forward_pass.

Bug Fixes

  • Avoid using sys.stdout and sys.stderr in subprocess.Popen when
    executing inside an IPython context.
  • Added a SequenceExecutor to the C++ execution stack to handle sequence_*
    intrinsics.
tensorflow-federated - TensorFlow Federated 0.51.0

Published by wushanshan over 1 year ago

Release 0.51.0

Major Features and Improvements

  • Enabled, improved, and fixed Python type annotations in some modules.
  • Added the interface of loss_fn to tff.learning.models.FunctionalModel,
    along with serialization and deserialization methods.
  • Updated the composing executor to forward the type field of Intrinsic
    protos that are sent to child executors.
  • Added an executor binding for DTensor based executor.

Breaking Changes

  • Deprecated tff.framework.DataBackend. Python execution is deprecated
    instead use CPP Execution.

Bug Fixes

  • Fixed the formulation of the JIT constructed mapped selection computation
    that is sent to the remote machine in streaming mode.
  • Fixed the usage of np.bytes_ types that incorrectly truncate byte string
    with null terminator.
tensorflow-federated - TensorFlow Federated 0.50.0

Published by zcharles8 over 1 year ago

Release 0.50.0

Major Features and Improvements

  • Added client learning rate measurements to
    tff.learning.algorithms.build_weighted_fed_avg_with_optimizer_schedule
  • Added support for streaming federated structure values to the C++
    RemoteExecutor.
  • Added a C++ executor for executing TF graphs using TF2 DTensor APIs when
    layout information is specified for input parameters or variables in the
    graph.

Breaking Changes

  • Deprecated the following API, Python execution is deprecated instead use CPP
    execution:
    • tff.framework.local_executor_factory
    • tff.framework.remote_executor_factory_from_stubs
    • tff.framework.DataExecutor
    • tff.framework.EagerTFExecutor
  • Removed 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.framework.remote_executor_factory
  • Remove the executors_errors module from the tff.framework API, use
    tff.framework.RetryableError instead.

Bug Fixes

  • Fixed potential lifetime issue in C++ RemoteExecutor
  • Enabled and fixed python type annotations in many packages.
  • Fixed one-off error in evaluation criteria in training program logic.
tensorflow-federated - TensorFlow Federated 0.49.0

Published by michaelreneer over 1 year ago

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 - TensorFlow Federated 0.48.0

Published by xiaoyux11 over 1 year ago

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 - TensorFlow Federated 0.47.0

Published by wushanshan over 1 year ago

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 - TensorFlow Federated 0.46.0

Published by ZacharyGarrett over 1 year ago

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 - TensorFlow Federated 0.45.0

Published by amlanchakoty almost 2 years ago

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 - TensorFlow Federated 0.44.0

Published by nicolemitchell almost 2 years ago

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 - TensorFlow Federated 0.43.0

Published by hbmcmahan almost 2 years ago

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.
tensorflow-federated -

Published by nicolemitchell almost 2 years ago

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 - TensorFlow Federated v0.41.0

Published by jkr26 almost 2 years ago

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.