Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
多GPU tensorflow上的批量大小_Tensorflow_Tensorflow2.0 - Fatal编程技术网

多GPU tensorflow上的批量大小

多GPU tensorflow上的批量大小,tensorflow,tensorflow2.0,Tensorflow,Tensorflow2.0,对于tensorflow keras,如果我使用batch_size=8,并使用tf.distribute.MirroredStrategy()和4个GPU,那么对于培训中的每个步骤,它是否有 (1) 8批,其中每个GPU有2批 或(2)4x8批次,其中每个GPU有8个批次 我以为这是第二个病例。如果我错了,请纠正我。如果是第二种情况,如何跨GPU计算梯度?简单地说是平均数?这是否意味着批量大小为8的4个GPU的算法和精度等于批量大小为32的单个GPU?当然,训练时间会有所不同 谢谢您的帮助。第

对于tensorflow keras,如果我使用batch_size=8,并使用tf.distribute.MirroredStrategy()和4个GPU,那么对于培训中的每个步骤,它是否有 (1) 8批,其中每个GPU有2批 或(2)4x8批次,其中每个GPU有8个批次

我以为这是第二个病例。如果我错了,请纠正我。如果是第二种情况,如何跨GPU计算梯度?简单地说是平均数?这是否意味着批量大小为8的4个GPU的算法和精度等于批量大小为32的单个GPU?当然,训练时间会有所不同


谢谢您的帮助。

第一个解释是正确的。因此,如果将batch_size设置为8。每个GPU的批大小为2,并根据批大小2执行向前和向后传递。最后,通过平均值合并来自4个GPU的梯度,这相当于在单个GPU上处理batch_size=8

在这里可以找到很好的解释。
第一种解释是正确的。因此,如果将batch_size设置为8。每个GPU的批大小为2,并根据批大小2执行向前和向后传递。最后,通过平均值合并来自4个GPU的梯度,这相当于在单个GPU上处理batch_size=8

在这里可以找到很好的解释。