YOLOv5_3.1
- I. 散点图
- II. 指标
- III. precision-recall_curve
- IV. labels
- v. 可视化
I. 散点图
这些参数通常用于目标检测模型的评估。其中:
Box
表示目标检测模型检测出的所有边界框的数量;val Box
表示用于验证检测模型性能的边界框数量;Objectness
表示目标物体得分,用于评估一个边界框内是否包含目标物体的概率;val Objectness
表示在验证集上的物体得分;Classification
表示类别得分,用于度量一个边界框内含有目标物体的类别概率;val Classification
表示在验证集上的类别得分;Precision
表示被正确预测的正样本数量与全部预测正样本数量之比,用于评估模型在所有预测为目标的物体中,有多少是真正目标物体;Recall
表示被正确预测的正样本数量与全部真正存在的正样本数量之比,用于评估模型能否正确地检测到真实存在的目标物体;map@0.5
表示在IoU(交并比)等于0.5时的平均精度,mAP@0.5即所有目标类别的平均精度之和;map@0.5:0.95
表示在不同IoU阈值下的平均精度,其中0.5和0.95分别表示IoU的下限和上限。mAP@0.5:0.95能够很好地反映模型性能的全面性。
II. 指标
这是训练模型的输出结果,包含以下各项指标:
199/199
:表示训练轮数,当前为199,总轮数也为199;12.5G
:表示训练模型所占用的显存大小;0.02521
,0.02248
,0.005274
,0.05297
:表示损失函数的值,这些值可能是在训练集或验证集上计算得到的;229
和640
:分别表示在验证集上预测正确的样本数量和总样本数;0.6042
和0.8467
:分别表示验证集上精度和召回率(Precision和Recall);0.8061
:是指IoU等于0.5时的平均精度(mAP@0.5);0.5687
:代表IoU从0.5到0.95的平均精度mAP;0.03039
、0.02054
、0.006311
:是指验证集上每个类别的平均精度,通常用于多类别目标检测模型的评估结果。
从这儿能看出,一个裸的yolov5s,训练结果并不理想
III. precision-recall_curve
precision-recall curve
是在机器学习模型中广泛使用的一种性能评估工具。该二维曲线用于在不同分类阈值下评估模型的性能,其中横轴表示召回率,纵轴表示精度。随着分类阈值的变化,分类结果的精度和召回率也随之发生变化,从而形成一些 (精度, 召回率) 的坐标点。将这些坐标点连线得到的曲线就是"精度-召回率曲线"。通常情况下,该曲线越靠近左上角的红线,模型的性能就越好,因此需要在召回率和准确率之间进行权衡,并选择适当的分类阈值进行模型评估。
IV. labels
labels.png
文件是 Yolov5 程序中用于可视化训练过程的标签文件。它显示了标注数据中所有不同的类别,在训练过程中会使用这些标注数据进行模型训练。labels.png
包含了每个类别的名称和一个独特的颜色编码,这有助于在可视化时快速区分不同类别的目标。这样可以更好地进行训练,让模型能够更好地理解每个类别所代表的对象。如果在运行 Yolov5 时不提供 labels.png
文件,则程序会自动根据数据集中的类别数量生成这个文件。
v. 可视化
仔细对比上两图,你会发现有不少的漏检和错检情况,亟待优化。