0
我想使用tensorlfow.metrics.recall
和tensorlfow.metrics.precision
,但tensorflow引起FailedPreconditionError
。請注意,我用sess.run(tf.global_variables_initializer())
FailedPreconditionError使用tensorlfow.metrics.recall時
的代碼如下:
import numpy as np
import tensorflow as tf
y_true = np.array([[1, 1, 0], [0, 1, 1], [0, 0, 1]])
y_pred = np.array([[1, 0, 0], [1, 0, 1], [0, 0, 1]])
predictions = tf.placeholder(tf.int64, shape=[3, 3])
labels = tf.placeholder(tf.int64, shape=[3, 3])
prec = tf.metrics.precision(labels, predictions)
rec = tf.metrics.recall(labels, predictions)
with tf.Session() as sess:
sess.run(tf.global_variables_initializer())
p, r = sess.run([prec, rec], feed_dict={predictions: y_pred, labels: y_true})
print("precision: {}, recall: {}".format(p, r))
- tensorflow版本:1.2.1
- Python版本:3.5.2
它的工作原理,謝謝。順便說一句,爲什麼不只是創建一個函數,初始化**所有**變量(本地和全局)?這裏有什麼設計關注將局部變量與全局變量分開? – xiaohan2012
剛剛發現有這樣的函數'tf.initialize_all_variables'。 – xiaohan2012
不推薦使用'tf.initialize_all_variables'。你應該使用上面的一個。 –