InceptionV3
Model description
InceptionV3 is a convolutional neural network architecture from the Inception family that makes several improvements including using Label Smoothing, Factorized 7 x 7 convolutions, and the use of an auxiliary classifer to propagate label information lower down the network (along with the use of batch normalization for layers in the sidehead).
Step 1: Installation
pip3 install absl-py git+https://github.com/NVIDIA/dllogger#egg=dllogger
Step 2: Preparing datasets
Sign up and login in ImageNet official website, then choose 'Download' to download the whole ImageNet dataset. Specify /path/to/imagenet
to your ImageNet path in later training process.
The ImageNet dataset path structure should look like:
imagenet
├── train
│ └── n01440764
│ ├── n01440764_10026.JPEG
│ └── ...
├── train_list.txt
├── val
│ └── n01440764
│ ├── ILSVRC2012_val_00000293.JPEG
│ └── ...
└── val_list.txt
Refer below links to convert ImageNet data to TFrecord data.
Put the TFrecord data in "./imagenet_tfrecord" directory.
Step 3: Training
# 1 GPU
bash run_train_inceptionV3_imagenet.sh
# 8 GPUs
bash run_train_inceptionV3_multigpu_imagenet.sh --epoch 200
Results
GPUS |
ACC |
FPS |
BI-V100 ×8 |
76.4% |
312 images/s |
Reference