我希望随着时间的推移观察我的Tensorflow LSTM的梯度,例如,通过绘制从t = N到t = 0的梯度范数。问题是,如何从Tensorflow中获取每个时间步长的梯度?
答案 0 :(得分:0)
在图表中定义:
params = tf.trainable_variables()
opt = get_optimizer(optimizer)(self.learning_rate)
gradients = tf.gradients(self.losses, params)
self.gradient_norm = tf.global_norm(gradients)
self.updates = opt.apply_gradients(zip(gradients, params), global_step=self.global_step)
然后eval self.gradient_norm或将其提供给SummariesWriter