JiahuiYu/slimmable_networks

why use slimmable_training instead of universally_slimmable_training: True in Autoslim

GYxiaOH opened this issue · 7 comments

just like title,in my opinion, if you want slim you should know error of model in any channels

Please look at branch v3.0.0

The master version code for AutoSlim is for inference only. Training code is under branch v3.0.0

@JiahuiYu yes,i see branch v3.0.0 ,in your autoslim config ,you use slimmable_training but not slimmable_training,and use SwitchableBatchNorm2d SlimmableConv2d, SlimmableLinear,and in my opinion, although calibrate_bn = true

@GYxiaOH Ah, you are right. The released config is for validation of model performance (inference ). To train a weight-shared model for NAS, you will need to enable universally_slimmable_training.

thank you for your reply, in my opinion ,i can use your us config to train a model and use slimming to find a best model(after prunning)? by the way ,i see not getattr(m, 'linked', False) in slimming function,it's mean residual_connection in us_mobilenet_v2.py?

Yes.

Thank you for your work, could you share the configuration of aotoslim training?

thank you for your reply, in my opinion ,i can use your us config to train a model and use slimming to find a best model(after prunning)? by the way ,i see not getattr(m, 'linked', False) in slimming function,it's mean residual_connection in us_mobilenet_v2.py?

Hello, can I add your wechat to ask some question? Thank you!