yolov7模型训练结果分析以及如何评估yolov7模型训练的效果

最近是刚刚训练yolov7模型,但是只会一股脑的训练是不行的,要懂得训练多少epoch,以及通过哪些指标来查看训练的效果如何,现在这几天的经验总结一下。

本实验以person为例子,分别训练100epoch、60epoch、50epoch

训练经验:由于并不知道到底训练多少epoch效果比较好,所以现在先设置成100。(这几天查询资料得出来的结论一般50多就差不多了)

Table of Contents

1、关于yolov7训练结果的文件解析

yolov7模型训练结果分析以及如何评估yolov7模型训练的效果

一、weights

也就是训练好的模型,一般使用best.pt去进行推理

 包括best.pt和last.pt,以及默认25epoch保存一次模型,以及保存最后5个epoch的模型

yolov7模型训练结果分析以及如何评估yolov7模型训练的效果

二、 confusion_matrix.png

混淆矩阵

yolov7模型训练结果分析以及如何评估yolov7模型训练的效果

yolov7模型训练结果分析以及如何评估yolov7模型训练的效果

混淆矩阵以矩阵形式将数据集中的记录按照真实的类别与分类模型预测的类别判断两个标准进行汇总。其中矩阵的行表示真实值,矩阵的列表示预测值。

TP(True Positive): 将正类预测为正类数 即正确预测,真实为0,预测也为0

FN (False Negative):将正类预测为负类 即错误预测,真实为0,预测为1

FP(False Positive):将负类预测为正类数 即错误预测, 真实为1,预测为0

TN (True Negative):将负类预测为负类数,即正确预测,真实为1,预测也为1

精确率和召回率的计算方法

精确率Precision=TP / (TP+FP), 在预测是Positive所有结果中,预测正确的比重

召回率recall=TP / (TP+FN), 在真实值为Positive的所有结果中,预测正确的比重

 三、F1_curve.png

F1分数,它被定义为查准率和召回率的调和平均数

一些多分类问题的机器学习竞赛,常常将F1-score作为最终测评的方法。它是精确率和召回率的调和平均数,最大为1,最小为0。

F1-Score的值是从0到1的,1是最好,0是最差。

yolov7模型训练结果分析以及如何评估yolov7模型训练的效果

yolov7模型训练结果分析以及如何评估yolov7模型训练的效果

 这是100epoch得到的F1_curve,说明在置信度为0.4-0.6区间内得到比较好的F1分数

四、hyp.yaml和opt.yaml

训练时的超参数以及train.py中间的参数

五、P_curve.png

准确率precision和置信度confidence的关系图

yolov7模型训练结果分析以及如何评估yolov7模型训练的效果

 六、PR_curve.png

yolov7模型训练结果分析以及如何评估yolov7模型训练的效果

PR曲线中的P代表的是precision(精准率),R代表的是recall(召回率),其代表的是精准率与召回率的关系,一般情况下,将recall设置为横坐标,precision设置为纵坐标。PR曲线下围成的面积即AP,所有类别AP平均值即Map.

如果PR图的其中的一个曲线A完全包住另一个学习器的曲线B,则可断言A的性能优于B,当A和B发生交叉时,可以根据曲线下方的面积大小来进行比较。一般训练结果主要观察精度和召回率波动情况(波动不是很大则训练效果较好)

Precision和Recall往往是一对矛盾的性能度量指标;及一个的值越高另一个就低一点;
提高Precision <==> 提高二分类器预测正例门槛 <==> 使得二分类器预测的正例尽可能是真实正例;
提高Recall <==> 降低二分类器预测正例门槛 <== >使得二分类器尽可能将真实的正例挑选


七、R_curve.png

召回率recall和置信度confidence之间的关系

yolov7模型训练结果分析以及如何评估yolov7模型训练的效果

 八、results.png

yolov7模型训练结果分析以及如何评估yolov7模型训练的效果

Box:Box推测为GIoU损失函数均值,越小方框越准;
Objectness:推测为目标检测loss均值,越小目标检测越准;
Classification:推测为分类loss均值,越小分类越准,本实验为一类所以为0;
Precision:精度(找对的正类/所有找到的正类);

Recall:真实为positive的准确率,即正样本有多少被找出来了(召回了多少)。

Recall从真实结果角度出发,描述了测试集中的真实正例有多少被二分类器挑选了出来,即真实的正例有多少被该二分类器召回。

val BOX:  验证集bounding box损失

val Objectness:验证集目标检测loss均值

val classification:验证集分类loss均值,本实验为一类所以为0

mAP是用Precision和Recall作为两轴作图后围成的面积,m表示平均,@后面的数表示判定iou为正负样本的阈值,@0.5:0.95表示阈值取0.5:0.05:0.95后取均值。

mAP@.5:.95(mAP@[.5:.95])
表示在不同IoU阈值(从0.5到0.95,步长0.05)(0.5、0.55、0.6、0.65、0.7、0.75、0.8、0.85、0.9、0.95)上的平均mAP。

mAP@.5:表示阈值大于0.5的平均mAP

一般训练结果主要观察精度和召回率波动情况(波动不是很大则训练效果较好)
然后观察mAP@0.5 & mAP@0.5:0.95 评价训练结果。

九、results.txt

