混淆矩阵的作用:对机器学习的学习效果进行评估的一种指标。confusion matrix is to evaluate the accuracy of a classification.它的作用是评估分类的准确度。
混淆矩阵的定义:对于混淆矩阵C,C(i,j) 表示真实分类是第i类,但是预测值为第j类的观测总数。
对于二分类问题(假设1是正类):
C(0,0)表示真反类 TN(true negative) | C(0,1)表示假正类 FP(false negative) |
C(1,0)表示假反类 FP(false negative) | C(1,1)表示真正类 TP(true positive) |
混淆矩阵的实现:
通过使用scikit-learn模块计算混淆矩阵,
sklearn.metrics.confusion_matrix(y_true, y_pred, labels=None, sample_weight=None).
下面对参数进行说明:(注:表格中的数组类型在python中对应为列表list()类型)
Parameters: 参数: |
y_true : 长度为n_samples的数组类型
y_pred : 长度为n_samples的数组类型
labels : [可选参数],长度为n_classes的数组类型 (n_classes表示类别/标签个数)
sample_weight : 类似长度为n_samples的数组形式,可选参数。
|
Returns: 返回值: |
C : array, shape = [n_classes, n_classes] 返回混淆矩阵(Confusion matrix)C,shape=(n_classes, n_classes)。 |
矩阵的对角线表示正确分类的个数,非对角线的点是分类错误的情况。