Я работаю над моделью CNN, я пытаюсь сделать GridSearchCV для моей модели, используя этот код:
from tensorflow.keras.wrappers.scikit_learn import KerasClassifier
from sklearn.model_selection import GridSearchCV, KFold
model = KerasClassifier(build_fn=create_model, batch_size=250, verbose=0)
param_grid = {'dropout_rate':[0,0.05],
'lrate':[0.00004, 0.00006],
'epochs':[30],
'batch_size':[75, 50]}
grid = GridSearchCV(estimator=model, param_grid=param_grid, cv=5)
model = grid.fit(train_Images, y_train, validation_data=(test_Images, y_test))
# summarize results
print("Best: %f using %s" % (model.best_score_, model.best_params_))
Вот результат, который я получил: Лучший: 0.897916 с использованием {'batch_size' : 75, 'dropout_rate': 0, 'epochs': 30, 'lrate': 4e-05}
Но, если я использую те же данные и те же параметры, что и моя точность, составляет около 0,8.
model = create_model(dropout_rate = 0, lrate=0.00004)
batch_size = 75
epochs = 30
# train model
history = model.fit(train_Images, y_train, batch_size=batch_size,
epochs=epochs, validation_data=(test_Images, y_test))
В чем здесь проблема ??