Releases: google-parfait/tensorflow-federated
Releases · google-parfait/tensorflow-federated
TensorFlow Federated 0.58.0
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 thetff.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 0.57.0
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 thetff.program
API. - Migrated the
personalization_eval
module to the algorithms package. - Deleted the
tff.learning.build_local_evaluation
API. - Migrated
tff.learning.reconstruction
to thetff.learning.algorithms
package. - Updated to
dm-tree
version0.1.8
. - Updated to
dp-accounting
version0.4.1
. - Updated to
tensorflow-privacy
version0.8.9
.
TensorFlow Federated 0.56.0
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 0.55.0
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 0.54.0
Release 0.54.0
Major Features and Improvements
- Added attributes to
tff.learning.programs.EvaluationManager
, this enables
constructing newEvaluationManager
s 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
intff.aggregators
withtyping.NamedTuple
. - Removed introducing dependency on relayout op for control edges.
Breaking Changes
- Removed
run_server
andserver_context
from thetff.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 0.53.0
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 atff.learning.templates.LearningProcess
.- Updated the
tff.program.FederatedDataSourceIterator
s so that they can be serialized.
Breaking Changes
- Deleted the
forward_pass
attribute from theFunctionalModel
interface. - Removed
from_keras_model
,MetricsFinalizersType
,BatchOutput
,Model
, andModelWeights
symbols from thetff.learning
package. Users should instead use thetff.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 0.52.0
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 thetff.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
andsys.stderr
insubprocess.Popen
when
executing inside an IPython context. - Added a
SequenceExecutor
to the C++ execution stack to handlesequence_*
intrinsics.
TensorFlow Federated 0.51.0
Release 0.51.0
Major Features and Improvements
- Enabled, improved, and fixed Python type annotations in some modules.
- Added the interface of
loss_fn
totff.learning.models.FunctionalModel
,
along with serialization and deserialization methods. - Updated the composing executor to forward the
type
field ofIntrinsic
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 0.50.0
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 thetff.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 0.49.0
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
totff.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.