我在以下代码部分的最后一行出错:
confusionMatrix = tf.confusion_matrix(labels=y_true_cls,predictions=y_pred_cls)
x_batch, y_batch, _, cls_batch = data.valid.next_batch(batch_size_validation)
confusionMatrix = session.run(confusionMatrix, feed_dict={x: x_batch, y_true: y_batch})
错误说明如下:
NameError: name 'session' is not defined
在我的代码末尾(在上面的代码部分之后),我有以下内容:
with tf.Session() as session:
init = tf.group(tf.global_variables_initializer(), tf.local_variables_initializer())
session.run(init)
train( num_iteration=1000)
我该如何解决这个问题?
感谢。
答案 0 :(得分:1)
您尚未在session.run()
之前定义会话。只需定义它(例如session=tf.Session()
)就可以了。
答案 1 :(得分:1)
我只是将我的混淆矩阵包含在一个名为evaluate()
的函数中,并在evaluate()
块中的train(num_iteration=1000)
下发出with tf.Session() as session:
的调用:
with tf.Session() as session:
init = tf.group(tf.global_variables_initializer(), tf.local_variables_initializer())
session.run(init)
train(num_iteration=10000)
evaluate()