手动数据增强可能还没有原来的好,因为原来的都是别人试出来的比较好的。但如果要参加比赛,就需要自己去读一些论文,看看别人的思路,再更新一个高于标准的。
看英文论文,挑一些比较好的。CVPR每年会选出引用最多的顶尖的论文。多看看论文,小绿鲸阅读器导入。两天看一篇。推荐微信号:学姐带你玩ai。最新的没人翻译都是英文,中文的可能都比较老。
分布式训练就暂时不需要掌握,太高级了。相当于在很多台电脑上训练一个模型。模型结构复杂。几百万数据,每张图片都很大。
评价指标:f2分数。用p和r 综合计算。用于计算 分类任务的分数。
如果回归、回归+分类任务,用map作为评价指标。
打开detect.py,在预测值y后面,通过调取函数可以直接获得f2分数:
3000分辨率:令args中img.size=3000
conf:翻转的概率(或者是置信度的阈值)
知识蒸馏:一种剪枝方法。只保留网络中重要的部分,如一个分数是0.999,一个分数是0.1,将0.1的参数砍掉。pruned剪枝+fine-tuned 微调训练,剪枝之后要微调训练。maac。
如果剪模型架构的话,就在yolo.py中剪,另外配置文件yolo.yaml也要剪。
数据增强具体操作方法:先在网上找增强方法的函数。然后有两种操作方法,注意这两种操作方法都要求接口一致(即和原代码输入值输出值一致)。还有如果原图像imgs翻转了,要让每次迭代训练的target框也翻转,不然只有图转了,框没转。具体来说,翻转,和旋转要改,切块,因为图片目标位置变了。变颜色、变亮度这些才不用变target。
方法一、和模型原数据增强的模块放在一起。在dataloader.py-datasets处应该会有
方法二、 加在train.py中imgs导入的地方
将wbf代替nms:在detect.py进去能看到nms模块,代替源码。注意nms在train中没有
yolov5可以做多分类任务,多分类任务就是多标签分类任务!!