GhostNet: More Features from Cheap Operations. CVPR 2020. [arXiv]
By Kai Han, Yunhe Wang, Qi Tian, Jianyuan Guo, Chunjing Xu, Chang Xu.
- Approach
- Performance
GhostNet beats other SOTA lightweight CNNs such as MobileNetV3 and FBNet.
This repo provides the TensorFlow code and pretrained model of GhostNet on ImageNet. The PyTorch implementation can be found at https://github.com/iamhankai/ghostnet.pytorch.
myconv2d.py
implemented GhostModule
and ghost_net.py
implemented GhostNet
.
The code was verified on Python3.6, TensorFlow-1.13.1, Tensorpack-0.9.7. Not sure on other version.
Run python main.py --eval --data_dir=/path/to/imagenet/dir/ --load=./models/ghostnet_checkpoint
to evaluate on val
set.
You'll get the accuracy: top-1 error=0.26066
, top-5 error=0.08614
with only 141M
Flops (or say MAdds).
ImageNet data dir should have the following structure, and val
and caffe_ilsvrc12
subdirs are essential:
dir/
train/
...
val/
n01440764/
ILSVRC2012_val_00000293.JPEG
...
...
caffe_ilsvrc12/
...
caffe_ilsvrc12 data can be downloaded from http://dl.caffe.berkeleyvision.org/caffe_ilsvrc12.tar.gz
@inproceedings{ghostnet,
title={GhostNet: More Features from Cheap Operations},
author={Han, Kai and Wang, Yunhe and Tian, Qi and Guo, Jianyuan and Xu, Chunjing and Xu, Chang},
booktitle={CVPR},
year={2020}
}
This repo provides the TensorFlow code of GhostNet. Other versions can be found in the following:
- Pytorch: code
- Darknet: cfg file, and description
- Gluon/Keras/Chainer: code
- Pytorch for human pose estimation: code