yolov3剪枝

作者: 霜冷长河wzq | 来源:发表于2020-12-28 11:24 被阅读0次

    剪枝原理

    参考<<Learning Efficient Convolutional Networks through Network Slimming>>

    剪枝原理
    训练时的损失函数,将BN的系数\gamma作为正则项,使用L1,这种训练称之为稀疏训练:
    损失函数
    训练的结果,使得\gamma值趋向于0,从而可以去除相应的通道。
    BN层尺度参数正常训练vs稀疏训练

    代码运行

    参考代码:https://github.com/tanluren/yolov3-channel-and-layer-pruning

    1、darknet模型转换成代码使用的格式

    python3 -c "from models import *; convert('cfg/yolov3.cfg', 'weights/last.pt')"

    2、正常训练(可做为baseline,与稀疏训练进行对比)

    python3 train.py --cfg cfg/my_cfg.cfg --data data/my_data.data --weights weights/yolov3.weights --epochs 100 --batch-size 32

    3、稀疏训练

    python3 train.py --cfg cfg/my_cfg.cfg --data data/my_data.data --weights weights/last.weights --epochs 300 --batch-size 32 -sr --s 0.001 --prune 1

    4、通道剪枝(考虑需不需对shortcut层进行剪枝;层剪枝,在通道剪枝上衍生而来,需要计算各层平均\gamma值)

    python3 prune.py --cfg cfg/my_cfg.cfg --data data/my_data.data --weights weights/last.pt --percent 0.85

    5、微调

    python3 train.py --cfg cfg/prune_0.85_my_cfg.cfg --data data/my_data.data --weights weights/prune_0.85_last.weights --epochs 100 --batch-size 32

    6、查看指标

    python3 test.py --data data/voc_yolov3.data --cfg cfg/yolov3.cfg --weights converted.pt

    Class Images Targets P R mAP F1
    all 5.93e+03 1.39e+04 0.959 0.949 0.943 0.953

    7、图片,文件夹,视频,相机等测试

    python3 detect.py --data data/voc_yolov3.data --cfg cfg/yolov3.cfg --weights converted.pt
    --source {
       0 # webcam
      file.jpg # image
      file.mp4 # video
      path/ # directory
      path/*.jpg # glob
      rtsp://170.93.143.139/rtplive/470011e600ef003a004ee33696235daa # rtsp stream
      rtmp://192.168.1.105/live/test # rtmp stream
      http://112.50.243.8/PLTV/88888888/224/3221225900/1.m3u8 # http stream
      }
    --output output/ --conf 0.5

    8、tensorboard
    使用tensorboard可视化

    tensorboard --logdir=runs/ --port=40110

    在xshell里面设置


    xshell设置

    然后可以在本地输入网址 127.0.0.1:40110 访问

    相关文章

      网友评论

        本文标题:yolov3剪枝

        本文链接:https://www.haomeiwen.com/subject/czlznktx.html