Skip to content

ddlee-cn/awesome_cnn

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Awesome CNNs

This repo contains a collection of CNN network structures.

For each kind of CNN network, we provide a pytorch implementation, a caffe implementation for NetScope visualization, and additional pictures(mostly from original paper) to help you understand how it works. Links to original paper and my notes(in Chinese) are also provided.

Furthermore, in experiments folder, there is a training script for you to train each kind of network with Pytorch on dataset CIFAR-10.

Usage

1.Clone this repo.

git clone https://github.com/ddlee96/awesome_cnn.git

2.Install PyTorch and TorchVision following instructions on PyTorch website.

(Optional)Install dependencies using pipenv:

pip install pipenv
cd awesome_cnn
pipenv install

pipenv will install dependencies based on Pipfile. You can also modify this Pipfile to match your environment.

3.Prepare dataset

cd awesome_cnn
mkdir data

Then just run python experiments/experiment.py --data cifar, it will create data/cifar/ and download cifar-10 dataset for you.

(Optional)You can also use dataset MNIST and Fashion-MNIST, it requires Pillow package. Install it using pip install Pillow.

4.Start Training

python experiments/experiment.py --model resnet50 --data cifar --batch_size 182 --gpus 0,1,2,3

It will train model ResNet50 on cifar10 with batch size 128. More options can be find in experiment.py.

CNN Network List

Network Name PaperNotes Paper Netscope Proposed Date
MobileNets MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications arxiv - 17.04
ResNeXt Aggregated Residual Transformations for Deep Neural Networks arxiv Visualization 16.11
Xception Xception: Deep Learning with Depthwise Seperable Convolutions arxiv Visualization 16.10
DenseNet Densely Connected Convolutional Networks arxiv Visualization 16.08
ResNet-v2 Identity Mappings in Deep Residual Networks arxiv - 16.03
Inception-ResNet Inception-v4, Inception-ResNet and the Impact of Residual Connections on Learning arxiv Visualization 16.02
SqueezeNet SqueezeNet: AlexNet-level accuracy with 50x fewer parameters and <0.5MB model size arxiv - 16.02
Inception-v3 Rethinking the Inception Architecture for Computer Vision arxiv Visualization 15.12
ResNet Deep Residual Learning for Image Recognition arxiv Visualization 15.12
GoogLeNet Going deeper with convolutions arxiv Visualization 14.09
VGG Very Deep Convolutional Networks for Large-Scale Image Recognition arxiv Visualization 14.09
AlexNet ImageNet Classification with Deep ConvolutionalNeural Networks NIPS Visualization -
LeNet Gradient-based learning applied to document recognition Lecun's Homepage - 1998

To be added

  • SqueezeNet
  • ResNet-v2
  • SENet
  • LeNet
  • DPN
  • NASNet
  • MobileNet V2

About

A collection of CNN structures, contains PyTorch Implementation and Netscope Visualization.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages