This project is mirrored from https://github.com/tensorflow/federated.
Pull mirroring failed .
Last successful update .
Last successful update .
- 05 Nov, 2020 1 commit
-
-
Michael Reneer authored
Do not use or import the ABCs from `collections`, this is deprecated since Python 3.3, and in 3.9 it will stop working. These ABCs have moved to 'collections.abc' and should be used from this package. PiperOrigin-RevId: 340678321
-
- 20 Oct, 2020 1 commit
-
-
Zachary Garrett authored
Instead insert a `tf.function` decorator before (underneath) the `tff.tf_computation` decorator, and enter a `tf.init_scope` context during `tf.Variable` creation. The `tf.init_scope` hoists variable creation out of the `tf.function` to the nearest graph scope (provided by `tff.tf_comptuation`), which would otherwise result in an error from the the `tf.function` wrapper. More details on `tf.Variable` in `tf.function`: https://www.tensorflow.org/guide/function#variables Longer term, it may be nice to fold this automatic wrapping into the `tff.tf_computation` decorator, or re-introduce as `tff.tf2_computation`, however this requires all users to know they must use `tf.init_scope` during variable creation. Inside TFF packages (e.g. `tff.learning`) we can handle this for them, but its an extra point of concern for custom algorithm writers. PiperOrigin-RevId: 337935371
-
- 14 Oct, 2020 1 commit
-
-
Keith Rush authored
Fixes pytype mismatch in optimizer_utils, adding extra typing info in federated_averaging and federated_sgd. PiperOrigin-RevId: 336957857
-
- 07 Oct, 2020 1 commit
-
-
Zachary Garrett authored
the `tff.templates.AggregationProcess` used with `tff.learning`. For now allow usage of either `tff.templates.MeasuredProcess` via the `aggregation_process` parameter, or a `tff.aggregators.Factory` via the `model_update_aggregation_factory` parameter, but not both. PiperOrigin-RevId: 335705263
-
- 24 Sep, 2020 1 commit
-
-
Zachary Garrett authored
PiperOrigin-RevId: 333331509
-
- 04 Sep, 2020 1 commit
-
-
Zachary Garrett authored
Otherwise writers can potentially chose key lookup (e.g. OrderedDict) or attribute lookup (attr.s, namedtuple) objects that both adhere to the TFF type specification but must be handled different by library writers. PiperOrigin-RevId: 329962347
-
- 05 Aug, 2020 1 commit
-
-
Zachary Garrett authored
instead of the package import of `core`. This will greatly help Bazel prune the build graph, avoiding to need to build, test or run the entire tree for small changes. PiperOrigin-RevId: 324953948
-
- 25 Jul, 2020 1 commit
-
-
Taylor Cramer authored
PiperOrigin-RevId: 323045971
-
- 18 Jul, 2020 1 commit
-
-
Taylor Cramer authored
Previously, NamedTupleTypeWithPyContainerType was often lost and turned into a NamedTupleType without the container. This resulted in users being given AnonymousTuples when a more specific container should have been returned. This change fixes a large number of sites where container types were lost, and adjusts usage sites as appropriate, including the removal of `from_tff_result` functions. This change also makes the `__eq__` function for `NamedTupleTypeWithPyContainerType` require equivalent container types, rather than just equivalent field structure. Call sites that wished to compare only field structure are adjusted to use `Type.{is, check}_equivalent_to`. PiperOrigin-RevId: 321883012
-
- 16 Jul, 2020 1 commit
-
-
Michael Reneer authored
PiperOrigin-RevId: 321431928
-
- 25 Jun, 2020 1 commit
-
-
Zachary Garrett authored
Introduce a new `weights_type_from_model` helper function for creating `tff.Type` from a `tff.learning.Model`. PiperOrigin-RevId: 318097117
-
- 24 Jun, 2020 1 commit
-
-
Zachary Garrett authored
Update `build_federated_averaging_process` and `build_federated_sgd_process` to return the full metrics suite. After this change, users of `tff.learning.build_federated_averaging_process` (and the FedSGD version) will receives a named tuple of three groups of metrics: broadcast, train, and aggregation. - `train` are the same metrics that were previously returned. - `broadcast` and `aggregation` are metrics for the broadcast and aggregatin process respectively. For example, an aggregation process might report metrics about the client updates and the aggregated update (e.g. the global norms). Previously these methods only extracted the training metrics to retain historical behavior. This change updates the methods and callsites to return the full metrics set (including those from the broadcast and aggregation processes). PiperOrigin-RevId: 317888544
-
- 19 Jun, 2020 1 commit
-
-
Zachary Garrett authored
Extend the interface of `model_delta_optimizer_process` to accept the new `tff.templates.MeasuredProcess` for broadcast and aggregate functions. Changes to `model_delta_optimizer_process`: - Wrap the previous `StatefulFn` arguments in `tff.templates.MeasuredProcess` and only use `MeasuredProcess` internally. - Change the metrics out put to be a namespace separated metrics concatenation: `train`, `broadcast` and `aggregation`. Changes to dependents on `model_delta_optimizer_process`: - Change `bulid_federated_averaging_process` and `build_federated_sgd_process` to only output the `train` metrics to retain current behavior. - Update clipping mean to zip its state on return. Future CLs will convert this to a `MeasuredProcess`. - Remove default specification of broadcast in robust_federated_aggregation reserach. PiperOrigin-RevId: 317305758
-
- 09 Jun, 2020 1 commit
-
-
Zachary Garrett authored
This in in advance of accepting a `tff.utils.MeasuredProcess` for the broadcast and aggregate computations, which will allow easier composability of metrics into the final output. PiperOrigin-RevId: 315414970
-
- 05 Jun, 2020 1 commit
-
-
Zachary Garrett authored
PiperOrigin-RevId: 314743223
-
- 28 May, 2020 1 commit
-
-
Michael Reneer authored
PiperOrigin-RevId: 313419009
-
- 14 Apr, 2020 1 commit
-
-
Michael Reneer authored
PiperOrigin-RevId: 306446003
-
- 14 Feb, 2020 1 commit
-
-
Zachary Garrett authored
Migrates `cmp` arguments in attr.s() to `eq` and `order` arguments: 1. If `cmp=False`, replacing it with `eq=False`. 2. If `cmp=True`, replacing it with `eq=True, order=True`. PiperOrigin-RevId: 294921678
-
- 11 Feb, 2020 1 commit
-
-
Zachary Garrett authored
Make `tff.learning.state_with_new_model_weights` consist with previous changes to make ModelWeights unordered. PiperOrigin-RevId: 294256825
-
- 05 Feb, 2020 1 commit
-
-
Galen Andrew authored
PiperOrigin-RevId: 293243832
-
- 04 Feb, 2020 1 commit
-
-
Brendan McMahan authored
Remove a stale comment, we plan to keep federated_map to make it easier to e.g. support tf.functions directly. PiperOrigin-RevId: 293062407
-
- 03 Jan, 2020 1 commit
-
-
Michael Reneer authored
PiperOrigin-RevId: 287856859
-
- 31 Dec, 2019 2 commits
-
-
Michael Reneer authored
PiperOrigin-RevId: 287599572
-
Michael Reneer authored
PiperOrigin-RevId: 287587245
-
- 17 Dec, 2019 1 commit
-
-
Zachary Garrett authored
PiperOrigin-RevId: 285801872
-
- 12 Dec, 2019 2 commits
-
-
A. Unique TensorFlower authored
PiperOrigin-RevId: 285116495
-
Zachary Garrett authored
de-duplication strategy in non-eager mode. TF, under certain circumstances, prepends `_#` numbers to variables with the same name. This appears to happen in non-eager mode and in some occasions with Keras. TFF previously used these names for the type signature, which would cause problems when the same model was created more than once in the same graph context. Instead, rely on the ordering of the sequence of variables contained in the model and use the unnamed structure for types. PiperOrigin-RevId: 285032395
-
- 26 Nov, 2019 1 commit
-
-
Keith Rush authored
PiperOrigin-RevId: 282372965
-
- 21 Nov, 2019 1 commit
-
-
Zachary Charles authored
PiperOrigin-RevId: 281621220
-
- 16 Nov, 2019 2 commits
-
-
A. Unique TensorFlower authored
PiperOrigin-RevId: 280784907
-
Michael Reneer authored
PiperOrigin-RevId: 280767713
-
- 13 Nov, 2019 1 commit
-
-
Brendan McMahan authored
PiperOrigin-RevId: 280106181
-
- 29 Oct, 2019 1 commit
-
-
Brendan McMahan authored
PiperOrigin-RevId: 277077362
-
- 14 Jun, 2019 1 commit
-
-
Zachary Garrett authored
Convert usages of `tf.assign(variable, tesnor)` to `variable.assign(tensor)` to be TF2.0 compatible. PiperOrigin-RevId: 253102645
-
- 12 Jun, 2019 1 commit
-
-
Zachary Garrett authored
- Move `tf_computation` definitions outside the `federated_computations`, they do not need to be nested. - Making `tf_computation` naming consistent with prefixing by `tf_` PiperOrigin-RevId: 252691185
-
- 11 Jun, 2019 1 commit
-
-
Brendan McMahan authored
PiperOrigin-RevId: 252433262
-
- 25 May, 2019 1 commit
-
-
Brendan McMahan authored
PiperOrigin-RevId: 249883751
-
- 24 May, 2019 1 commit
-
-
Jakub Konecny authored
PiperOrigin-RevId: 249777136
-
- 14 May, 2019 1 commit
-
-
Jakub Konecny authored
PiperOrigin-RevId: 248133419
-
- 02 May, 2019 1 commit
-
-
Zachary Garrett authored
PiperOrigin-RevId: 246164724
-