gpt4 book ai didi

python - 如何使用 TFF api 进行自定义使用?

转载 作者:行者123 更新时间:2023-12-01 00:51:38 25 4
gpt4 key购买 nike

我已阅读并研究了 TFF guideAPIs精确的页面。但我对一些细节部分感到困惑。

例如,当我想要包装/装饰一个TF/python函数时,请使用以下两个API:

1. tff.tf_computation()
2. tff.federated_computation()

我找不到它们之间的区别以及何时允许我使用它们。特别是,如果我想使用除 FedAvgFedSgd 之外的其他算法。不知道你是否知道:

  1. 如何使用它们来操纵输入?它们在 @CLIENT@SERVER 上工作吗?
  2. 除了值将在服务器中的 tff.federated_meantff.federated_sum 输出之外,我如何在其他用途​​中使用它们?
  3. 我如何才能访问@CLIENT@SERVER中的数据和指标的详细信息?
  4. 为什么我们应该从 tff.federated_computation() 调用 tff.tf_computation()?在此link ,没有任何关于它们的解释。
  5. 这些 API(例如 tff.federated_meantff.federated_sum)是否会修改每个 @CLIENT 的输出元素并将它们传送到 @SERVER?

有人可以帮助我理解这个概念背后的直觉吗?

最佳答案

关于不同函数装饰器的可能的经验法则:

  • tff.tf_computation用于包装 TF 逻辑。想想“张量输入,张量输出”:这应该与 tf.function 的用法非常相似,其中参数和返回值是张量或张量的嵌套结构。 TFF 内在函数(例如 tff.federated_mean )不能在 tff.tf_computation 内部使用,和tff.tf_computations无法调用tff.federated_computations 。类型签名始终未放置。

  • tff.federated_computation应用于包装 TFF 编程抽象。想想“这里张量,那里张量”:在这个上下文中,一个 tff.tf_computation可应用于tff.Valuetff.Value可以使用内在函数与其他展示位置进行通信。类型签名可以接受联合类型(即具有布局的类型)。

您的问题列表:

  1. 两者都可以处理 CLIENTS 处的值或SERVER 。例如,tff.tf_computationmy_comp可以应用于值 v类型 int32@CLIENTStff.federated_map(my_comp, v) ,它将运行 my_comp每个客户端。
  2. tff.federated_map() 支持对不在服务器上的数据应用逐点计算(跨客户端)。您可以使用 tff.federated_map 操作每个客户端上的指标。 TFF 不适用于不同客户端的单独选项;抽象不支持对个人进行寻址。您也许可以在 Python 中模拟这一点,请参阅 Operations performed on the communications between the server and clients .
  3. 只需从tff.Computation返回放置的数据的值即可在模拟中进行检查。 ,并调用该计算。这些值应该在 Python 环境中可用。
  4. tff.tf_computation应该可以从任何地方调用,如果有文档另有说明,请指出它。我相信想要强调的是 tff.federated_computation可以调用tff.tf_computation ,但反之亦然
  5. 教程( Federated Learning for Image ClassificationFederated Learning for Text Generation )展示了在模拟中打印指标的示例。您可能还对 how to print local outputs in tensorflow federated? 的答案感兴趣
  6. tff.tf_computations如果需要的话应该直接执行。这将避免 TFF 的任何联合部分,而只需委托(delegate)给 TensorFlow。要将计算应用于联合值并与联合内在函数结合使用,必须在 tff.federated_computation 内调用它们。 .

关于python - 如何使用 TFF api 进行自定义使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56529169/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com