相关疑难解决方法(0)

GridSearch用于OneVsRestClassifier内的估算器

我想在SVC模型中执行GridSearchCV,但是它使用one-vs-all策略.对于后者,我可以这样做:

model_to_set = OneVsRestClassifier(SVC(kernel="poly"))
Run Code Online (Sandbox Code Playgroud)

我的问题是参数.假设我想尝试以下值:

parameters = {"C":[1,2,4,8], "kernel":["poly","rbf"],"degree":[1,2,3,4]}
Run Code Online (Sandbox Code Playgroud)

为了执行GridSearchCV,我应该做类似的事情:

 cv_generator = StratifiedKFold(y, k=10)
 model_tunning = GridSearchCV(model_to_set, param_grid=parameters, score_func=f1_score, n_jobs=1, cv=cv_generator)
Run Code Online (Sandbox Code Playgroud)

但是,然后我执行它得到:

Traceback (most recent call last):
  File "/.../main.py", line 66, in <module>
    argclass_sys.set_model_parameters(model_name="SVC", verbose=3, file_path=PATH_ROOT_MODELS)
  File "/.../base.py", line 187, in set_model_parameters
    model_tunning.fit(self.feature_encoder.transform(self.train_feats), self.label_encoder.transform(self.train_labels))
  File "/usr/local/lib/python2.7/dist-packages/sklearn/grid_search.py", line 354, in fit
    return self._fit(X, y)
  File "/usr/local/lib/python2.7/dist-packages/sklearn/grid_search.py", line 392, in _fit
    for clf_params in grid for train, test in cv)
  File "/usr/local/lib/python2.7/dist-packages/sklearn/externals/joblib/parallel.py", line 473, in __call__
    self.dispatch(function, args, kwargs)
  File "/usr/local/lib/python2.7/dist-packages/sklearn/externals/joblib/parallel.py", line …
Run Code Online (Sandbox Code Playgroud)

python machine-learning scikit-learn

37
推荐指数
3
解决办法
1万
查看次数

标签 统计

machine-learning ×1

python ×1

scikit-learn ×1