This project is mirrored from https://github.com/tensorflow/federated. Pull mirroring failed .
Last successful update .
  1. 13 Nov, 2020 1 commit
  2. 29 Sep, 2020 1 commit
  3. 15 Sep, 2020 1 commit
  4. 12 Sep, 2020 1 commit
  5. 25 Aug, 2020 1 commit
  6. 15 Aug, 2020 1 commit
  7. 13 Aug, 2020 1 commit
  8. 25 Jul, 2020 1 commit
  9. 22 Jul, 2020 1 commit
    • Taylor Cramer's avatar
      Rename `AnonymousTuple` to `Struct`. · d12deec7
      Taylor Cramer authored
      This change moves and renames `AnonymousTuple` and its `Type`-based
      brethren. It re-exports the new types under the old names to allow
      for a more gradual transition to the new API.
      
      PiperOrigin-RevId: 322477504
      d12deec7
  10. 28 May, 2020 1 commit
  11. 14 Apr, 2020 1 commit
  12. 09 Apr, 2020 1 commit
  13. 07 Apr, 2020 1 commit
  14. 19 Feb, 2020 1 commit
  15. 13 Feb, 2020 1 commit
  16. 08 Feb, 2020 2 commits
  17. 23 Jan, 2020 1 commit
    • Michael Reneer's avatar
      Add `secure_sum` intrinsic to TFF. · 27807ecf
      Michael Reneer authored
      This change is part one of three:
      
      1. Add `secure_sum` intrinsic to TFF.
      2. Update transformations to support the `secure_sum` intrinsic.
      3. Update canonical form to support the `secure_sum` intrinsic.
      
      Here is an example using the API:
      
      ```python
        @computations.federated_computation
        def init_fn():
          """The `init` function for `computation_utils.IterativeProcess`."""
          return intrinsics.federated_value([0, 0], placements.SERVER)
      
        @computations.tf_computation(tf.int32, tf.int32], tf.int32]])
        def work(client_data, client_input):
          del client_data  # Unused
          del client_input  # Unused
          return [1, 1]
      
        @computations.federated_computation([
            computation_types.FederatedType([tf.int32, tf.int32], placements.SERVER),
            computation_types.FederatedType(tf.int32, placements.CLIENTS),
        ])
        def next_fn(server_state, client_data):
          """The `next` function for `computation_utils.IterativeProcess`."""
          client_input = intrinsics.federated_broadcast(server_state)
          c3 = intrinsics.federated_zip([client_data, client_input])
          client_updates = intrinsics.federated_map(work, c3)
          federated_update = intrinsics.federated_sum(client_updates[0])
          secure_update = intrinsics.secure_sum(client_updates[1], 8)
          new_server_state = intrinsics.federated_zip([federated_update, secure_update])
          server_output = intrinsics.federated_value([], placements.SERVER)
          return new_server_state, server_output
      
        ip = computation_utils.IterativeProcess(init_fn, next_fn)
      ```
      
      PiperOrigin-RevId: 290988239
      27807ecf
  18. 10 Jan, 2020 1 commit
  19. 31 Dec, 2019 1 commit
  20. 21 Nov, 2019 1 commit
  21. 15 Aug, 2019 1 commit
  22. 30 Jul, 2019 1 commit
  23. 31 May, 2019 1 commit
  24. 23 Apr, 2019 1 commit
  25. 02 Apr, 2019 1 commit
  26. 07 Feb, 2019 1 commit
  27. 24 Jan, 2019 1 commit
  28. 09 Jan, 2019 1 commit
  29. 21 Sep, 2018 2 commits
  30. 07 Sep, 2018 1 commit