TensorFlow2_200729系列---13、二阶梯度求解
TensorFlow2_200729系列---13、二阶梯度求解
一、总结
一句话总结:
梯度是放在with tf.GradientTape() as t1 语句之中,那二阶梯度就是这个语句的嵌套
import tensorflow as tf w = tf.Variable(1.0) b = tf.Variable(2.0) x = tf.Variable(3.0) with tf.GradientTape() as t1: with tf.GradientTape() as t2: y = x * w + b dy_dw, dy_db = t2.gradient(y, [w, b]) d2y_dw2 = t1.gradient(dy_dw, w) print(dy_dw) print(dy_db) print(d2y_dw2) assert dy_dw.numpy() == 3.0 assert d2y_dw2 is None
二、二阶梯度求解
博客对应课程的视频位置:
import tensorflow as tf w = tf.Variable(1.0) b = tf.Variable(2.0) x = tf.Variable(3.0) with tf.GradientTape() as t1: with tf.GradientTape() as t2: y = x * w + b dy_dw, dy_db = t2.gradient(y, [w, b]) d2y_dw2 = t1.gradient(dy_dw, w) print(dy_dw) print(dy_db) print(d2y_dw2) assert dy_dw.numpy() == 3.0 assert d2y_dw2 is None
tf.Tensor(3.0, shape=(), dtype=float32) tf.Tensor(1.0, shape=(), dtype=float32) None
版权申明:欢迎转载,但请注明出处
一些博文中有一些参考内容因时间久远找不到来源了没有注明,如果侵权请联系我删除。
在校每年国奖、每年专业第一,加拿大留学,先后工作于华东师范大学和香港教育大学。
2025-04-30:宅加太忙,特此在网上找女朋友,坐标上海,非诚勿扰,vx:fan404006308
AI交流资料群:753014672