【发布时间】:2018-04-11 01:22:19
【问题描述】:
当我们在 Tensorflow 多 GPU 环境中进行训练时,我们如何找到测试准确率并将其显示在训练损失旁边的终端中? 1. 能否在单 GPU 上找到测试准确率? 2. 我们是否应该在所有可用的 GPU 上找到测试准确率,然后计算平均值?
【问题讨论】:
当我们在 Tensorflow 多 GPU 环境中进行训练时,我们如何找到测试准确率并将其显示在训练损失旁边的终端中? 1. 能否在单 GPU 上找到测试准确率? 2. 我们是否应该在所有可用的 GPU 上找到测试准确率,然后计算平均值?
【问题讨论】:
您必须对所有 GPU 的准确度进行平均,这将为您提供整体准确度。假设您在 4 个 GPU 的每一个上有 64 个样本,批量大小为 256 (= 4 * 64 )。如果 50,48,56,52 分别准确标注,那么你的整体准确率是 50 + 48 + 56 + 52 = 206 / 256 = 80.47%。
有时,当您想要计算比准确度更复杂的东西时,您可能会认为来自一个 GPU 的结果是总体值的良好近似值,这样就省去了从所有 GPU 获取所有值的麻烦。要使其有效,必须满足两个条件:
【讨论】: