We provide PyTorch implementation for "Generative Low bitwidth Data Free Quantization".
- Generative Low bitwidth Data Free Quantization
- Shoukai Xu *, Haokun Li *, Bohan Zhuang *, Jing Liu, Jiezhang Cao, Chuangrun Liang, Mingkui Tan *
- The European Conference on Computer Vision(ECCV), 2020
- Python 3.6
- PyTorch 1.2.0
- dependencies in requirements.txt
-
Clone this repo:
git clone https://github.com/xushoukai/Generative-Low-bitwidth-Data-Free-Quantization.git cd Generative-Low-bitwidth-Data-Free-Quantization
-
Install pytorch and other dependencies.
pip install -r requirements.txt
-
Set the "dataPath" in "cifar100_resnet20.hocon" as the path root of your CIFAR-100 dataset. For example:
dataPath = "/home/datasets/Datasets/cifar"
-
Set the "dataPath" in "imagenet_resnet18.hocon" as the path root of your ImageNet dataset. For example:
dataPath = "/home/datasets/Datasets/imagenet"
To quantize the pretrained ResNet-20 on CIFAR-100 to 4-bit:
python main.py --conf_path=./cifar100_resnet20.hocon --id=01
To quantize the pretrained ResNet-18 on ImageNet to 4-bit:
python main.py --conf_path=./imagenet_resnet18.hocon --id=01
Dataset | Model | Pretrain Top1 Acc(%) | W4A4(Ours) Top1 Acc(%) |
---|---|---|---|
CIFAR-100 | ResNet-20 | 70.33 | 63.58 ± 0.23 |
ImageNet | ResNet-18 | 71.47 | 60.60 ± 0.15 |
Note that we use the pretrained models from pytorchcv.
If this work is useful for your research, please cite our paper:
@InProceedings{xu2020generative,
title = {Generative Low-bitwidth Data Free Quantization},
author = {Shoukai, Xu and Haokun, Li and Bohan, Zhuang and Jing, Liu and Jiezhang, Cao and Chuangrun, Liang and Mingkui, Tan},
booktitle = {The European Conference on Computer Vision},
year = {2020}
}
This work was partially supported by the Key-Area Research and Development Program of Guangdong Province 2018B010107001, Program for Guangdong Introducing Innovative and Entrepreneurial Teams 2017ZT07X183, Fundamental Research Funds for the Central Universities D2191240.