Tensorflow ';型号';对象没有属性';加载模式';凯拉斯

Tensorflow ';型号';对象没有属性';加载模式';凯拉斯,tensorflow,deep-learning,keras,conv-neural-network,Tensorflow,Deep Learning,Keras,Conv Neural Network,我正在尝试加载保存它的模型:model.save('myModel.h5') 模型的定义如下: self.model = VGGFace(input_tensor=input_tensor, include_top=True) for layer in self.model.layers: layer.trainable = False self.model.get_layer('fc7').trainable = True last_layer = self.model.get_l

我正在尝试加载保存它的模型:
model.save('myModel.h5')

模型的定义如下:

self.model = VGGFace(input_tensor=input_tensor, include_top=True)

for layer in self.model.layers:
    layer.trainable = False

self.model.get_layer('fc7').trainable = True
last_layer = self.model.get_layer('fc7').output
out = BatchNormalization()(last_layer)
out = Dense(self.n_outputs, activation='softmax', name='fc8')(out)
self.model = Model(input=self.model.input, output=out)
当我尝试用
model.load\u model('myModel.h5')
加载
myModel.h5
时,它抛出以下错误:

AttributeError: 'Model' object has no attribute 'load_model'
我怀疑这是因为我没有使用
顺序
模型

那么我如何加载我的模型呢?因为
model.save('myModel.h5')
似乎起作用了

谢谢

load_model()
实际上不是模型obejct的属性
load_model()
是从keras.models导入的函数,它采用文件名并返回模型obejct

您应该这样使用它:

from keras.models import load_model

model = load_model(path_to_model)
然后可以使用keras.models.load\u model(文件路径)重新实例化模型。load_model还将负责使用保存的培训配置编译模型(除非模型最初从未编译)


原因是sequential无法加载完整的模型以及仅包含优化器等的权重。要在执行
model.save('myModel.h5')
后加载完整的模型,应使用

将tensorflow导入为tf
从tensorflow进口keras
#...
myModel=tf.keras.models.load_model(“myModel.h5”)

我可以访问
model.history
加载整个模型,对吗?在尝试访问以这种方式加载的模型的历史记录时,仍然会引发错误:model.history.history->AttributeError:“Sequential”对象没有属性“history”