我有一个多类分类问题,下面的代码可以在多类级别对数据进行分类。
from sklearn import datasets
from sklearn.preprocessing import label_binarize
from sklearn.multiclass import OneVsRestClassifier
from sklearn.model_selection import cross_val_predict
from sklearn.discriminant_analysis import QuadraticDiscriminantAnalysis as QDA
iris = datasets.load_iris()
X = iris.data
y = iris.target
# Binarize the output
y_bin = label_binarize(y, classes=[0, 1, 2])
n_classes = y_bin.shape[1]
clf = OneVsRestClassifier(QDA())
y_score = cross_val_predict(clf, X, y, cv=10 ,method='predict_proba')
如何使用上面的代码计算此分类器的性能度量(下面列出(?
accuracy
specificity
sensitivity
presison
mcc
f1
Recall
谢谢。。
你应该能够做到这一点:
from sklearn.metrics import classification_report
print(classification_report(y_test,y_pred))
在这种情况下,根据我的理解,y_test
是您定义为y
的,y_pred
可以通过以下方式轻松计算:
y_pred = clf.predict(X)
您可以在此处找到有关指标的更多信息,并在维基百科中找到一些解释,请记住对于多标签类,真负和真正的概念应该有不同的理解。