日间;夜间:
假设我有一个
编解码器
W_1
和
W_2
Z
作为编码器的输出。对网络进行批量训练
n
L_hat
是每个样品损失的总和
L
).
我要做的是,在后传中
操纵渐变
属于
Z
第1周
. 假设
以上所述,在同步通过的情况下(首先计算
Z
,然后传播到
第1周
Jacobian
乘法是用
grad_ys
tf.gradients
):
def modify_grad(grad_z):
# do some modifications
grad_z = tf.gradients(L_hat, Z)
mod_grad_z = modify_grad(grad_z)
mod_grad_w1 = tf.gradients(Z, W_1, mod_grad_z)
问题是,
我需要累积梯度
grad_z
张量的
Z
None
在其中一个维度中,如上图所示),我无法定义
tf.Variable
n
梯度
附言
ArXiv:1810.04650
异步网络训练
ArXiv:1609.02132
ArXiv:1711.00489
.