Scikit learn GridSearchCV最佳模型CV历史记录

Scikit learn GridSearchCV最佳模型CV历史记录,scikit-learn,keras,Scikit Learn,Keras,我正在尝试使用GridSearchCV和KerasRegressionor进行超参数搜索。Keras model.fit函数本身允许使用历史对象查看“损失”和“val_损失”变量 使用GridSearchCV时,是否可以查看“loss”和“val_loss”变量 下面是我用来进行gridsearch的代码: model = KerasRegressor(build_fn=create_model_gridsearch, verbose=0) layers = [[16], [16,8]] act

我正在尝试使用GridSearchCV和KerasRegressionor进行超参数搜索。Keras model.fit函数本身允许使用历史对象查看“损失”和“val_损失”变量

使用GridSearchCV时,是否可以查看“loss”和“val_loss”变量

下面是我用来进行gridsearch的代码:

model = KerasRegressor(build_fn=create_model_gridsearch, verbose=0)
layers = [[16], [16,8]]
activations  =  ['relu' ]
optimizers = ['Adam']
param_grid = dict(layers=layers, activation=activations, input_dim=[X_train.shape[1]], output_dim=[Y_train.shape[1]], batch_size=specified_batch_size, epochs=num_of_epochs, optimizer=optimizers)
grid = GridSearchCV(estimator=model, param_grid=param_grid, scoring='neg_mean_squared_error', n_jobs=-1, verbose=1, cv=7)

grid_result = grid.fit(X_train, Y_train)

# summarize results
print("Best: %f using %s" % (grid_result.best_score_, grid_result.best_params_))
means = grid_result.cv_results_['mean_test_score']
stds = grid_result.cv_results_['std_test_score']
params = grid_result.cv_results_['params']
for mean, stdev, param in sorted(zip(means, stds, params), key=lambda x: x[0]):
    print("%f (%f) with: %r" % (mean, stdev, param))

def create_model_gridsearch(input_dim, output_dim, layers, activation, optimizer):
    model = Sequential()

    for i, nodes in enumerate(layers):
        if i == 0:
            model.add(Dense(nodes, input_dim=input_dim))
            model.add(Activation(activation))
        else:
            model.add(Dense(nodes))
            model.add(Activation(activation))
    model.add(Dense(output_dim, activation='linear'))

    model.compile(optimizer=optimizer, loss='mean_squared_error')

    return model
如何获得最佳模型、网格结果、最佳估计器模型的每个历元的训练和CV损失


没有像grid\u result.best\u estimator\u.model.history.keys()这样的变量历史是隐藏得很好的。我在一个房间里找到了它

grid_result.best_estimator_.model.model.history.history

以上答案略有变化。
“网格结果。最佳估计量。模型。历史。历史”将给出历史对象

由于某些原因,我无法看到验证丢失。你遇到过同样的问题吗?谢谢你的回答。在我的例子中,
grid\u model.best\u estimator\u.model.history.history
运行良好。