Skip to content
Snippets Groups Projects
This project is mirrored from https://github.com/tensorflow/federated. Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer or owner.
Last successful update .
  1. Jul 21, 2020
  2. Jun 24, 2020
    • Zachary Garrett's avatar
      Update `build_federated_averaging_process` and `build_federated_sgd_process`... · 380bace9
      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
      380bace9
  3. Jun 06, 2020
  4. May 28, 2020
  5. May 09, 2020
  6. May 08, 2020
  7. Feb 28, 2020
  8. Feb 19, 2020
    • Zachary Garrett's avatar
      Remove tf.learning.from_compiled_keras_model(). · d878ef91
      Zachary Garrett authored
      -   Removes `tff.learning.from_compiled_keras_model()` from API.
      -   Removes unused `tff.learning._TrainableKerasModel`.
      -   Removes usage of `tf.keras.Model.output_names` and
          `tf.keras.Model.loss_functions` in `tff.learning._KerasModel` to be
          compliant with upcoming Keras refactoring.
      
      As a side-effect of this change, TFF will no longer supported (though no known
      usages):
      
      1.   Specifying multiple loss functions or loss weights via dictionaries
      keyed by model output name. Instead, using ordered sequences of
      functions mapping to outputs is still possible.
      2.   Sublcassed `tf.keras.Model` instances cannot be used in TFF.
      
      PiperOrigin-RevId: 295824509
      d878ef91
  9. Feb 14, 2020
  10. Dec 17, 2019
  11. Dec 12, 2019
    • A. Unique TensorFlower's avatar
      Automated rollback of commit 13c5a443 · 0fb8880a
      A. Unique TensorFlower authored
      PiperOrigin-RevId: 285116495
      0fb8880a
    • Zachary Garrett's avatar
      Don't rely on variable names for type signatures, as TF may invoke some · 13c5a443
      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
      13c5a443
  12. Nov 16, 2019
  13. Nov 08, 2019
  14. Aug 30, 2019
  15. Aug 14, 2019
  16. Jul 19, 2019
  17. Jun 04, 2019
  18. Jun 01, 2019
  19. May 24, 2019
  20. Apr 19, 2019
  21. Apr 18, 2019
    • Zachary Garrett's avatar
      Change all tests using TensorFlow to enable V2 behavior by default. · eb9f4519
      Zachary Garrett authored
      - Annotate many tests to be wrapped in a graph.
      - Avoid comparison on the string representation of the Tensor.
      - Do not use self.session() provided by the testcase, rather construct a new
        tf.Session().  In eager mode, the returned object is not `tf.Session`, it is
        type `EagerSessionWarner` which fails tff.pytype_check().
      - Normalize on tf.test.main() [for pure Tensorflow tests) or test.main() [for TFF + TF tests]
      - Use the forward compatible tf.compat.v1.enable_v2_behavior() method.
      
      PiperOrigin-RevId: 244033806
      eb9f4519
  22. Apr 04, 2019
    • Brendan McMahan's avatar
      Support state in the function used to do the federated_broadcast. This could... · fb2605e3
      Brendan McMahan authored
      Support state in the function used to do the federated_broadcast. This could allow, e.g., for an adaptive quantization scheme to be used. Also removes some older type-based tests, since we now have execution tests, and the type-based tests are likely to be brittle (needing to be updated due to changes in distant files).
      
      PiperOrigin-RevId: 241843768
      fb2605e3
  23. Apr 03, 2019
    • Brendan McMahan's avatar
      Allow stateful aggregation operators in model_delta_optimizer_processes like... · 4add2465
      Brendan McMahan authored
      Allow stateful aggregation operators in model_delta_optimizer_processes like Federated Averaging. Allowing stateful aggregation functions to be applied to model deltas paves the way for using a differentially private average such as the GaussianAverageQuery of TensorFlow Privacy (where the state includes for example the Privacy Ledger).
      
      PiperOrigin-RevId: 241628028
      4add2465
  24. Apr 02, 2019
    • Zachary Garrett's avatar
      Change client computation of FedSGD and FedAvg to be stateless. · 67dd362c
      Zachary Garrett authored
      - Remove variable creation in __init__, not needed
      - Add back @tf.contrib.eager.function() annotations and remove tf.control_dependencies
      - Reduce number of repeates in unittests so execution time is faster (2 reptitions is sufficient)
      - Replace EagerTensor.numpy() calls with tf.TestCase.evaluate() for extracting tensor values in unittests
      
      PiperOrigin-RevId: 241365351
      67dd362c
  25. Mar 25, 2019
  26. Mar 13, 2019
  27. Mar 12, 2019
  28. Mar 07, 2019
  29. Mar 05, 2019
    • krush's avatar
      Implements handling of tuples of length 1 in federated_zip. · 7d997aea
      krush authored
      In particular, federated_zip will now simply promote the federation of a 1-tuple of federated values, returning a federated 1-tuple of values.
      
      WARNING: This CL is backwards-incompatible.
      Now an IterativeProcess built through `build_federated_optimizer_process` will always return a *tuple* of metrics as the second return value of its next method, as opposed to returning a tuple if there are 2 or more metrics specified and a scalar if there is only 1.
      PiperOrigin-RevId: 236763176
      7d997aea
  30. Mar 02, 2019
  31. Jan 25, 2019
    • michaelreneer's avatar
      Refactor TFF test functions. · 8d915562
      michaelreneer authored
      * Moved test functions into one location.
      * Renamed test functions and module to be more concisely named.
      * Moved TF 2.0 setup from setup methods to main function.
      
      PiperOrigin-RevId: 230776467
      8d915562
  32. Jan 24, 2019
  33. Jan 04, 2019
    • Michael Reneer's avatar
      Cleanup and modernize. · 25181a67
      Michael Reneer authored
      * Added missing BUILD dependencies.
      * Added six python dependencies.
      * Fixed whitespace.
      
      PiperOrigin-RevId: 227725720
      25181a67
  34. Dec 28, 2018
  35. Dec 27, 2018
Loading