0. 混淆矩阵
其中关于 TP, TN; FP, FN 的解释;
其中
首字母 T,F代表预测的情况,即T代表预测的结果是对的, F代表预测的结果是错误的;
第二个字母代表预测是预测为 正样本,还是负样本, Positve 代表正样本;
注意,
此时这里的正样本代表的是预测属于某一类别的样本;
负样本则代表预测不属于某一类别的样本。
举例说来
- TP: True 模型预测正确, 预测为正样本Positive;
- FN: False 模型预测错误, 预测为负样本 Negative;

通常情况下,混淆矩阵中, 行代表真实值,列代表预测值,
此外,存在部分代码仓库, 与此不一致,使用列代表真实值,行代表预测值,
需要阅读代码的时候,通过查看文档确定;

1. 基础指标
1.1 准确率 (accuracy)
准确率:衡量正确预测的样本占总样本的比例。这是最简单的指标,
计算方式为 :
预测正确的样本数目所有预测的样本数目 \frac{预测正确的样本数目 }{所有预测的样本数目}所有预测的样本数目预测正确的样本数目
更具体的表达:
Acc=TP+TNTP+TN+FP+FN Acc = \frac{TP + TN }{TP + TN + FP + FN}Acc=TP+TN+FP+FNTP+TN
然而,普通的准确率不适合不平衡的数据集。
- 因为在类别不均衡的数据集中,
假设正常类别的样本数目特别多, 异常类别的样本数目很少。
此时, 正常样本的预测正确的个数很高, 但是异常类别的样本全部预测错误,
此时,在这种情况下, 整体样本的准确率仍然非常高, 然而实际情况却并非如此,因为此时异常样本的预测的准确率几乎为0;
由于样本不平衡的问题,导致了得到的高准确率结果含有很大的水分。即如果样本不平衡,准确率就会失效。
正因为如此,也就衍生出了其它两种指标:精准率和召回率。
- 准确率则代表整体的预测准确程度,包括正样本和负样本。
- 精准率代表对正样本结果中的预测准确程度, 精准率是用来衡量预测结果的;
1.2 精准率(查准率) Precision
精准率(Precision)又叫查准率,它是用来衡量预测结果的。
在预测结果为正类的数据中,有多少数据被正确预测.
- 它评估模型预测正类的准确性,计算公式为:
公式表达为,正确预测为正样本的个数占所有预测为正样本总数的比率。
Pre=TPTP+FP Pre = \frac{TP }{TP + FP }Pre=TP+FPTP
分子: True Positive: 预测正确,且预测为正样本. 即混淆矩阵中,在每一行中处于对角线位置上的值;
分母: False Positive: 预测错误, 且预测为正样本. 在混淆矩阵中,体现为每一列上, 除去对角线位置上的那个数值(代表预测正确,为正样本), 其余的都是代表了的错误的预测为正样本。
1.3 召回率(查全率) Recall (Sensitivity)
召回率(Recall)又叫查全率,它是针对原样本而言的,即”是否找得全”
召回率(Recall) 是针对原样本而言的,其含义是在实际为正的样本中被预测为正样本的概率。
-
它衡量正确预测的正样本个数与所有实际正样本的比率。
-
它评估模型检测所有正实例的能力,
具体的表达:
Recall=TPTP+FN Recall = \frac{TP }{TP + FN }

本文围绕深度学习模型评估展开,介绍了混淆矩阵及基础指标如准确率、精准率、召回率等,分析了P - R曲线、ROC与AUC、mAP曲线图的特点和作用,还给出了使用scikit - learn的代码实现及多分类任务中average参数的选择,最后提及回归任务指标。
4万+

被折叠的 条评论
为什么被折叠?



