save methodModel.save(filepath, overwrite=True, zipped=None, **kwargs)
Saves a model as a .keras file.
Note that model.save() is an alias for keras.saving.save_model().
The saved .keras file contains:
Thus models can be reinstantiated in the exact same state.
Arguments
str or pathlib.Path object.
The path where to save the model. Must end in .keras
(unless saving the model as an unzipped directory
via zipped=False)..keras
archive (default when saving locally), or as an
unzipped directory (default when saving on the
Hugging Face Hub).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 = keras.random.uniform((10, 3))
assert np.allclose(model.predict(x), loaded_model.predict(x))
save_model functionkeras.saving.save_model(model, filepath, overwrite=True, zipped=None, **kwargs)
Saves a model as a .keras file.
Arguments
str or pathlib.Path object. Path where to save the model..keras
archive (default when saving locally), or as an unzipped directory
(default when saving on the Hugging Face Hub).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 = keras.random.uniform((10, 3))
assert np.allclose(model.predict(x), loaded_model.predict(x))
Note that model.save() is an alias for keras.saving.save_model().
The saved .keras file is a zip archive that contains:
Thus models can be reinstantiated in the exact same state.
load_model functionkeras.saving.load_model(filepath, custom_objects=None, compile=True, safe_mode=True)
Loads a model saved via model.save().
Arguments
str or pathlib.Path object, path to the saved model file.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.