Coder Social home page Coder Social logo

apib's Introduction

Automatic Network Pruning via Hilbert-Schmidt Independence Criterion Lasso under Information Bottleneck Principle

Automatic Network Pruning via Hilbert-Schmidt Independence Criterion Lasso under Information Bottleneck Principle Song Guo, Lei Zhang, Xiawu Zheng, Yan Wang, Yuchao Li, Fei Chao, ShengChuan Zhang, Chenglin Wu, Rongrong Ji ICCV 2023

Model Pruning

1. VGG-16

pruning ratio (FLOPs): 66%

python main.py \
--model vgg16\
--dataset cifar10\
--target 107000000 \
--ckpt [pre-trained model dir] \
--data_path [dataset path]\
--omega 40\
--tolerance 0.01\
--alpha 5e-5
2. ResNet56

pruning ratio (FLOPs): 55%

python main.py \
--model resnet56\
--dataset cifar10\
--target 57000000 \
--ckpt [pre-trained model dir] \
--data_path [dataset path]\
--omega 5\
--tolerance 0.01\
--alpha 8e-4
3. ResNet110

pruning ratio (FLOPs): 63%

python main.py \
--model resnet110\
--dataset cifar10\
--target 96000000 \
--ckpt [pre-trained model dir] \
--data_path [dataset path]\
--omega 5\
--tolerance 0.01\
--alpha 8e-9
4. GoogLeNet

pruning ratio (FLOPs): 63%

python main.py \
--model googlenet\
--dataset cifar10\
--target 568000000 \
--ckpt [pre-trained model dir] \
--data_path [dataset path]\
--omega 9\
--tolerance 0.01\
--alpha 4e-8
5. ResNet50

pruning ratio (FLOPs): 62%

python main.py \
--model resnet50\
--dataset imagenet\
--target 1550000000 \
--ckpt [pre-trained model dir] \
--data_path [dataset path]\
--omega 1\
--tolerance 0.01\
--alpha 7e-5

Model Training

1. VGG-16
python train.py \
--model vgg16\
--dataset cifar10\
--lr 0.1\
--batch_size 256 \
--ckpt_path [pruned model dir]\
--data_path [dataset path]
2. ResNet-50
python train.py \
--model resnet50\
--dataset imagenet\
--lr 0.01\
--batch_size 128 \
--ckpt_path [pruned model dir]\
--data_path [dataset path]

Pre-trained Models

Additionally, we provide the pre-trained models used in our experiments.

CIFAR-10:

Vgg-16 | ResNet56 | ResNet110
| GoogLeNet

ImageNet:

ResNet50

Acknowledgments

Our implementation partially reuses Lasso's code | HRank's code | ITPruner's code.

apib's People

Contributors

sunggo avatar zhanglei1172 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

apib's Issues

询问剪枝后精度

您好,非常感谢您的工作和开源代码,在测试代码过程时,由于main.py文件最后没有测试剪枝后的模型精度,我们在最后一行中添加了HSIClassopruner.metric(),但是我们发现得到的结果并不正确(vgg16在CIFAR10上的参数配置,top1 10% top5 50%),请问如果想要测试剪枝后的模型精度,我们该怎么做?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.