LinearSVC的ROC曲线

时间:2019-03-04 23:05:39

标签: python matplotlib scikit-learn svm

我目前正在努力绘制LinearSVC模型的ROC曲线。由于LinearSVC模型只能调用decision_function()来计算y_score(与通常的predict_proba()相反),因此我很难计算出fprtpr每个班级。尝试时

for i in range(n_classes):
    fpr[i], tpr[i], _ = roc_curve(y_test[:, i], y_score[:, i])
    roc_auc[i] = auc(fpr[i], tpr[i])

我得到IndexError: too many indices for array。切换到this答案中提供的解决方案将意味着对标签进行二值化,这是我想避免的。具有线性核的普通SVC模型不允许我为基于l1的特征选择设置l1损失,因此也应避免这种情况。

关于如何解决此问题的任何想法?

0 个答案:

没有答案