2

我想知道我们是否可以从 tensorflow_federated 中的服务器为每个客户端广播不同的模型?

有人可以帮忙吗?

4

1 回答 1

0

在 TFF 语言中,目前没有办法表达这一点。的合同tff.federated_broadcast是到达每个客户的价值是相同的。对于从服务器→客户端移动张量的其他方式,还没有替代的通信内在方式。

也就是说,可以模拟接收不同权重的客户端。在 Python 执行环境中在 TFF之外设置客户端状态,然后传入一个列表(每个客户端一个元素)。例子:

@tff.tf_computation(MODEL_WEIGHT_TYPE):
def client_work(model_weights):
  # Do local training, or any other logic.


@tff.federated_computation(tff.FederatedType(MODEL_WEIGHT_TYPE, tff.CLIENTS))
def run_one_round(model):
   return tff.federated_map(client_work, model)


client_models = [...]  # a list of each client, possibly different models.
run_one_round(client_models)
于 2020-03-19T15:13:00.710 回答