Tensorflow federated TFF:这两种类型的区别是什么?

Tensorflow federated TFF:这两种类型的区别是什么?,tensorflow-federated,Tensorflow Federated,collected\u output=tff.federated\u collect(客户端输出)。 有关详细代码,请参阅此 我的问题是照片上用红色标记的部分之间的区别。就FL算法而言,我认为client\u outputs是单个客户端的输出,collected\u outputs是SequenceType,因为每个client\u outputs都是组合的。这是正确的吗?如果我的猜测是正确的,member是一组具有client\u输出的独立客户端成员吗?术语可能有点棘手client\u输出并不

collected\u output=tff.federated\u collect(客户端输出)
。 有关详细代码,请参阅此


我的问题是照片上用红色标记的部分之间的区别。就FL算法而言,我认为
client\u outputs
是单个客户端的输出,
collected\u outputs
SequenceType
,因为每个
client\u outputs
都是组合的。这是正确的吗?如果我的猜测是正确的,
member
是一组具有
client\u输出的独立客户端成员吗?

术语可能有点棘手
client\u输出
并不是一个“单个客户机的输出”,它仍然代表所有客户机输出,但它们不能单独寻址。重要的是,TFF区分了数据存在于客户机上(“被放置”),而它尚未被通信
collected\u outputs
在某种意义上是所有单个客户端输出的流,尽管位置已更改(值已通过
tff.federated\u collect
传送到服务器)

更详细地说: 在上面的类型规范中,
.member
是上的一个属性。关于不同TFF类型的更多细节,TFF指南是一个很好的资源

{int32}@CLIENTS
表示由一组可能不同的整数组成的联邦值,每个客户端设备一个。请注意,我们所说的单个联合值包含网络中多个位置上出现的多个数据项。一种方法是将其视为一种具有“网络”维度的张量,尽管这种类比并不完美,因为TFF不允许随机访问联邦值的成员成分

在屏幕截图中,
client\u outputs
也被“放置”
@CLIENTS
(来自
.placement
属性)并遵循类似的语义:它有多个值(每个客户端一个),但单个值不可寻址(即,该值的行为与Python
列表

相反,
收集的\u输出
放在
@服务器
上。然后这个子弹:

@SERVER
表示服务器上权重和偏差张量的命名元组。由于我们去掉了大括号,这表示设置了all_equal位,即,只有一个元组(不管承载此值的集群中可能有多少服务器副本)

注意“单元组”短语,在
tff.federated\u collect
之后,在服务器上放置了一个值序列。这个序列可以像一个数组一样迭代