本章內容將為大家介紹 Keras 中的模型評估和模型預測。下面,讓我們一起來了解一下模型評估。
評估是模型開發(fā)過程中的一個過程,用于檢查模型是否最適合給定的問題和相應的數(shù)據(jù)。Keras 模型提供了一個函數(shù),evaluate 對模型進行評估。它有三個主要論點:
verbose
: true
或false
讓我們使用測試數(shù)據(jù)評估我們在上一章中創(chuàng)建的模型:
score = model.evaluate(x_test, y_test, verbose = 0)
print('Test loss:', score[0])
print('Test accuracy:', score[1])
執(zhí)行上面的代碼會輸出下面的信息:
0
測試準確率為98.28%。我們創(chuàng)建了一個最佳模型來識別手寫數(shù)字。從積極的方面來看,我們仍然可以改進我們的模型。
預測是最后一步,也是我們對模型生成的預期結果。Keras 提供了一種方法predict
來得到訓練模型的預測。預測方法的簽名如下:
predict(
x,
batch_size = None,
verbose = 0,
steps = None,
callbacks = None,
max_queue_size = 10,
workers = 1,
use_multiprocessing = False
)
在這里,除了第一個參數(shù)外,所有參數(shù)都是可選的,它指的是未知的輸入數(shù)據(jù)。應保持形狀以獲得正確的預測。
讓我們使用以下代碼對上一章中創(chuàng)建的 MPL 模型進行預測:
pred = model.predict(x_test)
pred = np.argmax(pred, axis = 1)[:5]
label = np.argmax(y_test,axis = 1)[:5]
print(pred)
print(label)
predict
函數(shù)。上述應用程序的輸出如下:
[7 2 1 0 4]
[7 2 1 0 4]
兩個數(shù)組的輸出是相同的,這表明我們的模型正確預測了前五個圖像。
更多建議: