我有多标签问题。我将OneVsRestClassifier与SVM一起使用。现在我想通过GridSearchCV调整参数。我试过了
GridSearchCV(estimator=OneVsRestClassifier(svm.SVC(probability=True)), param_grid=dict(C=Cs),
n_jobs=-1)
它会返回各种错误信息。
如何使用OneVsRestClassifier进行GridSearchCV?也许我应该做一个管道?但是,看起来OneVsRestClassifier与SVM之间的关系并不像预期的管道函数那样。
我也试过下面的代码。但是,我无法将参数传递给svm.SVC。
parameters = {'kernel':('linear', 'rbf'), 'C':[1, 10]}
svr = OneVsRestClassifier(svm.SVC(probability=True))
clf = grid_search.GridSearchCV(svr, parameters)
clf.fit(X_ptrain, y_ptrain)
答案 0 :(得分:1)
您可以使用估算器来引用SVC的参数,如下所示:
parameters = {'estimator__kernel':('linear', 'rbf'), 'estimator__C':[1, 10]}
svr = OneVsRestClassifier(svm.SVC(probability=True))
clf = grid_search.GridSearchCV(svr, parameters)
clf.fit(X_ptrain, y_ptrain)