我有点困惑与最大游泳池落后执行在这里:https://github.com/tensorflow/tensorflow/blob/master/tensorflow/core/kernels/maxpooling_op_gpu.cu.cc#L192在Tensorflow中最大游泳池后退发生了什么?
任何人都可以解释如何在这里计算梯度。像max pool的局部梯度一样是0和1,所以他们只是复制来自grad_in的值?尽管有关于参数top_diff,top_offset,bottom_offset的评论,有人可以解释那些是什么(我是初学者)?
嗨@keveman,谢谢你的回复。现在如果我要做一个最大的unpool操作,需要[x1 x1]和一个argmax矩阵[1 1]随着贴片大小放大到[0 x1 0],并且跨步提到,我应该怎样去最大化反向后退?这是否有意义的最大反向后退: 'int image_id =(index/top_offset); CudaAtomicAdd(bottom_diff + index,top_diff [mask [index] + image_id * top_offset]);' –