Wenn ich Tensorflow zu berechnen Auc, es immer 0 oder in der Nähe von 0. Ich habe viele Male versucht, "Accuracy" konnte 0.999 erreichen, aber die Auc Reuslt ist immer 0 oder nahe 0.0. Der Code folgt:warum meine Tensorflow Auc ist 0.0
input_tensor = tf.placeholder("float",[None, n_input])
output_tensor = tf.placeholder("float",[None, n_classes])
prediction = multilayer_perceptron(input_tensor, weights, biases)
....
AUC=tf.contrib.metrics.streaming_auc(prediction, output_tensor)
sess.run(tf.global_variables_initializer())
sess.run(tf.local_variables_initializer())
test_auc = sess.run(AUC, feed_dict={input_tensor : batch_x_test, output_tensor : batch_y_test})
print "test_auc:",test_auc
Das Ergebnis wie folgt :('Genauigkeit:', 0,99152541) test_auc: [0,0, 9.2286828e-05]. Auc ist 0.0 – jaky
aktualisiert meine Antwort –
Ich denke, es ist nicht erforderlich, Sitzung und Modell wiederherzustellen, weil das Modell trainiert und dann zur Vorhersage Auc in den gleichen Prozess verwendet wird. Und ich habe versucht, "one global_variables_initializer line" zu entfernen, aber das Ergebnis ist 0,0 AUC. – jaky