这是我面临的问题的MWE:
import tensorflow as tf
with tf.GradientTape() as tape:
x = tf.Variable(0.0)
y = tf.Variable(x)
z = x
print(tape.gradient(y, x))
# None
print(tape.gradient(z, x))
# 1.0
好吧,显然这在这种特殊情况下很容易解决,但在我面临的实际用例中,与循环神经网络有关,我需要使用tf.Variable
连接其他张量来形成张量,如下所示:
Dout = tf.Variable([seed]) # initialize
for i in range(n):
Dout = tf.concat([Dout,
G.forward_step(Dout[-1])],
axis = 0)
好吧,我对在 TF 中实际操作张量还很陌生,也许有一种正确的方法可以从串联中创建张量。
帮助?