Skip to content

Try out different pruning-approaches on lightweight Backbones.

Notifications You must be signed in to change notification settings

237014845/MobileNet-v2-pruning

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MobileV2 Pruning

This repository aim to try out different pruning-approaches on lightweight Backbones.

Usage

  1. Training
    python main.py --arch MobileNetV2 (for l1norm pruner )
    python main.py --sr --arch MobileNetV2 (for slimming pruner) 
    python main.py --arch USMobileNetV2 (for Autoslim pruner )
    
  2. Pruning (prune+finetune)
    python prune.py --arch MobileNetV2 --pruner l1normpruner --pruneratio 0.6
    python prune.py --arch MobileNetV2 --pruner SlimmingPruner --sr --pruneratio 0.6
    python prune.py --arch USMobileNetV2 --pruner AutoSlimPruner
    

Results on Cifar10

BackBone Pruner Prune Ratio Original/Pruned/Finetuned Accuracy FLOPs(M) Params(M)
MobileV2 L1-Norm 0.6 0.937/0.100/0.844 313.5->225.5 2.24->1.15
MobileV2 Slimming 0.6 0.922/0.485/0.915 313.5->214.5 2.24->0.98
MobileV2 AutoSlim <200 flops 0.920/0.561/0.916 313.5->199.67 2.24->0.81

TODO

Pruning Methodsd

Backbones

  • MobileV2
  • ShuffleNet
    ....

Reference

rethinking-network-pruning

Pruned-MobileNet_v2

About

Try out different pruning-approaches on lightweight Backbones.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%