【发布时间】:2020-02-17 15:37:41
【问题描述】:
在联邦学习环境中,tff.simulation.ClientData.from_clients_and_fn 是一种应该起作用的类方法。在这里,如果我传递一个 client_ids 列表和一个在给定客户端 ID 时返回适当数据集的函数,您将获得一个功能齐全的 ClientData。
我认为在这里,定义我可能使用的函数的一种方法是构造一个 Python 字典,它将客户端 ID 映射到 tf.data.Dataset 对象——然后您可以定义一个接受客户端 ID 的函数,查找字典中的数据集,并返回数据集。 所以我将函数定义如下,但我认为这是错误的,你怎么看?
list = ["0","1","2"]
tab = {"0":ds, "1":ds, "2":ds}
def create_tf_dataset_for_client_fn(id):
return ds
source = tff.simulation.ClientData.from_clients_and_fn(list, create_tf_dataset_for_client_fn)
我在这里假设 4 个客户端具有相同的数据集:'ds'
【问题讨论】: