我写了一个多gpu的Cnn代码
在this link 他们在第249行评论道
# Retain the Batch Normalization updates operations only from the # final tower. Ideally, we should grab the updates from all towers # but these stats accumulate extremely fast so we can ignore the # other stats from the other towers without significant detriment.
但更新批次定额的代码(第253行):
with tf.device('/gpu:%d' % i):
.
.
.
batchnorm_updates =
tf.get_collection(slim.ops.UPDATE_OPS_COLLECTION,scope)
对所有塔(GPU)完成 那么这个更新的正确位置是什么呢?在
我想你对代码的理解不正确。在
作为code中的
for loop
在每个
for loop
之后,batchnorm_updates
将被替换,因此当for loop
完成时,它只包含最后一个塔的批处理规范化更新操作。在相关问题 更多 >
编程相关推荐