This repository provides code and trained models for the CVPR 2020 paper:
Rethinking Depthwise Separable Convolutions: How Intra-Kernel Correlations Lead to Improved MobileNets
Daniel Haase*, Manuel Amthor*
CVPR 2020
arXiv:2003.13549
Please note that the code provided here is work-in-progress. Therefore, many features are still missing or may change between versions.
- Python>=3.6
- PyTorch>=1.0.0 (support for other frameworks might be added later)
pip install --upgrade bsconv
See here for PyTorch usage details.
- BSConv for PyTorch:
- removed activation and added option for normalization of PW layers in BSConv-S (issue #1) (API change)
- added option for normalization of PW layers in BSConv-U (API change)
- ensure that BSConv-S never uses more mid channels (= M') than input channels (M) and added parameter
min_mid_channels
(= M'_min) (API change) - added model profiler for parameter and FLOP counting
- replacer now shows number of old and new model parameters
- first public version
- includes modules
BSConvU
andBSConvS
for PyTorch - includes replacers
BSConvU_Replacer
andBSConvS_Replacer
for PyTorch