参考资料
博客:
视频:
1 TP、TN、FP、FN
TP TN FP FN里面一共出现了4个字母,分别是T、F、P、N。
- T是True;
- F是False;
- P是Positive;
- N是Negative。
T或者F代表的是该样本是否被正确分类。
P或者N代表的是该样本被预测成了正样本还是负样本。
名称 | 含义 |
---|---|
TP(True Positive) | 真阳性:预测为正,实际为正 |
FP(False Positive) | 假阳性:预测为正,实际为负 |
TN(True Negative) | 真阴性:预测为负,实际为负 |
FN(False Negative) | 假阴性:预测为负,实际为正 |
2 混淆矩阵、Accuracy、Precision、Recall、PR曲线
(1)混淆矩阵
:是用来总结一个分类器结果的矩阵。对于k元分类,其实它就是一个k x k的表格,用来记录分类器的预测结果。对于最常见的二元分类来说,它的混淆矩阵如下所示:
(2)Accuracy(准确率)
:预测是对的样本数占总样本数的比例。
(3)Precision(精准率)
:指模型预测的所有目标中,预测正确的比例,也称查准率。
(4)Recall(召回率)
:在所有真实目标中,模型预测正确的目标比例,也称查全率。
(5)PR曲线
:是指用横轴表示召回率,纵轴表示精确率,将数据绘制成图表的形式所得到的曲线。
举例:
如图所示,蓝色的框是真实框。绿色和红色的框是预测框,绿色的框是正样本,红色的框是负样本。
一般来讲,当预测框和真实框IOU>=0.5时,被认为是正样本。
因此对于这幅图来讲,真实框一共有3个,正样本一共有2个,负样本一共有2个。
3 F1 Score、Micro-F1、Macro-F1
统计TP、FP、TN、FN等指标数据可以用于计算精确率(Precision)和召回率(Recall),根据精确率和召回率可以计算出F1值,微观F1(Micro-F1)和宏观F1(Macro-F1)都是F1合并后的结果,是用于评价多分类任务的指标。
(1)F1 Score(F1得分)
:是分类问题的一个衡量指标,用于权衡Precision和Recall,被定义为精确率和召回率的调和平均数。
(2)Micro-F1(微观F1)
:
第 i i i 类的Precision和Recall可以表示为:
Micro-F1计算方式:
- 先计算出所有类别的总的Precision和Recall:
- 然后利用F1计算公式计算出来的F1值即为Micro-F1:
因为其考虑了各种类别的数量,所以更适用于数据分布不平衡的情况。在这种情况下,数量较多的类别对F1的影响会较大。
(3)Macro-F1(宏观F1)
:
第 i i i 类的Precision和Recall可以表示为:
Macro-F1计算方式:
- 对各类别的Precision和Recall求平均:
- 然后利用F1计算公式计算出来的F1值即为Macro-F1:
因为对各类别的Precision和Recall求了平均,所以并没有考虑到数据数量的问题。在这种情况下,Precision和Recall较高的类别对F1的影响会较大。
4 IOU
目标检测中都是用一个矩形框住被检测物体,又因为检测物体尺度不同,预测框与真实框或大或小。所以度量标准必然是具有尺度不变性的,那么大神们就引入了一个概念IOU(交并比),用预测框(A)和真实框(B)的交集除上二者的并集,其公式为:
显然,IOU的值越高也说明A框与B框重合程度越高,代表模型预测越准确。反之,IOU越低模型性能越差。
5 AP、MAP
(1)AP
:对于目标检测而言任务,每一个类都可以计算出其Precision和Recall,通过合理的计算,每个类都可以得到一条P-R曲线,曲线下的面积就是AP的值。
一个越好的分类器,AP值越高。
(2)MAP
:如果是多类别目标检测任务,就要使用mAP,mAP是多个类别AP的平均值。
这个mean的意思是对每个类的AP再求平均,得到的就是mAP的值,mAP的大小一定在[0,1]区间,越大越好。该指标是目标检测算法中最重要的一个。
- AP@.5指的是IOU的值取50%,AP70同理
- AP@.5:.95指的是IOU的值从50%取到95%,步长为5%,然后算在在这些IOU下的AP的均值
COCO评价指标:https://cocodataset.org/#detection-eval
代码参考:睿智的目标检测20——利用mAP计算目标检测精确度