Searching for BurgerFormer with Micro-Meso-Macro Space Design (ICML 2022)

November 3, 2022 ยท View on GitHub

This is an official pytorch implementation for "Searching for BurgerFormer with Micro-Meso-Macro Space Design". BurgerFormer-img1 BurgerFormer-img2

Requirements

  • PyTorch 1.8.0
  • timm 0.4.12

BurgerFormer Models

Pre-trained checkpoints are released google drive/baiduyun. Place them in the .checkpoints/ folder.

Note: access code for baiduyun is gvfl.

modelFLOPs/GParams/MImageNet Top1/%
BurgerFormer-tiny1.01078.0
BurgerFormer-small2.11480.4
BurgerFormer-base3.92682.7
BurgerFormer-large6.53683.0

Validation

To evaluate a pre-trained BurgerFormer model on ImageNet, run:

bash script/test.sh

Train

To retrain a BurgerFormer model on ImageNet, run:

bash script/train.sh

Search

  1. Split ImageNet training dataset to get sub-train & sub-val
bash script/imagenet_build.sh
  1. Supernet Training (8 V100 32G)
bash script/train_supernet.sh
  1. Evolution Search
bash script/search_evo.sh

Then the searched "myburger" will exist in arch.py

Citation

Please cite our paper if you find anything helpful.

@InProceedings{yang2022burgerformer,
  title={Searching for BurgerFormer with Micro-Meso-Macro Space Design},
  author={Yang, Longxing and Hu, Yu and Lu, Shun and Sun, Zihao and Mei, Jilin and Han, Yinhe and Li, Xiaowei},
  booktitle={ICML},
  year={2022}
}

Acknowledgment

This code is heavily based on poolformer, ViT-ResNAS, pytorch-image-models, mmdetection. Great thanks to their contributions.