yolov7模型训练结果分析以及如何评估yolov7模型训练的效果

 分别的含义是训练次数、GPU消耗、训练集边界框损失、训练集目标检测损失、训练集分类损失、训练集总损失、targets目标、输入图片大小、Precision、Recall、mAP@.5、mAP@.5:.95、验证集边界框损失、验证集目标检测损失、验证机分类损失

十、train_batchx

我设置的batch_size为8所以一次读取8张图片

yolov7模型训练结果分析以及如何评估yolov7模型训练的效果

 十一、test_batchx_labels

验证集第一轮的实际标签

yolov7模型训练结果分析以及如何评估yolov7模型训练的效果

十二、运行tensorboard

activate yolov7(自己所配的环境名称)
tensorboard --logdir=训练结果所在的文件夹

二、分析模型的训练效果

接下来我将分别展示100epoch、60epoch和50epoch的tensorboard的可视化训练结果

100epoch

Loss

yolov7模型训练结果分析以及如何评估yolov7模型训练的效果

AP值

yolov7模型训练结果分析以及如何评估yolov7模型训练的效果

60epoch

Loss

yolov7模型训练结果分析以及如何评估yolov7模型训练的效果

AP值

yolov7模型训练结果分析以及如何评估yolov7模型训练的效果

50epoch

Loss

yolov7模型训练结果分析以及如何评估yolov7模型训练的效果

AP值

yolov7模型训练结果分析以及如何评估yolov7模型训练的效果

 分析:从100epoch的Loss来看从50-60epoch损失值就维持在一定的范围内,所以我们可以缩小训练epoch,然后设置epoch为60继续训练,发现相较于100epoch的AP值86.8,60epoch的AP值为87.7上升0.9,但是发现val的目标检测损失在50epoch之后有所上涨,所以我们再次设置epoch为50进行训练,发现AP值上升0.1。

总结:所以来说查看yolov7模型训练的效果要综合四个损失函数的值来看,先设置的epoch次数多一些,然后通过损失函数来看减少或增加训练轮数,然后查看AP值是否有所增加。

最后增加一下计算模型训练的FPS值,设置相应的参数并运行test.py

yolov7模型训练结果分析以及如何评估yolov7模型训练的效果

运行结果

yolov7模型训练结果分析以及如何评估yolov7模型训练的效果 FPS=1000/(4.3+0.6+5.0)=101

文章出处登录后可见!

立即登录
已经登录? 立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
青葱年少的头像青葱年少普通用户
0
PythonWeb开发基础(二)WSGI概述和APP端开发
上一篇 2023年3月4日 下午9:54
Python绘制loss曲线、准确率曲线
下一篇 2023年3月4日 下午9:55

相关推荐

  • Python的Logging模块高级用法-日志处理 2024年5月6日
  • 【Linear Probing | 线性探测】深度学习 线性层 2023年9月21日
  • Python绘制loss曲线、准确率曲线 2023年3月4日
  • 图像去雾/图像去雨(matlab/python) 2023年3月28日
  • python经典百题之从小到大输出 2023年11月13日
  • python——GIL锁详解 2023年3月10日
  • python的gradio库如何使用 2023年4月29日
  • YOLOV5超参数设置与数据增强解析 2023年2月21日
  • 数分/机器学习算法面试题(技术面)—总结 2022年5月30日
  • Python基础知识点六万字总结,爆肝一周熬夜完成【建议收藏】 2023年4月23日
  • 官方正品 | Ultralytics YOLOv8算法来啦(尖端SOTA模型) 2023年3月1日
  • 再见conda,你好Mamba 2023年8月4日
  • 【seaborn】sns.set() 绘图风格设置 2023年3月3日
  • pyTorch入门(五)——训练自己的数据集 2023年11月29日
  • sklearn预测评估指标计算详解:准确率(Accuracy)、精确率(Precision)、召回率(Recall)、F1score 2023年2月23日
  • BiseNetV2网络复现 2022年5月7日

赞助商

此站出售,如需请站内私信或者邮箱!

玻璃钢生产厂家随县玻璃钢花盆花器台湾玻璃钢仿真水果雕塑价格香港过年商场美陈商场元旦美陈方案玻璃钢动物牛雕塑多少钱金华人物玻璃钢雕塑生产厂家玻璃钢景观雕塑培训莆田仿铜西式玻璃钢雕塑张掖玻璃钢雕塑厂家佛像玻璃钢雕塑定做价格大连玻璃钢造型雕塑定制黑河仿铜玻璃钢雕塑定制玻璃钢棒棒糖果雕塑做工讲究的玻璃钢花盆批发深圳泰佳玻璃钢大猫雕塑通化人物玻璃钢雕塑安装宿州户外玻璃钢雕塑定制仙居玻璃钢雕塑厂家马头雕塑玻璃钢大型的玻璃钢雕塑设计楚雄市玻璃钢雕塑哪里有卖宁安玻璃钢南瓜屋雕塑滁州玻璃钢马雕塑设计保山玻璃钢圆门头雕塑临沂玻璃钢价值观雕塑商场美陈常用材料晋城泡沫玻璃钢彩绘雕塑商场美陈装饰制作滁州创意玻璃钢雕塑定做价格结合商场业态美陈香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化