我正在使用CNN进行面部表情识别。我正在使用Keras和Tensorflow作为后端。我的模型保存为h5格式。
我想重新训练我的网络,并使用VGG模型微调我的模型。
我怎么能用keras做到这一点?
答案 0 :(得分:3)
保存模型架构和权重:
json_string = model.to_json()
model.save_weights('model_weights.h5')
加载模型架构和权重:
from keras.models import model_from_json
model = model_from_json(json_string)
model.load_weights('model_weights.h5')
从这里再次开始训练以进行微调。我希望这会有所帮助。
答案 1 :(得分:1)
您可以使用Keras model.save(filepath)
功能。
本YouTube视频中的示例讨论了各种Keras保存和加载技术的详细信息:Save and load a Keras model
model.save(filepath)
保存:
要加载此已保存的模型,请使用以下命令:
from keras.models import load_model
new_model = load_model(filepath)
如果您使用model.to_json()
,则只会保存模型的体系结构。此外,如果您使用model.save_weights()
,则只能保存模型的权重。使用这两种替代保存技术,您不会保存训练配置(丢失,优化器),也不会保存优化器的状态。