我想計算imagenet2012數據集中的top5,但我不知道如何在keras中執行此操作。擬合函數就可以計算出前1個準確度。如何計算keras的top5精度?
1
A
回答
8
如果你只是在topK之後,你總是可以直接調用tensorflow(你不會說你正在使用哪個後端)。
from keras import backend as K
import tensorflow as tf
top_values, top_indices = K.get_session().run(tf.nn.top_k(_pred_test, k=5))
如果你想要一個準確度度量可以將其添加到您的模型'top_k_categorical_accuracy'。
model.compile('adam', 'categorical_crossentropy', ['accuracy', 'top_k_categorical_accuracy'])
history = model.fit(X_train, y_train, nb_epoch=3, validation_split=0.2)
Train on 31367 samples, validate on 7842 samples
Epoch 1/3
31367/31367 [==============================] - 6s - loss: 0.0818 - acc: 0.9765 - top_k_categorical_accuracy: 0.9996 -
...
這個指標的默認k
是5,但是,如果你想改變這種說3,你將建立你的模型是這樣的:
top3_acc = functools.partial(keras.metrics.top_k_categorical_accuracy, k=3)
top3_acc.__name__ = 'top3_acc'
model.compile('adam', 'categorical_crossentropy', ['accuracy', top3_acc])
1
這是你在找什麼: top_k_categorical_crossentropy?
您可以選擇所需的指標,但也可以輕鬆創建自己的custom metric。
相關問題
- 1. 計算精度
- 2. 計算精度
- 3. 精確計算雙精度
- 4. 如何計算TensorFlow中的CNN精度
- 5. GPS精度計算
- 6. 不計算精度
- 7. Keras計算精確度爲+/- 1,預測值爲
- 8. java算法精度計算
- 9. 如何使用Libsvm計算「精度」 - SVM_Predict.exe
- 10. trec_eval如何計算平均精度(MAP)?
- 11. 如何計算GBM精度r
- 12. PHP的錢計算精度
- 13. Keras:精度保持爲零
- 14. Keras精度不會改變
- 15. 計算質心和精度
- 16. NSNumber計算和精度?
- 17. SQL計算輸出精度
- 18. Rcpp與四精度計算
- 19. 計算精度錯誤,R
- 20. 計算精度C++ Cplex
- 21. 高精度數值計算
- 22. 精確角度計算
- 23. C#高精度計算
- 24. 損失精度計算度兩點
- 25. 計算對數的keras層?
- 26. 計算召回和tensorflow的精度
- 27. 計算精確的速度使用GPS
- 28. 計算整個訓練集的精度
- 29. numpy中的高精度計算
- 30. 複雜計算中的浮點精度