我正在尝试建立一个简单的最小化过程。我对为什么得到
感到困惑AttributeError: 'RefVariable' object has no attribute '_id'
当我运行以下代码时:
import tensorflow as tf
def minimize_error():
with tf.Session(graph=tf.Graph()):
param = tf.Variable(tf.zeros([1]))
loss = tf.reduce_sum(param)
opt = tf.keras.optimizers.Adam(0.01)
opt_op = opt.minimize(loss, var_list=[param])
print(tf.executing_eagerly())
# False
print(tf.__version__)
# 1.14.0
minimize_error()
在this other problem中,我读到错误,表示它希望我进入急切执行模式。我不想进入那种模式,为什么会这样?
编辑:我现在意识到原因是因为我使用的是tf.keras.optimisers.*
而不是tf.train.*
。如果有人想回答为什么会在幕后发生,我将保留这个问题。