A decade of CNNs, one CIFAR-10 benchmark
Keras implementations of every major conv-net architecture from LeNet to SENet, with training times and accuracy numbers you can actually compare.

What it does This repo implements eight classic CNN architectures on CIFAR-10 using Keras and TensorFlow, from 1998’s LeNet through 2017’s SENet. Each model comes with parameter counts, training times on a GTX 1080 Ti, and final test accuracy — the kind of apples-to-apples table that’s surprisingly hard to find.
The interesting bit The author treats CIFAR-10 as a controlled experiment for understanding how architectural ideas actually perform at small scale. There’s a whole LeNet ablation showing how data preprocessing, augmentation, and weight decay stack: 58% → 60% → 75% → 76%. It’s a neat teaching device — you can see the marginal returns of each trick without burning GPU weeks.
Key highlights
- 13 model variants with reproducible configs and a full results table (LeNet at 76%, SENet at 95.6%)
- LeNet ablation explicitly demonstrates preprocessing, augmentation, and weight decay gains
- Includes learning-rate schedule experiments and multi-GPU training snippets
- Chinese-language tutorials and docs in
/docand linked issues - Author notes they only trained smaller DenseNet/ResNeXt variants due to compute limits — honest scope
Caveats
- Dependencies are pinned to Python 3.5, Keras ≥2.1.5, and TensorFlow-GPU ≥1.4.1 (circa 2017–2018)
- PyTorch version exists at a separate repo (CIFAR-ZOO); this one is Keras-only
- Some larger networks weren’t fully trained; results reference external implementations
Verdict Worth bookmarking if you’re teaching CNN fundamentals or need quick baseline numbers on CIFAR-10. Skip it if you want production-ready code or modern PyTorch implementations — this is deliberately a pedagogical time capsule.