Пытаясь построить мультиклассовую модель логистической регрессии, я хотел построить кривую ROC для сравнения один против остальных для всех классов.
Это код, который я использовал, чтобы попытаться сгенерироватьROC-графики,
from sklearn.preprocessing import label_binarize
y_test1 = label_binarize(y_test, classes=[0,1,2])
y_pred1 = label_binarize(y_pred, classes=[0,1,2])
for i in range(3):
fpr[i], tpr[i], threshold = metrics.roc_curve(y_test1[:, i], y_pred1[:, i])
roc_auc[i] = metrics.auc(fpr[i], tpr[i])
for i in range(3):
plt.figure()
plt.plot(fpr[i], tpr[i], label='ROC curve (area = %0.2f)' % roc_auc[i])
plt.plot([0, 1], [0, 1], 'k--')
plt.xlim([0.0, 1.0])
plt.ylim([0.0, 1.05])
plt.xlabel('False Positive Rate')
plt.ylabel('True Positive Rate')
plt.title('Receiver operating characteristic for Class ' + str(i) + ' VS rest')
plt.legend(loc="lower right")
plt.show()
Изначально я был в состоянии создавать графики, но после того, как у меня возникли проблемы с некоторыми другими элементами, мне пришлось переустановить Anaconda.После установки я не могу получить графики, и вместо этого я получил это сообщение об ошибке:
ValueError: setting an array element with a sequence.
Не уверен, почему это вызывает ошибку сейчас, но не ранее.Спасибо!