Я не могу сохранить или правильно загрузить лучшую модель контрольной точки, используя KerasClassifier.Когда я загружаю модель, я не получаю тот же результат при прогнозировании.Это архитектура моей модели:
def create_baseline():
model = Sequential()
model.add(Dense(500, input_dim=train_X.shape[1], kernel_initializer='normal', activation='sigmoid'))
model.add(Dense(1, kernel_initializer='normal', activation='sigmoid'))
sgd = SGD(lr=0.001, decay=1e-6, momentum=0.9, nesterov=True)
model.compile(loss='mse', optimizer='rmsprop', metrics = ['accuracy'])
return model
# FIT AND TRAIN THE MODEL:
checkpoint = ModelCheckpoint('models/model.hdf5', monitor='val_acc', mode='max', verbose=0, save_best_only=True)
classifier = KerasClassifier(build_fn=create_baseline, epochs=100, batch_size=10, verbose=0)
classifier.fit(train_X, train_Y, validation_split=0.33, epochs=10, batch_size=10, callbacks=[checkpoint], verbose=0)
# Predict 1:
scores = classifier.predict(test_X)
# LOAD AND USE THE SAVED MODEL:
classifier2 = KerasClassifier(build_fn=create_baseline, epochs=10, batch_size=10, verbose=0)
classifier2.model = load_model('models/model.hdf5')
# Predict 2:
scores2 = classifier2.model.predict(test_X)
Результаты и оценки2 разные.
Очень благодарен за помощь!