PyTorch CIFAR Models

May 17, 2025 ยท View on GitHub

Introduction

The goal of this project is to provide some neural network examples and a simple training codebase for begginners.

Get Started with Google Colab Open In Colab

Train Models: Open the notebook to train the models from scratch on CIFAR10/100. It will takes several hours depend on the complexity of the model and the allocated GPU type.

Test Models: Open the notebook to measure the validation accuracy on CIFAR10/100 with pretrained models. It will only take about few seconds.

Use Models with Pytorch Hub

You can simply use the pretrained models in your project with torch.hub API. It will automatically load the code and the pretrained weights from GitHub (If you cannot directly access GitHub, please check this issue for solution).

import torch
model = torch.hub.load("chenyaofo/pytorch-cifar-models", "cifar10_resnet20", pretrained=True)

To list all available model entry, you can run:

import torch
from pprint import pprint
pprint(torch.hub.list("chenyaofo/pytorch-cifar-models", force_reload=True))

Model Zoo

CIFAR-10

ModelTop-1 Acc.(%)Top-5 Acc.(%)#Params.(M)#MAdds(M)
resnet2092.6099.810.2740.81model | log
resnet3293.5399.770.4769.12model | log
resnet4494.0199.770.6697.44model | log
resnet5694.3799.830.86125.75model | log
vgg11_bn92.7999.729.76153.29model | log
vgg13_bn94.0099.779.94228.79model | log
vgg16_bn94.1699.7115.25313.73model | log
vgg19_bn93.9199.6420.57398.66model | log
mobilenetv2_x0_592.8899.860.7027.97model | log
mobilenetv2_x0_7593.7299.791.3759.31model | log
mobilenetv2_x1_093.7999.732.2487.98model | log
mobilenetv2_x1_494.2299.804.33170.07model | log
shufflenetv2_x0_590.1399.700.3510.90model | log
shufflenetv2_x1_092.9899.731.2645.00model | log
shufflenetv2_x1_593.5599.772.4994.26model | log
shufflenetv2_x2_093.8199.795.37187.81model | log
repvgg_a094.3999.827.84489.08model | log
repvgg_a194.8999.8312.82851.33model | log
repvgg_a294.9899.8226.821850.10model | log

CIFAR-100

ModelTop-1 Acc.(%)Top-5 Acc.(%)#Params.(M)#MAdds(M)
resnet2068.8391.010.2840.82model | log
resnet3270.1690.890.4769.13model | log
resnet4471.6391.580.6797.44model | log
resnet5672.6391.940.86125.75model | log
vgg11_bn70.7888.879.80153.34model | log
vgg13_bn74.6391.099.99228.84model | log
vgg16_bn74.0090.5615.30313.77model | log
vgg19_bn73.8790.1320.61398.71model | log
mobilenetv2_x0_570.8891.720.8228.08model | log
mobilenetv2_x0_7573.6192.611.4859.43model | log
mobilenetv2_x1_074.2092.822.3588.09model | log
mobilenetv2_x1_475.9893.444.50170.23model | log
shufflenetv2_x0_567.8289.930.4410.99model | log
shufflenetv2_x1_072.3991.461.3645.09model | log
shufflenetv2_x1_573.9192.132.5894.35model | log
shufflenetv2_x2_075.3592.625.55188.00model | log
repvgg_a075.2292.937.96489.19model | log
repvgg_a176.1292.7112.94851.44model | log
repvgg_a277.1893.5126.941850.22model | log

If you want to cite this repo:

@misc{chenyaofo_pytorch_cifar_models,
  author       = {Yaofo Chen},
  title        = {PyTorch CIFAR Models},
  howpublished = {\url{https://github.com/chenyaofo/pytorch-cifar-models }},
  note         = {Accessed: 2025-5-17},
  abstract     = {This repository provides pretrained neural network models trained on CIFAR-10 and CIFAR-100 datasets, including ResNet, VGG, MobileNetV2, ShuffleNetV2, and RepVGG variants.}
}