當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python tf.keras.models.load_model用法及代碼示例


加載通過 model.save() 保存的模型。

用法

tf.keras.models.load_model(
    filepath, custom_objects=None, compile=True, options=None
)

參數

  • filepath 以下之一:
    • 字符串或pathlib.Path 對象,保存模型的路徑
    • h5py.File 從中加載模型的對象
  • custom_objects 可選字典映射名稱(字符串)到反序列化期間要考慮的自定義類或函數。
  • compile 布爾值,加載後是否編譯模型。
  • options 可選的 tf.saved_model.LoadOptions 對象,指定從 SavedModel 加載的選項。

返回

  • 一個 Keras 模型實例。如果原始模型已編譯並使用優化器保存,則將編譯返回的模型。否則,模型將未編譯。在返回未編譯模型的情況下,如果 compile 參數設置為 True ,則會顯示警告。

拋出

  • ImportError 如果從 hdf5 文件加載並且 h5py 不可用。
  • IOError 如果保存文件無效。

用法:

model = tf.keras.Sequential([
    tf.keras.layers.Dense(5, input_shape=(3,)),
    tf.keras.layers.Softmax()])
model.save('/tmp/model')
loaded_model = tf.keras.models.load_model('/tmp/model')
x = tf.random.uniform((10, 3))
assert np.allclose(model.predict(x), loaded_model.predict(x))

請注意,模型權重在加載後可能具有不同的作用域名稱。範圍名稱包括模型/層名稱,例如 "dense_1/kernel:0" 。建議您使用圖層屬性來訪問特定變量,例如model.get_layer("dense_1").kernel

相關用法


注:本文由純淨天空篩選整理自tensorflow.org大神的英文原創作品 tf.keras.models.load_model。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。