2016-06-30 5 views
1

Mein CNN gibt ein Array von Werten aus, die ich auf den größten Wert prüfen und als vorausgesagte Klasse nehmen muss. Beispiel:Wie kann ich das Vertrauensniveau in einem CNN mit Tensorflow implementieren?

-148.7290802 , -133.90687561, -90.850914 , -135.78356934, 
    -128.6325531 , -125.76812744, -85.41909027, -72.3269577 , 
    -103.51300812 

Für Klassenindex 6.

Nun, wie kann ich das Vertrauen dieses Ergebnis?

Mein Setup ist:

predict_op = [tf.argmax(py_x,1), py_x] 
cost = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(py_x, Y)) 
train_op = tf.train.RMSPropOptimizer(learningRate, decayRate).minimize(cost) 

Aktualisiert Code jetzt zurückkehren: [[0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 1. 0.]]

predict_op = tf.nn.softmax(py_x) 
cost = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(py_x, Y)) 
train_op = tf.train.RMSPropOptimizer(learningRate, decayRate).minimize(cost) 
+0

Ihr Rückgabewert ist, was Sie ** train_op ** zuweisen? – Prune

+0

Nein, train_op ist der Tensor für das Training. Der erwartete Rückgabewert ist in Y. Für die Testvorhersage werte ich predict_op aus, das den Wert – Dellein

Antwort

2

softmax in der letzten Stufe bewerben; Dies wird zu späteren Wahrscheinlichkeiten im Endstadium führen. Du benutzt bereits softmax im Setup; Verwenden Sie es einfach auf dem letzten Vektor, um es in RMS-Wahrscheinlichkeiten zu konvertieren. Das Vertrauen dieser Vorhersage ist einfach die Wahrscheinlichkeit des obersten Elements.

Für eine schnelle Illustration, siehe Wikipedia page unter Generalisierung und Statistik. Dieser Abschnitt beschreibt auch die Zuverlässigkeit des Modells insgesamt.

+0

zurückgibt. Benötige ich nicht den Ausgabewert für den Softmax? – Dellein

+0

Nach der Anwendung von Softmax bekomme ich [[1. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]] [[0. 0. 0. 0. 0 0. 0. 0. 0. 0. 0. 1. 0.]] Sollte es nicht zwischen 0-1 sein? – Dellein

+0

Ich bin perplex davon: Sie haben SoftMax anstelle Ihrer vorherigen Auswertung angewendet, und jetzt haben Sie 13 Werte anstelle von 9 ??? – Prune