Home

Awesome

Generative-Low-bitwidth-Data-Free-Quantization

We provide PyTorch implementation for "Generative Low bitwidth Data Free Quantization".

Paper

<br/>

Dependencies

<br/>

Getting Started

Installation

  1. Clone this repo:

     git clone https://github.com/xushoukai/Generative-Low-bitwidth-Data-Free-Quantization.git
     cd Generative-Low-bitwidth-Data-Free-Quantization
    
  2. Install pytorch and other dependencies.

     pip install -r requirements.txt
    

Set the paths of datasets for testing

  1. Set the "dataPath" in "cifar100_resnet20.hocon" as the path root of your CIFAR-100 dataset. For example:

     dataPath = "/home/datasets/Datasets/cifar"
    
  2. Set the "dataPath" in "imagenet_resnet18.hocon" as the path root of your ImageNet dataset. For example:

     dataPath = "/home/datasets/Datasets/imagenet"
    

Training

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
<br/>

Results

DatasetModelPretrain Top1 Acc(%)W4A4(Ours) Top1 Acc(%)
CIFAR-100ResNet-2070.3363.58 ± 0.23
ImageNetResNet-1871.4760.60 ± 0.15

Note that we use the pretrained models from pytorchcv.

<br/>

Citation

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}
}
<br/>

Acknowledgments

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.