文章目录
1、IoU
模型预测出的目标框与真实目标框的交并比。
作用:
- IOU用于计算边界框回归损失(如GIoU,DIOU,CIoU损失),优化预测框的位置;
- IOU用于NMS(非极大抑制)去除冗余框,以及评价指标(mAP,F1)的计算。
计算方法:

公式:
I O U = A ⋂ B A ⋃ B IOU=\frac{A\bigcap{B}}{A\bigcup{B}} IOU=A⋃BA⋂B
1.1 TP (True Positive,正检)

TP,也叫真正例。模型预测出的目标框与真实目标框的交并比(loU)大于设定阈值(一般为0.5),即认为是正确检测到目标,这样的预测框数量记为 TP。
例如在检测图片中的交通指示牌时,模型预测出一个框(红色),该框与图片中实际指示牌的真实框(绿色),oU超过阈值,让TP加1。
1.2 FP (False Positive,误检)
FP,也叫假正例。模型预测出的目标框与任何真实目标框的loU都小于设定阈值(0.5),即错误地将背景或其他非目标物体检测为目标,这类预测框数量记为FP。
比如误把电线杆、背景检测为交通牌,检测的交通牌交并比小于0.5都记为FP。
1.3 FN (False Negative,漏检)
FN,也叫假负例。存在真实目标,但模型没有检测到(即没有预测出与该真实目标框 loU 大于阈值的预测框),这类未被检测到的真实目标数量记为 FN。比如图片中有5个交通牌,模型只检测出3个那么就有 2 个漏检的情况。
2、精度和召回率
2.1 概念及算法
P 和 R 呈负相关,先看精度和召回率的计算公式。
P(精度,Precision)
公式:
P
=
T
P
(
T
P
+
F
P
)
P\text{= }\frac{TP}{\left ({TP+FP}\right )}
P= (TP+FP)TP
R(召回率,Recall)
公式:
P
=
T
P
(
T
P
+
F
N
)
P=\mathrm{\text{ }}\frac{TP}{\left ({TP+FN}\right )}
P= (TP+FN)TP
模型为了不漏检(高 Recall),可能会生成更多预测框,导致误检增加(低Precision)。
举例:
- 高Precision:医疗诊断(避免健康人被误判为患者,健康器官切了) ;
- 高Recal:安防监控(减少漏检,避免危险目标未被识别)。
练习题1:实际有1000个交通标识牌,模型检测到1100个框,正确检测到的有880个,算一下TP,FP,FN,以及P和R。假设不考虑置信度(文末赋答案)
练习题2:实际有1000个交通标识牌,模型检测到1100个框,正确检测到的有880个,置信度框大于0.6的有900个,其中正确的是800个,算一下TP,FP,FN,以及P和R。(文末赋答案)
这里又引入了一个新的概念,置信度
置信度:模型认为检测到目标框的可能概率(0-1),模型检测到的目标置信度小,可能性就小。
2.2 结果解读
P值越高,检测越准确;R值越高,检测越全面。
置信度为0,实际100个目标,模型检测到1000个框,正确的有99个;
置信度为1,实际100个目标,模型检测到1个框,正确的有1个;


3、AP和mAP
3.1 定义
AP,也叫平均精度,衡量单个类别的检测性能,综合反映模型在“查准率”(精度P)和“查全率”(召回率R)之间的平衡,数值越高,说明模型对该类目标的检测效果越好。
绘制 PR 曲线并计算 AP ,以 Recall 为横轴,Precision为纵轴,连接所有(Recall,Precision)点形成的曲线。通过积分的形式计算 PR 曲线下的面积(AUC),更准确反映型性能。
mAP就是所有类别AP的均值。

4、F1值
4.1 概念及算法
F1 score是精确率(Precision)和召回率(Recall)的调和平均数能更全面地评估模型性能。
F1score 在0到1之间,值越接近1,表明模型性能越好。
在实际应用中,它常用于平衡精确率和召回率的需求,特别是在数据类别不平衡的情况下,能更有效地评估模型性能。
F
1
=
2
∗
P
∗
R
P
+
R
F1=2∗\frac{P∗R}{P+R}
F1=2∗P+RP∗R
2.2 结果解读

Confidence:置信度,代表模型对预测结果预测的准确性将模型对某一类别的所有预测框按置信度从高到低排序。
- 0:漏检几乎没有,误检非常多。
- 0-0.2:漏检影响不大(对的目标置信度不会太低)误检数量减少。
- 0.2-0.8:召回率下降(漏检变多),精确率上升的收益(误检变少),相互抵消,F1就进入平稳平台期。
- 0.8-1.0:模型判定十分严格,极端匹配的预测才保留召回率断崖式下跌,即便精确率接近100%,但漏检太多,F1直线跳水。
5、FPS和浮点数
5.1 FPS
FPS 表示模型每秒处理的图像帧数,用于衡量模型在实际硬件上的推理速度(CPU/GPU/TPU 等)
例如,若处理一帧图像需要 0.02秒,则FPS=50。
通常使用推理100张图片来做综合考量。
5.2 浮点数
FLOPs 表示模型完成一次前向传播所需的(卷积)浮点运算次数(如加法、乘法、除法等),是衡量模型理论计算复杂度的指标。主要用来衡量模型复杂度、指导轻量化。
6、模型训练结果分析
best.pt:文件保存的是在整个训练过程中,在验证集上表现最优的模型权重,一般用mAP的大小来衡量,通常推理时使用的模型。
last.pt:文件保存的是训练过程中最后一轮训练结束时的模型权重,也是继续训练的起点。

7、混淆矩阵

- 每一行是真实类别,每一列是预测类别。
- 矩阵中Aij的含义是:第j个类别被预测为第i个类别的概率。
左下区域:通常对应实际为某类别,但模型预测成背景(即没有预测),符合漏检定义,即模型漏检了真实存在的目标。
head为例,在左下角区域,有真实类别为 head,但模型预测为 background FN ,对应数值是 0.15 。即实际存在头部(真实类别是 head ),但模型却没有检测到这个头部,这就是模型漏检 。
右上区域:一般是实际不是某类别,但模型错误预测为该类别的情形,与误检(FP)概念相符,也就是模型将非目标类别误判成了目标类别 。
head类别为例,右上角区域中,真实类别为背景,但模型预测为 head ,对应数值是 0.97 。意思是在实际中,这部分样本本应属于背景,但模型却错误地把它们识别成了head。
答案
题目1:实际有1000个交通标识牌,模型检测到1100个框,正确检测到的有880个,算一下TP,FP,FN,以及P和R。
TP(True Positive,正检)
FP(False Positive,误检)
FN(False Negative,漏检)
P =TP /(TP +FP)
R = TP /(TP +FN)
TP=880
FP=1100-880=220
FN =1000-880=120
P=880/1100=80%
R=880/1000=88%
题目2:实际有1000个交通标识牌,模型检测到1100个框,正确检测到的有880个,置信度框大于0.6的有900个,其中正确的是800个,算一下TP,FP,FN,以及P和R。
TP = 800
FP = 900-800 = 100
FN = 1000-800= 200
P = 800/(800+100)=89%
R = 800/(800+200)= 80%

299

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



