当前位置:   article > 正文

模型测试集上准确率(ACC)、精确率precision、召回率recall、AUC评估指标计算_(4)计算模型在测试集数据的预测结果准确性,训练时产生的准确率折线图需要贴出,给

(4)计算模型在测试集数据的预测结果准确性,训练时产生的准确率折线图需要贴出,给

参考:
https://zhuanlan.zhihu.com/p/530885866?utm_id=0

混淆矩阵
在这里插入图片描述
TP: 预测为正,实际为正

TN: 预测为负,实际为负

FP:预测为正,实际为负

FN: 预测为负,实际为正

准确率(accuracy) : 即模型预测的结果中,正确结果(包括正的、负的预测正确的)的占比,是最简单直接的一个衡量指标
在这里插入图片描述
accuracy= (TP+TN)/(TP+FN+FP+TN)

精确率(precision) :在所有预测为1的样本中(混淆矩阵第一行),真实标签也为1的样本的占比。

precision = TP/(TP+FP)

召回率(recall) :在所有真实标签为1的样本中(混淆矩阵第一列),模型预测标签也为1的占比。
recall= TP/(TP+FN)

F1值:为两者的综合,能反映模型查的又准又全的能力。precision越大,F1越大;Recall越大,F1越大。
在这里插入图片描述

f-score = 精确率 * 召回率 * 2 / (精确率 + 召回率)

ACC 准确率

acc计算要y_predict预测结果为整数int,y_label为整数就行

accuracy_score(y_label,y_predict)

from sklearn.metrics import accuracy_score

print("test 准确率", accuracy_score(ky_test.tolist(), xg_classifier.predict(kx_test)))

或
print("test acc", accuracy_score(test[target].values, np.around(pred_ans,0).astype(int) ))
或
print("test acc", accuracy_score(test[target].values, np.argmax(pred_ans, axis=1) ))
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

AUC

参考:https://www.jianshu.com/p/50bd9def2224
AUC 理解(随机挑选一个正样本以及一个负样本,正样本大于负样本的概率):
AUC 的全称是 AreaUnderRoc 即 Roc 曲线与坐标轴形成的面积,取值范围 [0, 1]
在这里插入图片描述
在这里插入图片描述

计算要y_predict预测结果为小数float,y_label为整数就行

roc_auc_score(y_label,y_predict)

from sklearn.metrics import roc_auc_score
print("test AUC", roc_auc_score(ky_test.tolist(), np.expand_dims(xg_classifier.predict_proba(kx_test)[:, 1],1)))
或
print("test AUC", round(roc_auc_score(test[target].values, pred_ans), 4))
  • 1
  • 2
  • 3
  • 4

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/673676
推荐阅读
相关标签
  

闽ICP备14008679号