如何基于已有.weights格式YOLO权重通过Darknet增量训练?
YOLO权重增量训练问题解答
完全可以基于你已训练好的.weights格式权重继续做增量训练,不需要从头开始,也不用依赖官方提供的.conv.74初始权重。
针对你执行命令后无结果的情况,可以从这几个方向排查:
- 核对权重文件路径:确认
/content/drive/MyDrive/Training_Forest3D/Weight/yolov3.weights这个路径真实存在,文件没有损坏。可以用命令ls /content/drive/MyDrive/Training_Forest3D/Weight/验证文件是否存在。 - 检查配置文件正确性:
tmp_yolo/cfg/obj.data里的classes数量、train/valid数据集路径、names类别文件路径、backup权重保存路径,必须和实际情况完全匹配。tmp_yolo/cfg/yolov3-tiny-custom.cfg里的classes数要和你的数据集一致,对应的filters数要按公式filters=(classes+5)*3计算修改;同时保持training=1(不要改成0),[net]段的batch、subdivisions参数要根据你的硬件配置合理设置。
- 确认Darknet编译状态:如果用GPU训练,要确保编译Darknet时开启了GPU、CUDNN相关选项(修改Makefile里的
GPU=1、CUDNN=1后重新编译),编译失败的话运行命令可能无输出。 - 检查权限:确保你对权重文件、配置文件、数据集目录、backup目录都有读写权限,权限不足会导致程序无法正常启动。
如果以上都没问题,可以尝试在命令末尾添加-dont_show参数,或者查看终端的错误日志(部分错误信息可能被默认隐藏),也可以检查backup目录是否有新的权重文件生成,以此判断训练是否在后台运行。
内容的提问来源于stack exchange,提问作者Sina
相关产品推荐
相关产品推荐

