我用Darknet yolov3训练了自定义对象检测,直到平均损失降低到0.06,但现在我想用更多 训练和测试图像来训练它(也许< strong>还删除一些图像文件)。我可以执行这些步骤并继续使用最终的.weights文件进行培训,还是应该从头开始?
答案 0 :(得分:0)
是的,您可以将当前训练的模型(.weights文件)用作新训练的预先训练的模型。例如,如果您使用AlexeyAB repository,则可以通过以下命令来训练模型:
darknet.exe detector train data/obj.data yolo-obj.cfg darknet53.conv.74
其中darknet53.conv.74
是预先训练的模型。
在新的培训课程中,您可以添加或删除图像。但是,基本配置应该正确(例如类数等)。
根据我提到的页面:
在原始存储库original repository中, weights文件每1万次迭代仅保存一次
答案 1 :(得分:0)
如果继续,则需要指定更多的纪元。例如,如果您训练到300/300,则简历也将也训练到300(从300开始),除非您指定更多的时期。
python train.py-恢复
答案 2 :(得分:0)
您可以从以前保存的自定义模型的权重中恢复训练。
使用“ yolov3_custom_last.weights”代替预先训练的默认权重。
如果发现恢复问题,请尝试更改批量大小。
这应该有效,并使用新的图像集恢复模型训练:)
答案 3 :(得分:-1)
打开.cfg,找到max_batches
代码可能在22行中,设置较大的值:
max_batches = 500200
max_batches与转换迭代相同。