如何在张量流联合中打印客户端本地更新(丢失,准确性)
I tried to print client updates as mentioned.
@tff.federated_computation
def aggregate_mnist_metrics_across_clients(metrics):
return
{'num_examples': tff.federated_sum(metrics.num_examples),'loss': tff.federated_mean(metrics.loss, metrics.num_examples),'accuracy': tff.federated_mean(metrics.accuracy, metrics.num_examples),'per_client/num_examples': tff.federated_collect(metrics.num_examples),'per_client/loss': tff.federated_collect(metrics.loss),'per_client/accuracy': tff.federated_collect(metrics.accuracy)}
但它没有奏效。它在执行第一轮时为客户端显示空白值。你能看一下吗?感谢
第一轮,metrics=OrderedDict([('广播', ()), ('聚合', OrderedDict([('value_sum_process', ()), ('weight_sum_process', ())])), ('train ', {'准确度': 0.0990099, '损失': 2.7817621, 'num_examples': 202.0,'per_client/accuracy':
I tried to print client updates as mentioned.
@tff.federated_computation
def aggregate_mnist_metrics_across_clients(metrics):
return
{'num_examples': tff.federated_sum(metrics.num_examples),'loss': tff.federated_mean(metrics.loss, metrics.num_examples),'accuracy': tff.federated_mean(metrics.accuracy, metrics.num_examples),'per_client/num_examples': tff.federated_collect(metrics.num_examples),'per_client/loss': tff.federated_collect(metrics.loss),'per_client/accuracy': tff.federated_collect(metrics.accuracy)}
But it did not work. It displays blank values for a client on executing the first round. Can you please look into it. Thanks
round 1, metrics=OrderedDict([('broadcast', ()), ('aggregation', OrderedDict([('value_sum_process', ()), ('weight_sum_process', ())])), ('train', {'accuracy': 0.0990099, 'loss': 2.7817621, 'num_examples': 202.0, 'per_client/accuracy': <ConcatenateDataset shapes: (), types: tf.float32>, 'per_client/loss': <ConcatenateDataset shapes: (), types: tf.float32>, 'per_client/num_examples': <ConcatenateDataset shapes: (), types: tf.float32>})])
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这些值表示为 tf.data.Dataset。您可以使用基本机制迭代它们的值,请参阅 https://www.tensorflow.org/指南/数据#basic_mechanics
Those values are represented as
tf.data.Dataset
. You can iterate through their values using the basic mechanics, see https://www.tensorflow.org/guide/data#basic_mechanics