赞
踩
出现该错误是因为要保存的model中包含了自定义的层(Custom Layer),导致加载模型的时候无法解析该Layer。详见can not load_model() if my model contains my own Layer
该issue下的解决方法不够全,综合了一下后可得完整解决方法如下:
在load_model函数中添加custom_objects参数,该参数接受一个字典,键值为自定义的层:
model = load_model(model_path, custom_objects={'AttLayer':
AttLayer}) # 假设自定义的层的名字为AttLayer
添加该语句后,可能会解决问题,也可能出现新的Error:
init() got an unexpected keyword argument ‘name’, 为解决该Error,可以参照keras-team的写法,在自定义的层中添加get_config函数,该函数定义形如:
def get_config(self):
config = {
'attention_dim&#
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。