在使用yolov5训练自己的数据集的时候可能会在运行代码的输出过程中会出现如下的一个信息,但是代码依旧能够运行。
这个的意思是说模型中设定的分类类别与你自己在.yaml文件中配置的nc数值不匹配,只需要修改模型.yaml文件即可。
找到你自己所用的模型对应的.yaml文件,在model文件夹里,以yolov5s为例:
修改如下即可:
如果这样修改之后还是出现这样的提示, Overriding model.yaml nc=80 with nc=28
那么可以再看看train.py文件:看看其中的一些参数设置。
weights:初始化模型权重文件是yolov5s.pt
cfg:配置文件是默认为空,我也不知道它指向的是哪里。但看其help是help='model.yaml path'说明其是指向模型的.yaml文件的。
data:是指数据的一些路径,类别个数和类别名称等设置,如coco128.yaml
hyp:是一些超参数的设置,如果你清楚的话,可以改动。
epochs:是训练的轮数,默认是300轮。
batch-size:每一批数据的多少,如果你的显存小,就将这个数值设置的小一点。
那么我们修改cfg参数如下,以yolov5s为例:
让其指向模型配置文件。
问题解决。