Yolo

tech2022-07-05  309

本文主要针对yolo_v3进行模型剪枝量化,主要使用voc格式的数据集训练自己的数据,代码主要在:

https://github.com/ReOneK/Yolo_v3_prune_vocdata

具体步骤如下:

 一、数据处理

- 将标注数据放入data/Annotations,图片数据放入data/images - 运行modify.py文件,避免因图片问题导致标注文件中图片的长宽为 0的问题 -将voc_label.py中classes修改为自己的训练类别,并分别运行maketxt.py、voc_label.py

 二、模型剪枝   1.正常训练

对应自己的训练数据修改data/voc.data以及voc.name 同时修改yolov3.cfg中yolo层对应的filters以及classes  

          filters=3*(classes+5)  

python3 train.py --data data/voc.data --batch-size 16 --accumulate 1 --weights weights/yolov3.weights --cfg cfg/yolov3.cfg

2.稀疏化训练

`-sr`开启稀疏化,`--s`指定稀疏因子大小,`--prune`指定稀疏类型。

其中:

--prune 0为正常剪枝和规整剪枝的稀疏化

--prune 1为极限剪枝的稀疏化

--prune 2为Tiny剪枝的稀疏化

 

python3 train.py --data data/voc.data --batch-size 16 --accumulate 1 --weights weights/yolov3.weights --cfg cfg/yolov3.cfg -sr --s 0.001 --prune 0 

 

 四、原作者链接

https://github.com/Lam1360/YOLOv3-model-pruninghttps://github.com/coldlarry/YOLOv3-complete-pruning

 

最新回复(0)