Точность ниже, чем grid_search_cv.best_score - PullRequest
0 голосов
/ 01 апреля 2020

Я работаю над моделью 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))

В чем здесь проблема ??

...