2017-03-05 55 views

回答

0

您可以點擊這裏查看該link

trainable_variables = tf.trainable_variables() 
grads = tf.gradients(self.cost, trainable_variables) 

if self.hps.optimizer == 'sgd': 
    optimizer = tf.train.GradientDescentOptimizer(self.lrn_rate) 
elif self.hps.optimizer == 'mom': 
    optimizer = tf.train.MomentumOptimizer(self.lrn_rate, 0.9) 

apply_op = optimizer.apply_gradients(
    zip(grads, trainable_variables), 
    global_step=self.global_step, name='train_step') 

在那裏你可以更換gradients如果計算出的梯度也tensorsvariables

但是,如果您計算的梯度是數值,我不確定tensorflow可以輕鬆做到這一點。

+0

我認爲,通過這種方式,你應該得到所有的畢業生,然後應用它們。但我只能爲最後一層創建漸變,我想要的是先將最後一個圖層漸變到前一個圖層,然後獲取所有漸變,然後再應用它們。謝謝! –