【发布时间】:2018-01-06 07:02:46
【问题描述】:
所以我正在用 RandomForest 和 GridsearchCV 做一些参数的事情。这是我的代码。
#Import 'GridSearchCV' and 'make_scorer'
from sklearn.model_selection import GridSearchCV
from sklearn.metrics import make_scorer
Create the parameters list you wish to tune
parameters = {'n_estimators':[5,10,15]}
#Initialize the classifier
clf = GridSearchCV(RandomForestClassifier(), parameters)
#Make an f1 scoring function using 'make_scorer'
f1_scorer = make_scorer(f1_scorer)
#Perform grid search on the classifier using the f1_scorer as the scoring method
grid_obj = GridSearchCV(clf, param_grid=parameters, scoring=f1_scorer,cv=5)
print(clf.get_params().keys())
#Fit the grid search object to the training data and find the optimal parameters
grid_obj = grid_obj.fit(X_train_100,y_train_100)
所以问题是以下错误:“ValueError: Invalid parameter max_features for estimator GridSearchCV。使用estimator.get_params().keys()检查可用参数列表。”
我遵循了错误给出的建议, print(clf.get_params().keys()) 的输出如下。但是,即使我将这些标题复制并粘贴到我的参数字典中,我仍然会收到错误消息。我一直在寻找堆栈溢出,大多数人都在使用与我非常相似的参数字典。任何人都知道如何解决这个问题?再次感谢!
dict_keys(['pre_dispatch', 'cv', 'estimator__max_features', 'param_grid', 'refit', 'estimator__min_impurity_split', 'n_jobs', 'estimator__random_state', 'error_score', 'verbose', 'estimator__min_samples_split', 'estimator__n_jobs'、'fit_params'、'estimator__min_weight_fraction_leaf'、'scoring'、'estimator__warm_start'、'estimator__criterion'、'estimator__verbose'、'estimator__bootstrap'、'estimator__class_weight'、'estimator__oob_depth'、'iid'、'estimator'、'estimator__max ', 'estimator__max_leaf_nodes', 'estimator__min_samples_leaf', 'estimator__n_estimators', 'return_train_score'])
【问题讨论】:
标签: python-3.x machine-learning random-forest grid-search