tf.keras.models.save_model
| Просмотреть исходный код на GitHub |
Сохраняет модель как файл TensorFlow SavedModel или HDF5.
tf.keras.models.save_model(
model, filepath, overwrite=True, include_optimizer=True, save_format=None,
signatures=None, options=None
)
Использование:
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))
Сохраненная модель содержит:
- the model's configuration (topology) - the model's weights - the model's optimizer's state (if any)
Таким образом, сохранённую модель можно повторно создать в точно таком же состоянии без какого-либо кода, используемого для определения или обучения модели.
Обратите внимание, что имена весов модели могут отличаться после загрузки. Имена включают имена модели/слоя, такие как "dense_1/kernel:0". Рекомендуется использовать свойства слоя для доступа к определённым переменным, например model.get_layer("dense_1").kernel.
Сериализация SavedModel
Путь сериализации SavedModel использует tf.saved_model.save для сохранения модели и всех отслеживаемых объектов, прикреплённых к модели (например, слоев и переменных). @tf.function-методы также сохраняются. Дополнительные отслеживаемые объекты и функции добавляются в SavedModel, чтобы модель могла быть загружена обратно как объект Keras Model.
| Аргументы | |
|---|---|
model | Экземпляр модели Keras, который требуется сохранить. |
filepath | Одно из следующего:
|
overwrite | Нужно ли перезаписывать существующую модель в целевом местоположении или попросить пользователя подтвердить вручную. |
include_optimizer | Если True, сохраняется состояние оптимизатора. |
save_format | Либо 'tf', либо 'h5', указывающее, нужно ли сохранить модель в формате TensorFlow SavedModel или HDF5. По умолчанию 'tf' в TF 2.X и 'h5' в TF 1.X. |
signatures | Сигнатуры для сохранения в SavedModel. Применимо только к формату 'tf'. Подробности см. в аргументе signatures в tf.saved_model.save. |
options | Необязательный объект tf.saved_model.SaveOptions, который определяет параметры сохранения в SavedModel. |
| Возбуждает исключение | |
|---|---|
ImportError | Если формат сохранения — hdf5, а h5py недоступен. |
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.3/api_docs/python/tf/keras/models/save_model