如何解决Keras加载模型时出现的缺少层错误问题?
- 内容介绍
- 文章标签
- 相关推荐
本文共计393个文字,预计阅读时间需要2分钟。
问题描述:训练结束后,将模型保存为hdf5和yaml格式的文件。
代码内容:pythonyamlFilename=os.path.join(dir, filename)yamlModel=model.toyaml()with open(yamlFilename, 'w') as yamlFile: yamlFile.write(yamlModel)
随后load modelwith open('chk') as f: model=yaml.load(f, Loader=yaml.FullLoader)
问题描述:训练结束后,保存model为hdf5和yaml格式的文件
yamlFilename = os.path.join(dir,filename) yamlModel = model.toyaml() with open(yamlFilename, "w") as yamlFile: yamlFile.write(yamlModel)
随后load model
with open(chkptFilename,'r') as f: model_yaml = f.read() model = KM.model_from_yaml(model_yaml,customs_objects={"dict":dict}) model.load_weights(weightFilename)
但是报错
问题分析:
经过debug分析,原因出在model建立过程中前面lambda层的inbound_node列表中含有后面层,因此从上到下load时,会找不到后面层。
本文共计393个文字,预计阅读时间需要2分钟。
问题描述:训练结束后,将模型保存为hdf5和yaml格式的文件。
代码内容:pythonyamlFilename=os.path.join(dir, filename)yamlModel=model.toyaml()with open(yamlFilename, 'w') as yamlFile: yamlFile.write(yamlModel)
随后load modelwith open('chk') as f: model=yaml.load(f, Loader=yaml.FullLoader)
问题描述:训练结束后,保存model为hdf5和yaml格式的文件
yamlFilename = os.path.join(dir,filename) yamlModel = model.toyaml() with open(yamlFilename, "w") as yamlFile: yamlFile.write(yamlModel)
随后load model
with open(chkptFilename,'r') as f: model_yaml = f.read() model = KM.model_from_yaml(model_yaml,customs_objects={"dict":dict}) model.load_weights(weightFilename)
但是报错
问题分析:
经过debug分析,原因出在model建立过程中前面lambda层的inbound_node列表中含有后面层,因此从上到下load时,会找不到后面层。

