VGG

Last updated on Feb 12, 2021

VGG-11

Parameters 133 Million
FLOPs 8 Billion
File Size 506.84 MB
Training Data ImageNet
Training Resources 8x NVIDIA V100 GPUs
Training Time

Training Techniques Weight Decay, SGD with Momentum
Architecture Convolution, Dropout, Dense Connections, ReLU, Max Pooling, Softmax
ID vgg11
LR 0.2
Epochs 90
LR Gamma 0.1
Momentum 0.9
Batch Size 32
LR Step Size 30
Weight Decay 0.0001
SHOW MORE
SHOW LESS
VGG-11 with batch normalization

Parameters 133 Million
FLOPs 8 Billion
File Size 506.88 MB
Training Data ImageNet
Training Resources 8x NVIDIA V100 GPUs
Training Time

Training Techniques Weight Decay, SGD with Momentum
Architecture Batch Normalization, Convolution, Dropout, Dense Connections, ReLU, Max Pooling, Softmax
ID vgg11_bn
LR 0.2
Epochs 90
LR Gamma 0.1
Momentum 0.9
Batch Size 32
LR Step Size 30
Weight Decay 0.0001
SHOW MORE
SHOW LESS
VGG-13

Parameters 133 Million
FLOPs 11 Billion
File Size 507.54 MB
Training Data ImageNet
Training Resources 8x NVIDIA V100 GPUs
Training Time

Training Techniques Weight Decay, SGD with Momentum
Architecture Convolution, Dropout, Dense Connections, ReLU, Max Pooling, Softmax
ID vgg13
LR 0.2
Epochs 90
LR Gamma 0.1
Momentum 0.9
Batch Size 32
LR Step Size 30
Weight Decay 0.0001
SHOW MORE
SHOW LESS
VGG-13 with batch normalization

Parameters 133 Million
FLOPs 11 Billion
File Size 507.59 MB
Training Data ImageNet
Training Resources 8x NVIDIA V100 GPUs
Training Time

Training Techniques Weight Decay, SGD with Momentum
Architecture Batch Normalization, Convolution, Dropout, Dense Connections, ReLU, Max Pooling, Softmax
ID vgg13_bn
LR 0.2
Epochs 90
LR Gamma 0.1
Momentum 0.9
Batch Size 32
LR Step Size 30
Weight Decay 0.0001
SHOW MORE
SHOW LESS
VGG-16

Parameters 138 Million
FLOPs 15 Billion
File Size 527.80 MB
Training Data ImageNet
Training Resources 8x NVIDIA V100 GPUs
Training Time

Training Techniques Weight Decay, SGD with Momentum
Architecture Convolution, Dropout, Dense Connections, ReLU, Max Pooling, Softmax
ID vgg16
LR 0.2
Epochs 90
LR Gamma 0.1
Momentum 0.9
Batch Size 32
LR Step Size 30
Weight Decay 0.0001
SHOW MORE
SHOW LESS
VGG-16 with batch normalization

Parameters 138 Million
FLOPs 16 Billion
File Size 527.87 MB
Training Data ImageNet
Training Resources 8x NVIDIA V100 GPUs
Training Time

Training Techniques Weight Decay, SGD with Momentum
Architecture Batch Normalization, Convolution, Dropout, Dense Connections, ReLU, Max Pooling, Softmax
ID vgg16_bn
LR 0.2
Epochs 90
LR Gamma 0.1
Momentum 0.9
Batch Size 32
LR Step Size 30
Weight Decay 0.0001
SHOW MORE
SHOW LESS
VGG-19

Parameters 144 Million
FLOPs 20 Billion
File Size 548.05 MB
Training Data ImageNet
Training Resources 8x NVIDIA V100 GPUs
Training Time

Training Techniques Weight Decay, SGD with Momentum
Architecture Convolution, Dropout, Dense Connections, ReLU, Max Pooling, Softmax
ID vgg19
LR 0.2
Epochs 90
LR Gamma 0.1
Momentum 0.9
Batch Size 32
LR Step Size 30
Weight Decay 0.0001
SHOW MORE
SHOW LESS
VGG-19 with batch normalization

Parameters 144 Million
FLOPs 20 Billion
File Size 548.14 MB
Training Data ImageNet
Training Resources 8x NVIDIA V100 GPUs
Training Time

Training Techniques Weight Decay, SGD with Momentum
Architecture Batch Normalization, Convolution, Dropout, Dense Connections, ReLU, Max Pooling, Softmax
ID vgg19_bn
LR 0.2
Epochs 90
LR Gamma 0.1
Momentum 0.9
Batch Size 32
LR Step Size 30
Weight Decay 0.0001
SHOW MORE
SHOW LESS
README.md

Summary

VGG is a classical convolutional neural network architecture. It was based on an analysis of how to increase the depth of such networks. The network utilises small 3 x 3 filters. Otherwise the network is characterized by its simplicity: the only other components being pooling layers and a fully connected layer.

How do I load this model?

To load a pretrained model:

import torchvision.models as models
vgg16 = models.vgg16(pretrained=True)

Replace the model name with the variant you want to use, e.g. vgg16. You can find the IDs in the model summaries at the top of this page.

To evaluate the model, use the image classification recipes from the library.

python train.py --test-only --model='<model_name>'

How do I train this model?

You can follow the torchvision recipe on GitHub for training a new model afresh.

Citation

@InProceedings{Simonyan15,
  author       = "Karen Simonyan and Andrew Zisserman",
  title        = "Very Deep Convolutional Networks for Large-Scale Image Recognition",
  booktitle    = "International Conference on Learning Representations",
  year         = "2015",
}

Results

Image Classification on ImageNet

Image Classification on ImageNet
MODEL TOP 1 ACCURACY TOP 5 ACCURACY
VGG-19 with batch normalization 74.24% 91.85%
VGG-16 with batch normalization 73.37% 91.5%
VGG-19 72.38% 90.88%
VGG-16 71.59% 90.38%
VGG-13 with batch normalization 71.55% 90.37%
VGG-11 with batch normalization 70.38% 89.81%
VGG-13 69.93% 89.25%
VGG-11 69.02% 88.63%