我用model.save()
保存了一个模型。我正在尝试重新加载模型并添加一些层和优化一些超参数,但是,它抛出了attributerror。
使用load_model()
加载模型。
我想我不知道如何将图层添加到保存的图层。如果有人能带我来这里,那就太好了。我是一个深入学习和使用keras的新手,所以我的请求很可能是愚蠢的。
代码段:
prev_model = load_model('final_model.h5') # loading the previously saved model.
prev_model.add(Dense(256,activation='relu'))
prev_model.add(Dropout(0.5))
prev_model.add(Dense(1,activation='sigmoid'))
model = Model(inputs=prev_model.input, outputs=prev_model(prev_model.output))
以及由此引发的错误:
Traceback (most recent call last):
File "image_classifier_3.py", line 39, in <module>
prev_model.add(Dense(256,activation='relu'))
AttributeError: 'Model' object has no attribute 'add'
我知道添加层可以在新的Sequential()模型上工作,但是我们如何添加到现有的保存模型?
add
方法只出现在sequential models(^{load_model
将始终返回一个Model
实例,这是最通用的类。你可以看看这个例子,看看如何组成不同的模型,但最终的想法是,一个
Model
的行为与任何其他层都非常相似。所以你应该能够:这是因为加载的模型是函数类型而不是顺序模型。因此,您必须使用这里描述的函数API:(https://keras.io/getting-started/functional-api-guide/)。
最后,正确的函数是这样的:
相关问题 更多 >
编程相关推荐