sklearn.metrics —— 混淆矩阵及其绘制、Accuracy/Precision/Recall/F1-score

1. confusion_matrix

sklearn 关于 confusion_matrix 混淆矩阵接口的定义十分清楚:sklearn.metrics.confusion_matrix(y_true, y_pred, labels=None, sample_weight=None)

>>> from sklearn.metrics import confusion_matrix
>>> y_true = [2, 0, 2, 2, 0, 1]
>>> y_pred = [0, 0, 2, 2, 0, 2]
>>> confusion_matrix(y_true, y_pred)
array([[2, 0, 0],
       [0, 0, 1],
       [1, 0, 2]])
				# 第一行表示,0 预测为 0,0 预测为 1,0 预测为 2 的数量

使用 seaborn 对 confusion_matrix 进行可视化:

>> import seaborn as sn
>> sn.heatmap(confusion_matrix(y_true, y_pred), annot=True)
	# annot=True,显示各个cell上的数字

sklearn.metrics —— 混淆矩阵及其绘制、Accuracy/Precision/Recall/F1-score_第1张图片

2. Precision/Recall/F1-score

https://blog.csdn.net/sinat_26917383/article/details/75199996

  • Accuracy:(TP+TN)/(P+N),预测正确的数目/总的样本数目
  • Precision:TP/(TP+FP),真阳率,也叫查准率;
  • Recall:TP/(TP+FN),召回率,也叫查全率;
    • 全部预测为 P 时(FN=0),查全率为 100%;
  • F1-score: 2/(1/Precision+1/Recall) = 2PrecisionRecall/(Precision+Recall)

你可能感兴趣的:(sklearn.metrics —— 混淆矩阵及其绘制、Accuracy/Precision/Recall/F1-score)