Releases: google-parfait/tensorflow-federated
Releases · google-parfait/tensorflow-federated
TensorFlow Federated 0.82.0
Release 0.82.0
Added
- Add a serialized raw array content field to the Array proto.
- A function to
DPCompositeKeyCombiner
that allows retrieval of an ordinal.
Intended for use by the closed-domain DP histogram aggregation core. - Constants for invalid ordinals and default
l0_bound_
.
Changed
- How
DPCompositeKeyCombiner
handles invalidl0_bound_
values. - The default
l0_bound_
value inDPCompositeKeyCombiner
to new constant. - Organization of DP histogram code. Previously, open-domain histogram class +
factory class lived side-by-side indp_group_by_aggregator.h/cc
. Now split
intodp_open_domain_histogram.h/cc
anddp_group_by_factory.h/cc
, which
will ease future addition of code for closed-domain histogram. - Moved
tff.federated_secure_modular_sum
to the mapreduce backend, use
tff.backends.mapreduce.federated_secure_modular_sum
instead.
TensorFlow Federated 0.81.0
Release 0.81.0
Added
- A helper function to get a vector of strings for the elements of a tensor in
order to aid in formatting. - A field
string_val
to thetensor
proto to allow representing string
values explicitly.
Changed
- The format of the release notes (i.e.,
RELEASE.md
) to be based on
https://keepachangelog.com/en/1.1.0/. - Moved constraint on
linfinity_bound
fromDPGroupingFederatedSumFactory
toDPGroupByFactory
, because closed-domain histogram algorithm will use
DPGroupingFederatedSum
but not demand a positivelinfinity_bound
.
Removed
- The dependency on
semantic-version
. - The
tff.async_utils
package, useasyncio
instead.
TensorFlow Federated 0.80.0
Release 0.80.0
Breaking Changes
- Move the tools package to the root of the repository.
- Updated bazel to version 6.5.0.
- Updated rules_python to version 0.31.0.
- Deleted deprecated tff.learning.build_federated_evaluation, which was superseded by tff.learning.algorithms.build_fed_eval.
TensorFlow Federated 0.79.0
Release 0.79.0
Major Features and Improvements
- Enable support for models with non-trainable variables in
tff.learning.models.functional_model_from_keras
.
Breaking Changes
- Removed
farmhashpy
dependency. - Updated
com_github_grpc_grpc
to version1.50.0
. - Moved the TFF repository from https://github.com/tensorflow/federated to
https://github.com/google-parfait/tensorflow-federated.
TensorFlow Federated 0.78.0
Release 0.78.0
Major Features and Improvements
- Moved aggregation from https://github.com/google-parfait/federated-compute
to TFF to consolidate the federated language and remove circular
dependencies.
Breaking Changes
- Updated
rules_license
to version0.0.8
. - Removed
elias_gamma_encode
module. - Removed
tensorflow_compression
dependency.
TensorFlow Federated 0.77.0
Release 0.77.0
Major Features and Improvements
- Added an implementation of
__eq__()
onbuilding blocks
.
Bug Fixes
- Fix #4588: Target Haswell CPU architectures (
-march=haswell
) instead of
whatever is native to the build infrastructure to ensure that binaries in
the pip package and executable on Colab CPU runtimes.
TensorFlow Federated 0.76.0
Release 0.76.0
Major Features and Improvements
- Added a
Literal
to the TFF language, part 2. This change updates the
tracing and execution portions of TFF to begin using theLiteral
. - Added an implementation of the Adafactor optimizer to
tff.learning.optimizers.build_adafactor
- Added a new field,
content
, to theData
proto.
Breaking Changes
- Removed the
check_foo()
methods on building blocks. - Removed
tff.data
, this symbol is not used.
Bug Fixes
- Fix a bug where the pip package default executor stack cannot execute
computations that haveLambda
s undersequence_*
intrinsics.
TensorFlow Federated 0.75.0
Release 0.75.0
Major Features and Improvements
- Updated the type annotation for MaterializedValue to include the Python
scalar types in addition to the numpy scalar types. - Added a
Literal
to the TFF language, part 1. - Added
Literal
to the framework package. - Extended
tff.learning.algorithms.build_weighted_fed_avg_with_optimizer_schedule
to
supporttff.learning.models.FunctionalModel
.
Breaking Changes
- Deleted the
tff.learning.framework
namespace⚰️.
Bug Fixes
- Fixed logic for determining if a value can be cast to a specific dtype.
- Fixed a bug where repeated calls to
FilePerUserClientData.create_tf_dataset_for_client
could blow up memory
usage
TensorFlow Federated 0.74.0
Release 0.74.0
Major Features and Improvements
- Make some of the C++ executor APIs public visibility for downstream repos.
- Moved the
DataType
protobuf object into its own module. Moving the
DataType
object into its own module allowsDataType
to be used outside
of aComputation
more easily and prevents a circular dependency between
Computation
andArray
which both require aDataType
. - Updated
build_apply_optimizer_finalizer
to allow custom reject update
function. - Relaxed the type requirement of the attributes of
ModelWeights
to allow
assigning list or tuples of matching values to other sequence types on
tf.keras.Model
instances. - Improved the errors raised by JAX computations for various types.
- Updated tutorials to use recommended
tff.learning
APIs.
Breaking Changes
- Removed the runtime-agnostic support for
tf.RaggedTensor
and
tf.SparseTensor
.
Full Changelog: v0.73.0...v0.74.0
TensorFlow Federated 0.73.0
Release 0.73.0
Major Features and Improvements
- Make some of the C++ executor APIs public visibility for downstream repos.
tff.learning.algorithms.build_fed_kmeans
supports floating point weights,
enabling compatibility withtff.aggregators
using differential privacy.- Added two new metrics aggregators:
tff.learning.metrics.finalize_then_sample
and
tff.learning.metrics.FinalizeThenSampleFactory
.
Breaking Changes
- Remove the ability to return
SequenceType
fromtff.federated_computation
decorated callables.
Bug Fixes
tff.learning
algorithms now correctly do not include metrics for clients
that had zero weight due to model updates containing non-finite values.
Previously the update was rejected, but the metrics still aggregated.