pytorch_image_classification  by hysts

PyTorch image classification for various datasets (CIFAR, MNIST, ImageNet)

Created 7 years ago
1,419 stars

Top 28.7% on SourcePulse

GitHubView on GitHub
Project Summary

This repository provides PyTorch implementations of various state-of-the-art image classification models, including ResNet, WRN, DenseNet, and others, along with popular regularization techniques like Cutout and Mixup. It's designed for researchers and practitioners looking to benchmark and experiment with these architectures and techniques on standard datasets like CIFAR-10/100, MNIST, and ImageNet.

How It Works

The project utilizes a configuration-driven approach, allowing users to specify model architectures, datasets, training parameters, and data augmentation strategies via YAML files. It supports standard training loops, cosine annealing learning rate schedules, and various optimization techniques. The implementation is structured to facilitate easy modification and extension for further research.

Quick Start & Requirements

  • Install: pip install -r requirements.txt
  • Prerequisites: Python >= 3.7, PyTorch >= 1.4.0, torchvision, NVIDIA Apex.
  • Usage: python train.py --config configs/cifar/resnet_preact.yaml
  • Documentation: README

Highlighted Details

  • Implements a wide range of influential architectures (ResNet, WRN, DenseNet, ResNeXt, Shake-Shake, PyramidNet).
  • Integrates numerous regularization and data augmentation techniques (Cutout, Random Erasing, Mixup, RICAP, Dual-Cutout).
  • Provides extensive benchmark results on CIFAR-10, CIFAR-100, MNIST, and FashionMNIST, comparing different models and techniques.
  • Includes experiments on large-batch training, learning rate scaling, and mixed-precision training.

Maintenance & Community

The repository is maintained by hysts. Further community engagement details are not explicitly provided in the README.

Licensing & Compatibility

The repository does not explicitly state a license. Users should verify licensing for commercial or closed-source use.

Limitations & Caveats

The project is primarily tested on Ubuntu and may not work on other operating systems. Some experiments require specific hardware like NVIDIA GPUs and potentially Apex for mixed-precision training. Training times can be substantial, especially for larger models and datasets.

Health Check
Last Commit

3 years ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
3 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.