9.1 Save Load Model
使用 Keras 原生 .keras 格式儲存、載入模型,並確認載入後的模型可以重新評估與推論。
1. 學習目標
模型訓練完成後,通常不會只停留在 notebook 中。我們需要把模型保存起來,日後才能重新載入、做推論、部署到 API、轉換成 TensorFlow Lite 或 TensorFlow.js。
本篇示範最基本也最重要的流程:
2. 建議使用什麼格式?
Keras 目前建議使用原生 .keras 格式保存完整模型。這個格式會保存模型架構、權重與訓練設定,適合一般 Keras 模型保存與重新載入。
Note
若要部署到 TensorFlow Serving 或跨平台工具,也可能使用 SavedModel、TensorFlow Lite 或 TensorFlow.js。這些會在後續部署章節介紹。
3. 標準實作流程
本篇使用 Fashion-MNIST 建立一個小型分類模型,訓練後儲存為 .keras,再重新載入確認模型結果一致。
4. 儲存與載入後要檢查什麼?
- 檔案是否成功建立。
load_model()是否可以正常載入。- 載入後的 test accuracy 是否合理。
- 載入後是否可以
predict()。 - 類別名稱、前處理流程是否有一併保存或另外記錄。
5. 如何套用自己的模型?
自己的模型訓練完成後,只要呼叫:
下次使用時:
如果你的前處理不在模型裡,例如使用 scikit-learn 的 StandardScaler,則 scaler 也要另外保存,否則推論時資料尺度會不一致。
6. 小結
保存與載入模型是從教學走向實務的第一步。只要能穩定完成 save/load/predict,後續才有辦法延伸到 API 部署、行動裝置部署或瀏覽器端推論。