Releases: google-parfait/tensorflow-federated
Releases · google-parfait/tensorflow-federated
TensorFlow Federated 0.68.0
Release 0.68.0
Major Features and Improvements
- Added
tff.types.tensorflow_to_type
function to convert structures
containing tensorflow type specs into atff.Type
. - Deprecated
tff.types.infer_unplaced_type
. - Updated
tff.types.ArrayShape
to be defined as aSequence
not an
Iterable
, this is because thelen
of antff.types.ArrayShape
is used
for comparison. - Deprecated the
type_signature
parameter for the
tff.program.ReleaseManager.release
method.
Breaking Changes
- Removed the implementation of
tff.Value.__add__
. - Removed the deprecated
tff.Type.check_*()
functions, useisinstance
instead. - Removed
tff.types.at_clients
andtff.types.at_server
functions, use the
tff.FederatedType
constructor instead. - Removed support for handling
tf.data.DatasetSpec
,tf.RaggedTensorSpec
,
andtf.SparseTensorSpec
usingtff.to_type
, use
tff.types.tensorflow_to_type
instead. - Removed support for handling
tf.RaggedTensor
andtf.SparseTensor
using
infer_type
.
TensorFlow Federated 0.67.0
Release 0.67.0
Major Features and Improvements
- Updated the representation of a tff.TensorType.dtype to be a
np.dtype
instead oftf.dtypes.Dtype
. - Added
tff.program.DelayedReleaseManager
.
Breaking Changes
- Removed
check_allowed_ops
from theframework
package. - Removed
check_disallowed_ops
from theframework
package. - Removed
replace_intrinsics_with_bodies
from theframework
package. - Removed
get_session_token
from theframework
package. - Added a workspace dependency on
pybind11_bazel
. - Removed
type_from_tensors
from theframework
package. - Updated the version of
rules_python
to0.23.0
.
Bug Fixes
- Temporary pin
googleapis-common-protos
to version1.61.0
to work around
an issue with a transitive dependency.
TensorFlow Federated 0.66.0
Release 0.66.0
Breaking Changes
- Removed the capability to pass a
tf.TensorShape
as the shape of a
tff.TensorType
.
Bug Fixes
- Correctly materialize
SERVER
placed values out of the C++ execution stack
when using StreamingRemoteExecutor instead of returning an error about
placement not found.
TensorFlow Federated 0.65.0
Release 0.65.0
Major Features and Improvements
-
Update the representation of a
tff.TensorType.shape
to be a
tff.types.ArrayShape
instead oftf.TensorShape
. -
Updated
type_to_py_container``to be able to handle
tff.SequenceTypes` with
an unknown Python type.
Breaking Changes
- Moved
tff.structure_from_tensor_type_tree
to
tff.types.structure_from_tensor_type_tree
. - Remove the capability to pass an
int
as the shape of atff.TensorType
.
TensorFlow Federated 0.64.0
Release 0.64.0
Major Features and Improvements
- Updated the TFF project and the Python package to be compatible with Python
3.11. - Updated
train_process
totrain_process_factory
in vizier program logic
to support multiple trials in parallel. - Added support for using non-OrderedDict mapping types.
Breaking Changes
- Updated the version of
grpc
tov1.59.1
. - Updated the version of
bazel
to6.1.0
. - Updated the version of
tensorflow
to2.14.0
. - Updated the version of
numpy
to~=1.25
. - Updated the version of
com_google_googletest
to1.12.1
.
Bug Fixes
- Fixed import path for Vizier in federated program example.
- Fixed serialization of TenshorShape in error message to be human readable.
- Fixed bug in
tff.program.FileProgramStateManager
removing old program
state.
TensorFlow Federated 0.63.0
Release 0.63.0
Major Features and Improvements
- Added
tff.federated_min
andtff.federated_max
intrinsics. - Added a
get_value()
method totff.program.SavedModelFileReleaseManager,
for retrieving values that were previously released. - Added
tff.program.PeriodicReleaseManager
to release values at regular intervals. - Learning program logic now saves next evaluation time so that it can be loaded upon computation restarts.
DistributeAggregateForm
now skips normalizing the all_equal bit.- Added parallelism to Vizier program logic.
- Enabled building protos with certain Bazel versions.
Breaking Changes
- Updated the version of
attrs
to23.1
. - Updated the version of
cachetools
to~=5.3
. - Updated the version of
dp-accounting
to0.4.3
. - Updated the version of
google-vizier
to0.1.11
. - Updated the version of
jax
to0.4.14
. - Updated the version of
portpicker
to~=1.6
. - Updated the version of
tensorflow
to2.13.0
. - Updated the version of
tensorflow-model-optimization
to0.7.5
. - Updated the version of
tensorflow-privacy
to0.8.11
. - Updated the version of
typing-extensions
to~=4.5.0
. - Increased
TF_CUDA_VERSION
to12
. - Removed the
tff.program.Capabilities
enum from the iterator. - Deleted Python executors.
- Removed the deprecated
is_{foo}
functions fromtff.Type
s. Users should useisinstance
checks instead. - Deleted go-related BUILD targets for TFF proto files.
Bug Fixes
- Removed non-existent GCP doc from TFF guides.
- Cleaned up exceptions in the
tff.program
package for consistency and clarity. - Fixed various pytype errors.
- Fixed various
undefined-variable
lint errors. - Fixed a
UnicodeDecodeError
in the FedRecon tutorial. - Fixed Python 3.11 related errors.
TensorFlow Federated 0.62.0
Release 0.62.0
Breaking Changes
- Removed
context
argument from
tff.learning.algorithms.build_personalization_eval_computation
. Now a
personalization function only takes a model, a train dataset, and a test
dataset as arguments.
Bug Fixes
- Fix a rare infinite loop issue caused by very small float values when using
tff.learning.ddp_secure_aggregator
.
TensorFlow Federated 0.61.0
Release 0.61.0
Major Features and Improvements
- Updated the type annotation for the
dtype
parameter totff.TensorType
. - Added adaptive tuning function to
ThresholdSampling
class. - Added
tff.learning.models.ReconstructionModel.from_keras_model_and_variables
,
which provides a way to get aReconstructionModel
from a Keras model and
lists of global and local trainable/non_trainable variables. - Switched
tff.learning.algorithms.build_fed_recon_eval
to use a stateful
metrics aggregator.
Breaking Changes
- Removed
tff.learning.models.ReconstructionModel.from_keras_model
, which
has been replaced by
tff.learning.models.ReconstructionModel.from_keras_model_and_layers
. - Removed the following functions from the py_typecheck module:
check_len
,
check_callable
,is_dataclass
,is_attrs
,check_subclass
and
check_not_none
. They are unused or can be replaced by Python type
annotations.
Bug Fixes
- Fixed a small bug in the TFF SGDM optimizer, to only track momentum as a
hparam if it is both specified and nonzero.
TensorFlow Federated 0.60.0
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/returnNone
. - 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 0.59.0
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/returnNone
.
Bug Fixes
- Fixed and documented pytype errors in the
program
package. - Fixed bug in how
tff.program.NativeFederatedContext
handles arguments of
various types.