2017-08-08 4 views
1

Ich habe versucht, die Konfusionsmatrix für mein Modell auszudrucken, habe es aber versäumt.Confusion Matrix für Deep Learning

Allerdings habe ich erfolgreich eine (7x7) Konfusionsmatrix, aber im Tensor-Format erhalten.

Ich bin neu bei Tensorflow, bitte helfen Sie mir bei der Anzeige des Tensors. Vielen Dank.

Code:

con_mat = tf.confusion_matrix(labels=[0, 1, 2, 3, 4, 5, 6], predictions=correct, num_classes=n_classes, 
           dtype=tf.int32, name=None) 
with tf.Session(): 
    print('Confusion Matrix: \n\n', tf.Tensor.eval(con_mat, feed_dict=None, session=None)) 

Ausgang:

tensorflow.python.framework.errors_impl.InvalidArgumentError: Shape [-1,100,88] has negative dimensions 
[[Node: Placeholder = Placeholder[dtype=DT_FLOAT, shape=[?,100,88], _device="/job:localhost/replica:0/task:0/cpu:0"]()]] 
+0

Dies ist nicht, wie Sie Dinge in TF ausführen. es sollte sein: 'mit tf.Session() als sess: print (sess.run (con_mat))' (es gibt auch andere Fehler, aber am Anfang mit den Grundlagen; insbesondere - Fehler bezieht sich auf Platzhalter - wo verwenden Sie Platzhalter in Ihrem Code?) – lejlot

Antwort

0

Es scheint, Sie sind nicht die Eingangs Platzhalter Wert Einspeisen des tensor korrekt zu berechnen.

feeddict = {your_placeholder: value} 
with tf.Session() as sess: 
    print('Confusion Matrix: \n\n', tf.Tensor.eval(con_mat, feed_dict=feeddict, session=sess)) 
+0

so sollte in meinem Fall Feeddict {y: correct} sein? während y ist der Platzhalter für Etiketten .. @Ishant Mrinal –

+0

Recht! das wird funktionieren. –

+0

Ich habe diesen Fehler, wie richtig ist im Tensor-Format: 'raise TypeError ('Der Wert eines Feeds kann nicht ein tf.Tensor Objekt.' TypeError: Der Wert eines Feeds kann nicht ein tf.Tensor Objekt. Akzeptabel Feed-Werte enthalten Python-Skalare, Strings, Listen, numpy ndarrays oder TensorHandles.' @Ishant Mrinal, was soll ich tun? –