gpt4 book ai didi

tensorflow - 如何在 tensorflow 2.0 中计算 hessian?

转载 作者:行者123 更新时间:2023-12-05 05:05:45 25 4
gpt4 key购买 nike

https://www.tensorflow.org/api_docs/python/tf/hessians

典型的做法应该是这样

with tf.GradientTape() as tape_:
with tf.GradienTape() as tape:
loss = ...
g = tape.gradient(loss, [vars])
gg = tape_.gradient(loss, [tf.transpose(vars)])

当然,移调不能像磁带那样工作。

tf.hessian 在文档中没有示例。我认为它可能来自 tf 1.0。

更新:使用tf.jacobian

with tf.GradientTape() as tape_:
with tf.GradientTape() as tape:
loss = J(a_orig, r)
dJda = tape.jacobian(loss, [a_orig])[0]
s = tape_.jacobian(dJda, [a_orig])[0]

最佳答案

如更新中所列。

再次使用同一个变量进行微分时,使用tf.jacobian代替tf.gradient

with tf.GradientTape() as tape_:
with tf.GradientTape() as tape:
loss = J(a_orig, r)
dJda = tape.jacobian(loss, [a_orig])[0]
s = tape_.jacobian(dJda, [a_orig])[0]

关于tensorflow - 如何在 tensorflow 2.0 中计算 hessian?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60377677/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com