[英]Training and evaluating accuracies different in keras LSTM model: why does evaluation not produce same results as during training?
[英]Different results in training and evaluation of the same batch in Keras
如何進入以下情況?
In[20] model.test_on_batch(x, y)
Out[20]: [4.861001, 0.0]
In[21]: model.train_on_batch(x, y)
Out[21]: [0.019215763, 0.99609375]
這兩個輸出值分別對應於二進制交叉熵和二進制精度。
即, 同一批次上模型的訓練和測試結果完全不同。 培訓結果大概是好的。 預測(帶有model.predict
)也不正確。
在Tensorflow 1.8.0下運行Keras 2.2.4。
如果您使用具有Dropout或BatchNormalization層的模型,這是完全正常的,因為它們在訓練和測試期間具有不同的行為。 如果添加任何正則化項,則將在測試期間將其禁用,這將影響您從model.evaluate
獲得的任何損失。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.