- 分类问题
1.1 混淆矩阵(Confusion Matrix)
矩阵中的每一行代表实例的预测类别,每一列代表实例的真实类别。
真正(True Positive , TP):被模型预测为正的正样本。
假正(False Positive , FP):被模型预测为正的负样本。
假负(False Negative , FN):被模型预测为负的正样本。
真负(True Negative , TN):被模型预测为负的负样本。
真正率(True Positive Rate,TPR):TPR=TP/(TP+FN),即被预测为正的正样本数 /正样本实际数。
精准率 = TP/(TP+FP)
召回率
假正率(False Positive Rate,FPR) :FPR=FP/(FP+TN),即被预测为正的负样本数 /负样本实际数。
假负率(False Negative Rate,FNR) :FNR=FN/(TP+FN),即被预测为负的正样本数 /正样本实际数。
真负率(True Negative Rate,TNR):TNR=TN/(TN+FP),即被预测为负的负样本数 /负样本实际数/2
复制代码
1
2
3
4
5
6
7
8
9
1.1.1 sklearn相应的包
sklearn.metrics.confusion_matrix
from sklearn.metrics import confusion_matrix
y_pred是预测标签
y_pred, y_true =[1,0,1,0], [0,0,1,0]
confusion_matrix(y_true=y_true, y_pred=y_pred)
array([[2, 1],
[0, 1]], dtype=int64)
复制代码
1
2
3
4
5
6
1.2 准确率(Accuracy)
分类正确的样本个数占总样本的比例.
1.2.1 sklearn相应的包
sklearn.metrics.accuracy_score
from sklearn.metrics import accuracy_score
y_pred是预测标签
y_pred, y_true=[1,2,3,4], [2,2,3,4]
accuracy_score(y_true=y_true, y_pred=y_pred)
0.75
复制代码
1
2
3
4
5
1.3 精确率(Precision): 预测正确的正样本占所有预测为正样本的比例
所有分正确的正样本/所有预测为正类的样本数.
也叫查准率
1.3.1 sklearn相应的包
sklearn.metrics.precision_score
from sklearn.metrics import precision_score
y_pred是预测标签
y_pred, y_true