注意:
1、权重路径根据实际情况修改;
2、稀疏化训练的值根据tensorboard的结果而定;
3、剪枝如果报错,减少剪枝比例;
正常训练:
ython train.py --data data/voc_ball.yaml --cfg models/yolov5s_ball.yaml --weights weights/yolov5s.pt --batch-size 16 --epochs 100 --workers 4 --name yolov5s-baseline
正常测试:
python detect.py --source ./testfiles/img1.jpg --weights runs/train/yolov5sbaseline/weights/best.pt
正常性能评估:
python val.py --data data/voc_ball.yaml --weights runs/train/yolov5sbaseline/weights/best.pt --batch-size 16
稀疏化训练:
python train_sparity.py --st --sr 0.0002 --weights yolov5s.pt --data data/voc.yaml --epochs 100 --name yolov5s-sparse
稀疏后性能统计:
python val.py data/voc.yaml --weights runs/train/yolov5s-sparse/weights/last.pt --batch-size 16
剪枝(yolov5s.ymal中要改种类)
python prune.py --percent 0.5 --weights runs/train/exp2/weights/last.pt --data data/voc.yaml --cfg models/yolov5s.yaml
微调:
python finetune.py --weights pruned_model.pt --data data/voc.yaml --epochs 100 --name yolov5s-finetuned
微调后的网络模型测试:
python detect_pruned.py --source ./testfiles/img1.jpg --weights runs/train/yolov5s-finetuned/weights/best.pt
微调后的网络模型评估:
python val.py --data data/voc_ball.yaml --weights runs/train/yolov5s_finetuned/weights/best.pt --batch-size 16