我可以继续从最终重量开始进行更多训练和测试图像的训练吗?

时间:2019-10-18 14:05:22

标签: object-detection yolo darknet

我用Darknet yolov3训练了自定义对象检测,直到平均损失降低到0.06,但现在我想用更多 训练和测试图像来训练它(也许< strong>还删除一些图像文件)。我可以执行这些步骤并继续使用最终的.weights文件进行培训,还是应该从头开始?

4 个答案:

答案 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与转换迭代相同。

How to continute training after 50000 iteration? #2633