GRL 的主要作用是通过反转梯度的方向来实现对抗训练,从而减小源域和目标域之间的领域间差异。 具体来说,GRL 主要用于域自适应的领域间对抗学习(Domain Adversarial Learning)。在这个过程中,一个神经网络模型被设计为同时具有两个任务:主任务(如分类)和域对抗任务。梯度反转层被插入到主任务和域对抗任务之间,以达到...
这个函数可以使我们对梯度扩充任意倍数,而将梯度变为-1倍就可以完成反转梯度的功能。如上图所示,tf.contrib.training.multiply_gradients接收两个参数: (1) grads_and_vars,是一个二元组列表,即列表的元素是一个二元组,这个元组就是(梯度,参数)对。 (2) gradient_multipliers,是一个“映射”,从参数到对该参数...
作用是保留主要的特征,同时减少下一层的参数和计算量,防止过拟合;也可以保持translation(平移)、rotation(旋转)、scale(尺度)不变性。 2.Mean Pooling和Max Pooling是如何反向传递梯度的? mean pooling的反向传播的过程也就是把某个元素的梯度等分为n份分配给前一层,这样就保证池化前后的梯度之和保持不变。max pool...
其实也很简单,可以理解为就是pooling操作的一个逆过程,把一个像素的梯度传递给4个像素,保证传递的loss(或梯度)总和不变。下面分别来看average pooling和max pooling的反向传播操作过程。 average pooling average pooling在前向传播中,就是把一个patch中的值取平均传递给下一层的一个像素。因此,在反向传播中,就是把...