📅  最后修改于: 2023-12-03 15:17:40.057000             🧑  作者: Mango
本文将介绍如何在 Keras 中保存深度学习模型。我们将了解如何使用 Keras 的 Model.save()
和 model_from_json()
和 model_from_yaml()
方法来保存和加载模型。
在 Keras 中,我们可以使用 Model.save()
方法将模型保存到磁盘。Model.save()
方法接受包含模型结构、权重和优化器状态的单个文件路径。
from keras.models import Sequential
from keras.layers import Dense
# 创建简单的模型
model = Sequential()
model.add(Dense(10, input_dim=8, activation='relu'))
model.add(Dense(1, activation='sigmoid'))
# 编译模型
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
# 训练模型
model.fit(X_train, y_train, epochs=50, batch_size=32)
# 保存模型
model.save('my_model.h5')
在上面的代码中,我们使用 Model.save()
方法将模型保存到名为 my_model.h5
的文件中。
要加载模型,我们可以使用 Keras 的 model_from_json()
和 model_from_yaml()
函数。这两个函数都接受包含模型结构的 JSON 或 YAML 文件作为参数,并返回 Keras 模型对象。
from keras.models import model_from_json
# 加载模型结构
with open('my_model.json', 'r') as f:
model_json = f.read()
# 加载模型
model = model_from_json(model_json)
# 加载模型权重
model.load_weights('my_model_weights.h5')
在上面的代码中,我们使用 model_from_json()
函数从 JSON 文件中加载模型结构,然后使用 load_weights()
方法加载模型权重。
请注意,我们还可以使用 model_from_yaml()
函数从 YAML 文件中加载模型结构。
在本文中,我们学习了如何在 Keras 中保存和加载深度学习模型。我们学习了如何使用 Model.save()
和 model_from_json()
和 model_from_yaml()
方法来处理模型。现在你可以将训练好的模型保存到磁盘并在需要时加载它们。