网格搜索随机森林“ RandomForestClassifier实例尚未安装”

时间:2018-12-05 00:09:23

标签: machine-learning scikit-learn random-forest grid-search

我正在尝试在随机森林分类器上进行网格搜索,我正在尝试测试不同的PCA componenet和n_estimators

  model_rf = RandomForestClassifier()
  pca_rf = Pipeline([('pca', PCA()), ('rf', RandomForestClassifier())])

  param_grid_rf = [{
                'pca__n_components': [20],
                'rf__n_estimators': [5]
                }]

  grid_cv_rf = GridSearchCV(estimator=pca_rf, cv=5,param_grid=param_grid_rf)
  grid_cv_rf.fit(x_train, y_train1)
  test_pca_evaluate = pca.transform(x_test)
  y_pred = model_rf.predict(test_pca_evaluate)#error here

在最后一行中,我收到一条错误消息“该RandomForestClassifier实例尚未安装。在使用此方法之前,先使用适当的参数调用'fit'。”

1 个答案:

答案 0 :(得分:0)

这是一个非常简单的错误-您正在调用其方法的RandomForestClassifier还不适合,这意味着您还没有调用model_rf.fit。您的grid_cv_rf对象无法容纳该对象。

我认为您想要的是grid_cv_rf.predict(x_test),因为该grid_cv_rf对象既可以进行PCA也可以进行RF拟合。