【机器学习和深度学习】分类问题通用评价指标:精确率、召回率、准确率和混淆矩阵

分类问题通用评价指标:精确率、召回率、准确率和混淆矩阵

v1.0

分类问题的评价

对于1个分类问题,不论其是二分类问题 还是多分类问题 ,或者是多标签分类问题(1个样本可以有多个类别),都可以对其判定结果进行统计,以类别为单位统计其各个指标,来衡量模型对该类别的预测情况。基于对某个分类的4种分类判别情况,引出了精确率、召回率、准确率和F1 Score的评价指标。

分类问题对特定样本类别的判定情况

对特定样本类别A分类判定的4种情况

  • T P TP TP(True Positive) 真阳性,某条样本判定为A类样本,实际也为A类样本
  • F P FP FP(False Positive)假阳性,某条样本判定为A类样本,但实际不为A类样本
  • T N TN TN(True Negative)真阴性,某条样本判定不为A类样本,实际也不为A类样本
  • F N FN FN(False Negative)假阴性,某条样本判定不为A类样本,但实际为A类样本

在其中T表示预测结果是正确的,F表示预测结果是错误的,P表示预测样本为A类别,N表示预测样本不为A类别。

混淆矩阵(Confusion Matrix)

混淆矩阵以表格形式,展示了模型对A类样本的预测情况,表格为2×2的尺寸,以是否预测是否为A类样本真实是否为A类样本2个维度进行列举。

真实为A类 真实非A类
预测为A类 TP FP
预测非A类 FN TN

其中T表示预测正确,F表示预测错误,P表示预测为A类样本,N表示预测为非A类样本。

这其中需要注意的是FN类别,这个类别表示预测样本不是A类别(N),但是预测错误了(F),因此这个类别实际上是属于A类别的。

精确率(Precision)

精确率为判断为A类的样本中,实际为A类样本的百分比 ,公式如下:
P r e c i s i o n = T P T P + F P Precision=\frac{TP}{TP+FP} Precision=TP+FPTP
精确率指标反映了模型对A类样本的误检情况 ,模型在检测到为A类样本时,误检情况越少,精确率越高。

精确率不反映漏检的情况,即只是在模型判断样本为A类时进行的统计,仍有一些样本属于A类,但被判别为其他类(B类、C类)等,这些样本对于A类来说属于FN,不参加精确度的计算。

召回率(Recall)

对所有所有A类样本进行判段,有2种情况,被正确判断为A类的样本和被误判为其他类的样本。召回率为正确判断为A类的样本,占总体A类样本的比例 。公式如下:
R e c a l l = T P T P + F N Recall=\frac{TP}{TP+FN} Recall=TP+FNTP
召回率反映的是A类样本的漏检情况。若A类样本无漏检,则A类样本的召回率为100%,但此时仍可能出现属于其他类别的样本,被误判为A类样本的情况,这种情况为FP。根据召回率的定义和公式,FP的情况并不影响召回率。

准确率(Accuracy)

准确率用来衡量对于A类样本,预测正确的样本数占样本总数的比例 。这里正确的样本包括属于A类且预测为A类的情况(TP) ,也包括不属于A类,也没有被判别为A类的情况(TN) 。准确率的公式如下:
A c c u r a c y = T P + F N T P + T N + F P + F N = T T + F Accuracy=\frac{TP+FN}{TP+TN+FP+FN}=\frac{T}{T+F} Accuracy=TP+TN+FP+FNTP+FN=T+FT

准确率既考虑漏检情况(FN),也考虑误检情况(FP)。在二分类的情况下,准确率是一个全局指标。在多分类问题中,可以单独考虑每类样本的准确率。

F1 Score

F1 Score用来综合反应模型对样本类别A的预测情况,结合使用了样本类别A的精确率和召回率 。F1 Score公式如下:
1 F 1 S c o r e = 1 2 ⋅ ( 1 P r e c i s i o n + 1 R e c a l l ) \frac{1}{F1\space{Score}}=\frac{1}{2}\cdot(\frac{1}{Precision}+\frac{1}{Recall}) F1 Score1=21⋅(Precision1+Recall1)

或者将上式化简,将F1 Score单独放到左边,得到如下公式:
F 1 S c o r e = 2 ⋅ P r e c i s i o n ⋅ R e c a l l P r e c i s i o n + R e c a l l F1\space{Score}=\frac{2{\cdot}Precision{\cdot}Recall}{Precision+Recall} F1 Score=Precision+Recall2⋅Precision⋅Recall
F1 Score的取值范围为 [ 0 , 1 ] [0,1] [0,1] ,在精确率和召回率都为 100 100% 100时为 1 1 1。F1 Score越高,模型对A类样本的预测总体性能越好。

相关推荐
叫我:松哥13 小时前
基于大数据和深度学习的智能空气质量监测与预测平台,采用Spark数据预处理,利用TensorFlow构建LSTM深度学习模型
大数据·python·深度学习·机器学习·spark·flask·lstm
じ☆冷颜〃19 小时前
黎曼几何驱动的算法与系统设计:理论、实践与跨领域应用
笔记·python·深度学习·网络协议·算法·机器学习
HyperAI超神经20 小时前
【vLLM 学习】Rlhf
人工智能·深度学习·学习·机器学习·vllm
lambo mercy20 小时前
深度学习3:新冠病毒感染人数预测
人工智能·深度学习
Echo_NGC223721 小时前
【神经视频编解码NVC】传统神经视频编解码完全指南:从零读懂 AI 视频压缩的基石
人工智能·深度学习·算法·机器学习·视频编解码
摆烂咸鱼~21 小时前
机器学习(10)
人工智能·机器学习·支持向量机
哥布林学者21 小时前
吴恩达深度学习课程五:自然语言处理 第一周:循环神经网络 (四)RNN 中的梯度现象
深度学习·ai
yuhaiqun198921 小时前
学服务器训练AI模型:5步路径助力高效入门
运维·服务器·人工智能·笔记·机器学习·ai
雍凉明月夜1 天前
深度学习网络笔记Ⅳ(Transformer + VIT)
笔记·深度学习·transformer
小鸡吃米…1 天前
机器学习中的回归分析
人工智能·python·机器学习·回归