【发布时间】:2019-01-13 03:16:32
【问题描述】:
我想在 GridsearchCV 中创建自己的评分,下面是我的代码:
当我运行这些代码时,最后一个短语发生错误:grid_x.fit(train_x_pca, x_ref)。当我使用像“r2”这样的内置评分时
grid_x=GridSearchCV(nnw_model, para_grid, scoring='r2'),它有效。
我自己的得分定义应该有问题。
nnw_model=MLPRegressor(hidden_layer_sizes=(15,), activation='tanh', \
solver='lbfgs', learning_rate='adaptive', max_iter=1000,\
learning_rate_init=0.01, alpha=0.01)
para_grid=[{'activation': ['tanh', 'logistic', 'relu'], 'hidden_layer_sizes':\
[(15,), (17,), (19,), (21,)], 'learning_rate_init':\
[0.01,0.001,0.0001]}]
x_ref=ocd_ref['tilt_x']
def Rsq_x_cal(train_x_pca, x_ref):
nnw_model_x.fit(train_x_pca, x_ref)
train_x_out=nnw_model_x.predict(train_x_pca)
metric_x=linregress(train_x_out, x_ref)
rsq_x=metric_x[2]**2
return rsq_x
rsq_x_value=make_scorer(Rsq_x_cal, greater_is_better=True)
grid_x=GridSearchCV(nnw_model, para_grid, scoring=rsq_x_value)
grid_x.fit(train_x_pca, x_ref)
【问题讨论】:
标签: python-3.x grid-search scoring