使用 GridsearchCV 提取管道中最佳模型的 MLPRegressor 属性(n_iter_)?
Extract an MLPRegressor attributes (n_iter_ ) for the best model in a pipeline with GridsearchCV?
我用管道制作了一个 GridsearchCV
,我想提取管道组件 (MLPRegressor) 的一个属性 (n_iter_
) 以获得最佳模型。
我正在使用 Python 3.0.
创建管道
pipeline_steps = [('scaler', StandardScaler()), ('MLPR', MLPRegressor(solver='lbfgs', early_stopping=True, validation_fraction=0.1, max_iter=10000))]
MLPR_parameters = {'MLPR__hidden_layer_sizes':[(50,), (100,), (50,50)], 'MLPR__alpha':[0.001, 10, 1000]}
MLPR_pipeline = Pipeline(pipeline_steps)
gridCV_MLPR = GridSearchCV(MLPR_pipeline, MLPR_parameters, cv=kfold)
gridCV_MLPR.fit(X_train, y_train)
当我想用 gridCV_GBR.best_params_
提取最佳模型时,我只有 GridsearchCV 的结果:
{'MLPR__alpha': 0.001, 'MLPR__hidden_layer_sizes': (50,)}
但是我想要gridCV_MLPR
的最佳模型使用的MLPRegressor的迭代次数。
如何通过 GridsearhCV 管道使用为 MLPRegressor()
设计的 n_iter_
属性?
感谢您的帮助,
我找到了解决方案:
gridCV_MLPR.best_estimator_.named_steps['MLPR'].n_iter_
由于 gridCV_MLPR.best_estimator_
是管道,我们需要 select MLPRegressor 参数 .named_steps['MLPR']
.
非常感谢您非常非常快速的回答...
我用管道制作了一个 GridsearchCV
,我想提取管道组件 (MLPRegressor) 的一个属性 (n_iter_
) 以获得最佳模型。
我正在使用 Python 3.0.
创建管道
pipeline_steps = [('scaler', StandardScaler()), ('MLPR', MLPRegressor(solver='lbfgs', early_stopping=True, validation_fraction=0.1, max_iter=10000))]
MLPR_parameters = {'MLPR__hidden_layer_sizes':[(50,), (100,), (50,50)], 'MLPR__alpha':[0.001, 10, 1000]}
MLPR_pipeline = Pipeline(pipeline_steps)
gridCV_MLPR = GridSearchCV(MLPR_pipeline, MLPR_parameters, cv=kfold)
gridCV_MLPR.fit(X_train, y_train)
当我想用 gridCV_GBR.best_params_
提取最佳模型时,我只有 GridsearchCV 的结果:
{'MLPR__alpha': 0.001, 'MLPR__hidden_layer_sizes': (50,)}
但是我想要gridCV_MLPR
的最佳模型使用的MLPRegressor的迭代次数。
如何通过 GridsearhCV 管道使用为 MLPRegressor()
设计的 n_iter_
属性?
感谢您的帮助,
我找到了解决方案:
gridCV_MLPR.best_estimator_.named_steps['MLPR'].n_iter_
由于 gridCV_MLPR.best_estimator_
是管道,我们需要 select MLPRegressor 参数 .named_steps['MLPR']
.
非常感谢您非常非常快速的回答...