当使用GridsearchCV与MLPRegressor进行回归时,我发现GridSearchCV的得分(使用neg_mean_absolute_error)和预测的得分(mean_absolute_error(y_test,gs.predict(X_test))不同。 我知道GridsearchCV最大化,因此negMAE实际上不必为负数。 基于其他线程的见解,我假设两个得分之间的差异是由于交叉验证而引起的,但我想知道两个得分中哪个得分更可靠,换句话说:调优时我应该看哪个得分参数?如果我将重点放在mean_absolute_error上,而不是用neg_MAE进行评分,则必须“手动”进行调整。
gs = GridSearchCV(regressor, parameters,
cv=10, scoring = "neg_mean_absolute_error",
verbose=10, refit=True, n_jobs=-1)
Best score: -42.315280064093805
using: {'activation': 'identity', 'alpha': 0.0001, 'batch_size':
'auto', 'hidden_layer_sizes': (15, 8, 1), 'learning_rate':
'invscaling', 'max_iter': 1500, 'random_state': 11, 'solver': 'adam'}
"MAE train:", mean_absolute_error(y_train, gs.predict(X_train))
"MAE test:", mean_absolute_error(y_test, gs.predict(X_test))
MAE train: 42.094584344047874
MAE test: 42.95719446785037