TensorFlow梯度求解tf.gradients实例

  

我就废话不多说了,直接上代码吧!

        进口tensorflow特遣部队      w1=tf.Variable ([[1, 2]])   w2=tf.Variable ([[3,4]])      res=特遣部队。matmul (w1, [[2], [1]])      (w1)毕业生=tf.gradients (res)      与tf.Session税():   .run tf.global_variables_initializer () ()   打印sess.run (res)   打印sess.run(毕业生)   之前      

输出结果为:

        [[4]]   数组([[2 1]],dtype=int32)]      

可以这样看res与w1有关,w1的参数设为[a1, a2],则:

  

2 * a1 + a2=res

  

所以res对a1, a2求导可得[[2 1]]为w1对应的梯度信息。

        进口tensorflow特遣部队   def gradient_clip(渐变max_gradient_norm):   ”““剪切梯度模型。”“   clipped_gradients gradient_norm=tf.clip_by_global_norm (   梯度,max_gradient_norm)   (tf.summary gradient_norm_summary=1炅?“grad_norm”, gradient_norm)]   gradient_norm_summary.append (   tf.summary。标量(“clipped_gradient tf.global_norm (clipped_gradients)))      返回clipped_gradients   w1=tf.Variable ([[3.0, 2.0]])   # w2=tf.Variable ([[3,4]])   params=tf.trainable_variables ()   res=特遣部队。matmul (w1, [[3.0], [1]])   选择=tf.train.GradientDescentOptimizer (1.0)   (w1)毕业生=tf.gradients (res)   2.0 clipped_gradients=gradient_clip(毕业生)   global_step=特遣部队。变量(0,name=' global_step ',可训练的=False)   #更新=opt.apply_gradients (zip (clipped_gradients params) global_step=global_step)   与tf.Session税():   .run tf.global_variables_initializer () ()   打印sess.run (res)   打印sess.run(毕业生)   打印sess.run (clipped_gradients)   之前      

以上这篇TensorFlow梯度求解tf.gradients实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

TensorFlow梯度求解tf.gradients实例