我有Keras神經網絡,並且使用checkpoint
回調來保存模型,只要它超過了之前的驗證分數。我如何在Keras上保存的模型重新運行驗證
我可以加載模型早在很輕鬆地使用
model = keras.models.load_model("savedcheckpointfilename.h5")
然後我想保存的模型之前,從上次劃時代提取loss
和val_loss
值。
我該怎麼做?
我已經嘗試過運行另一個培訓時代,但是我想這會改變權重。我不清楚到底使用了什麼驗證集,因爲Keras在訓練過程中自動化了這個驗證集,因此看不到我如何運行明確的預測與驗證數據(作爲訓練集的哪部分保留用於驗證未公開)AFAICS )。
從一點挖掘,它看起來像我可以保存從fit函數返回的歷史記錄,至少看到歷史,但我仍然希望能夠重新評估驗證。看起來歷史對象也將驗證數據存儲在驗證字段中,但尚不清楚如何將其傳遞到預測/評估中。 –
我不知道驗證數據是什麼;我將一個訓練集和一個validation_split(0.1)傳遞給Keras的fit()函數。理論上,我可以使用fit的validation_data參數傳入我自己的validation_data,但是在窗口中存在一個錯誤,因爲這不起作用,因此使用validation_data而不是validation_split對我來說不是一個可行的解決方法。我將嘗試挖掘該錯誤的參考,無論哪種方式,在使用validation_split方法時如何重新評估驗證損失是個合法的問題。 –