Sto lavorando su un problema multi etichetta e sto cercando di determinare la precisione del mio modello.Tensorflow, calcolo dell'accuratezza multi etichetta
Il mio modello:
NUM_CLASSES = 361
x = tf.placeholder(tf.float32, [None, IMAGE_PIXELS])
y_ = tf.placeholder(tf.float32, [None, NUM_CLASSES])
# create the network
pred = conv_net(x)
# loss
cost = tf.reduce_mean(tf.nn.sigmoid_cross_entropy_with_logits(pred, y_))
# train step
train_step = tf.train.AdamOptimizer().minimize(cost)
voglio calcolare la precisione in due modi diversi
-% di tutte le etichette che si prevede correttamente -% di immagini in cui tutte le etichette sono previsti correttamente
sfortunatamente sono in grado di calcolare solo la% di tutte le etichette previste correttamente.
Ho pensato che questo codice dovrebbe calcolare% di immagini in cui tutte le etichette sono previsti correttamente
correct_prediction = tf.equal(tf.round(pred), tf.round(y_))
accuracy = tf.reduce_mean(tf.cast(correct_prediction, tf.float32))
e questo codice% di tutte le etichette che vengono predetto correttamente
pred_reshape = tf.reshape(pred, [ BATCH_SIZE * NUM_CLASSES, 1 ])
y_reshape = tf.reshape(y_, [ BATCH_SIZE * NUM_CLASSES, 1 ])
correct_prediction_all = tf.equal(tf.round(pred_reshape), tf.round(y_reshape))
accuracy_all = tf.reduce_mean(tf.cast(correct_prediction_all, tf.float32))
in qualche modo la coerenza delle etichette appartenenza a una immagine è persa e non sono sicuro del perché.
Grazie funziona come un fascino, non ho capito bene che il reduce_min racchiude tutte le etichette di una sola immagine insieme? – MaMiFreak
Ci vorrà il minimo di corrette_prediction per ogni elemento del batch. Questo minimo è 1 se tutti gli elementi sono 1 (ovvero tutte le previsioni sono corrette) e 0 se almeno un elemento è False (e uguale a 0) –
Ho provato questo approccio, ma ottengo lo stesso valore di accuratezza per ogni epoca: 'Train precisione: 0.984375 Precisione del test: 0.984375'. Qualche idea del perché accada questo? https://stackoverflow.com/questions/49210520/cant-get-correct-acccuracy-for-multi-label-prediction – Peterdk