使用Python2.7,我尝试对SVC模型的AUC和精度分数进行网格搜索。我得到的错误如下所述。
尝试进行故障排除,但没有成功。
clf = SVC(kernel = 'rbf')
parameter_grid = [
{'C': [0.1, 1, 10, 50, 100, 400],
'gamma': [0.0001, 0.001, 0.01, 0.1, 1, 10]}
]
clf_stand_acc = GridSearchCV(clf, param_grid = parameter_grid)
clf_stand_acc.fit(X_train, y_train)
y_predict_auc = clf_stand_acc.predict(X_test)
clf_stand_auc = GridSearchCV(clf, param_grid = parameter_grid, scoring = 'roc_auc')
clf_stand_auc.fit(X_train, y_train)
y_predict_auc = clf_stand_auc.predict(X_test)
print('Test of AUC: ', roc_auc_score(y_test, y_predict_auc))
预期如下输出。
测试集AUC:0.9993784757585
下面实际输出的片段。
ValueError Traceback (most recent call last)
<ipython-input-47-ef06600e0bf8> in <module>()
19 # Generate an auc object with the classifier and grid parameters.
20 clf_stand_auc = GridSearchCV(clf, param_grid = parameter_grid, scoring = 'roc_auc')
22 y_predict_auc = clf_stand_auc.predict(X_test)
23
ValueError: Data is not binary and pos_label is not specified