基于挑战杯华为云赛道学习YOLOV7
文件介绍:
重点看一下链接:https://blog.csdn.net/weixin_43334693/article/details/129356033
weights文件夹:文件夹有best.pt文件,该文件的作用是保存训练过程中在验证集上表现最好的模型权重。在训练过程中,每个epoch结束后都会对验证集进行一次评估,并记录下表现最好的模型的权重。这个文件通常用于推理和部署阶段,因为它包含了在验证集上表现最好的模型的权重,可以获得最佳的性能。
utils文件夹:文件夹中有很多文件,都是一些自定义函数。
里面的datasets、general、plots函数大概率是不需要改的,他们主要是负责查看数据增强后的数据效果的函数。
autoanchor可能需要我们进行修改甚至替换,它涉及的是模型训练。
{
torch.utils.py文件大概率不需要做任何修改的,它是关于一些计算机或者服务器运行的一些东西,华为应该是都给设置好了的,大家不要改,不要把时间写死。torch.utils.py文件的解读可以参考https://www.cnblogs.com/ccsuf/p/16613678.html。
metrics.py文件大概率不需要改,这个文件存放的是计算mAP、混淆矩阵、IOU相关的函数,在看之前需要大家了解基本的目标检测指标,mAP的定义,计算方式等知识。可以参考:https://blog.csdn.net/qq_38253797/article/details/119547084,但是感觉完全没必要,原理一般人也看不懂,这种一般都是华为设置好的,如果需要的话可以看看上面的链接。
loss.py文件时损失函数文件,结合网上资料个人感觉这个设定还是比较重要的,至于需不需要改我暂时不确定,但是我觉得通过改损失函数应该可以一定程度上实现算法性能的提升,我个人觉得需要做一些修改,但是不确定。
activation.py文件是做一些关于激活函数改进的实验,我同样觉得通过改激活函数应该可以一定程度上实现算法性能的提升,我个人觉得需要做一些修改,但是不确定。
}
datasets用来存放自己的数据集。.cache文件是缓存文件;val文件是验证集集合;test文件是测试集集合;train文件是训练集集合
data文件夹主要是存放一些超参数的配置文件(如.yaml文件)是用来配置训练集和测试集还有验证集的路径的,其中还包括目标检测的种类数和种类的名称,数据加强的yaml文件就在此文件夹中,感觉这个文件夹比较重要,应该需要修改。
models是模型文件夹。里面主要是一些网络构建的配置文件和函数,训练自己的数据集的话,可能是需要修改文件的。
outputs文件夹顾名思义就是输出的一些东西了,输出的效果。
runs文件夹是我们运行的时候的一些输出文件。每一次运行就会生成一个文件夹(好像是这样的)。
detect.py文件时测试文件,输出图片并且标注。
train.py和test.py顾名思义就是测试和训练的。