【发布时间】:2018-03-02 11:42:38
【问题描述】:
在多 GPU 上训练时,我得到较低的准确度是否正常?例如,当我在具有 n 批大小的单个 GPU 上进行训练时,我得到了 63% 的准确率。但是,当我使用 4 个 GPU 进行训练时,每个 GPU 的批量大小为 n,我的准确率只有 58%。两个案例都训练了 100 个 epoch
我猜梯度的平均在某种程度上使优化器变得困难。有人遇到过同样的事情吗?
【问题讨论】:
-
你在使用
set_random_seed吗?您是否多次观察到此问题? -
这是什么意思?我手动配置了训练
-
精度差异可能是随机的,与使用一个或多个 GPU 无关。如果您使用
set_random_seed,培训课程每次都会产生相同的结果。 -
不,我对每个案例重复了 2 次训练。同样的事情发生了,多 GPU 的准确率总是很低
-
我也很想知道这个。我注意到在使用 3 个 GPU 和 4 个 GPU 之间,使用具有相同数据和超参数的相同模型会导致准确度下降。
标签: python tensorflow deep-learning