tf.keras.models.load_model  |  TensorFlow v2.16.1 (original) (raw)

tf.keras.models.load_model

Stay organized with collections Save and categorize content based on your preferences.

Loads a model saved via model.save().

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

Used in the notebooks

Used in the guide Used in the tutorials
Introduction to modules, layers, and models Migrate `tf.feature_column`s to Keras preprocessing layers Migrate the SavedModel workflow Migrating your TFLite code to TF2 Multi-GPU and distributed training Save and load a model using a distribution strategy Save and load models Distributed training with Keras Multi-worker training with Keras Transfer learning with TensorFlow Hub
Args
filepath str or pathlib.Path object, path to the saved model file.
custom_objects Optional dictionary mapping names (strings) to custom classes or functions to be considered during deserialization.
compile Boolean, whether to compile the model after loading.
safe_mode Boolean, whether to disallow unsafe lambda deserialization. When safe_mode=False, loading an object has the potential to trigger arbitrary code execution. This argument is only applicable to the Keras v3 model format. Defaults to True.
Returns
A Keras model instance. If the original model was compiled, and the argument compile=True is set, then the returned model will be compiled. Otherwise, the model will be left uncompiled.

Example:

model = keras.Sequential([
    keras.layers.Dense(5, input_shape=(3,)),
    keras.layers.Softmax()])
model.save("model.keras")
loaded_model = keras.saving.load_model("model.keras")
x = np.random.random((10, 3))
assert np.allclose(model.predict(x), loaded_model.predict(x))

Note that the model variables may have different name values (var.name property, e.g. "dense_1/kernel:0") after being reloaded. It is recommended that you use layer attributes to access specific variables, e.g. model.get_layer("dense_1").kernel.

Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates. Some content is licensed under the numpy license.

Last updated 2024-06-07 UTC.