Keras学习笔记---保存model文件和载入model文件

来源:互联网 发布:linux 客户端工具 编辑:程序博客网 时间:2024/06/13 04:46

保存keras的model文件和载入keras文件的方法有很多。现在分别列出,以便后面查询。

keras中的模型主要包括model和weight两个部分。


保存model部分的主要方法:一是通过json文件

Json文件

# serialize model to JSONmodel_json = model.to_json()with open("model.json", "w") as json_file:    json_file.write(model_json)

Yaml文件

# save as YAMLyaml_string = model.to_yaml()

保存权重的方法:通过保存权重(系数)

HDF5文件

# serialize weights to HDF5model.save_weights("model.h5")print("Saved model to disk")


同时保存model和权重的方式:

from keras.models import load_modelmodel.save('model_weight.h5')  # creates a HDF5 file 'my_model.h5'


载入model的方法
json&hdf5

# load json and create modeljson_file = open('model.json', 'r')loaded_model_json = json_file.read()json_file.close()loaded_model = model_from_json(loaded_model_json

from keras.models import load_modelmodel = load_model('model.h5')

载入权重

# load weights into new modelloaded_model.load_weights("model.h5")print("Loaded model from disk")


如果你需要加载权重到不同的网络结构(有些层一样)中,例如fine-tune或transfer-learning,你可以通过层名字来加载模型:


model.load_weights('my_model_weights.h5', by_name=True)