2017-04-14 6 views
1

をkerasていない:model.save('myModel.h5')「モデル」オブジェクトが属性「load_modelは、」私はそれがで保存されたモデルをロードしようとしている

モデルは次のように定義されています。私がしようとすると、

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) 

私はSequentialモデルで作業していないよので、それはだsupose

AttributeError: 'Model' object has no attribute 'load_model' 

model.load_model('myModel.h5')myModel.h5をロードするために、それは私に次のエラーがスローされます。

どうすればモデルをロードできますか? model.save('myModel.h5')が動作しているようです。

感謝!!!!

答えて

3

load_model()は実際にモデルの属性ではありません。 load_model()は、keras.modelsからインポートしてファイル名を取得し、モデルオブジェクトを返す関数です。

あなたはこのようにそれを使用する必要があります。

from keras.models import load_model 

model = load_model(path_to_model) 

You can then use keras.models.load_model(filepath) to reinstantiate your model. load_model will also take care of compiling the model using the saved training configuration (unless the model was never compiled in the first place). from source

+0

AAHは大丈夫!!今それは動作します、ありがとう;) – Eric

+0

非常に歓迎:) –

+0

私はモデル全体を読み込む 'model.history'にアクセスできますか? – Eric

関連する問題