All Projects → aligholami → SimpNet-Tensorflow

aligholami / SimpNet-Tensorflow

Licence: other
A Tensorflow Implementation of the SimpNet Convolutional Neural Network Architecture

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to SimpNet-Tensorflow

DeepBind-with-PyTorch
CNN architecture for predicting DNA binding sites for Transcription Factors
Stars: ✭ 36 (+125%)
Mutual labels:  convolutional-neural-network
Keras-MultiClass-Image-Classification
Multiclass image classification using Convolutional Neural Network
Stars: ✭ 48 (+200%)
Mutual labels:  convolutional-neural-network
gan-vae-pretrained-pytorch
Pretrained GANs + VAEs + classifiers for MNIST/CIFAR in pytorch.
Stars: ✭ 134 (+737.5%)
Mutual labels:  mnist
clinicadl
Framework for the reproducible processing of neuroimaging data with deep learning methods
Stars: ✭ 114 (+612.5%)
Mutual labels:  convolutional-neural-network
image-defect-detection-based-on-CNN
TensorBasicModel
Stars: ✭ 17 (+6.25%)
Mutual labels:  mnist
MNIST-TFLite
MNIST classifier built for TensorFlow Lite - Android, iOS and other "lite" platforms
Stars: ✭ 34 (+112.5%)
Mutual labels:  mnist
digdet
A realtime digit OCR on the browser using Machine Learning
Stars: ✭ 22 (+37.5%)
Mutual labels:  mnist
crohme-data-extractor
A modified extractor for the CROHME handwritten math symbols dataset.
Stars: ✭ 18 (+12.5%)
Mutual labels:  mnist
Hierarchical-Typing
Code and Data for all experiments from our ACL 2018 paper "Hierarchical Losses and New Resources for Fine-grained Entity Typing and Linking"
Stars: ✭ 44 (+175%)
Mutual labels:  convolutional-neural-network
catseye
Neural network library written in C and Javascript
Stars: ✭ 29 (+81.25%)
Mutual labels:  mnist
MNIST
Handwritten digit recognizer using a feed-forward neural network and the MNIST dataset of 70,000 human-labeled handwritten digits.
Stars: ✭ 28 (+75%)
Mutual labels:  mnist
MNIST-adversarial-images
Create adversarial images to fool a MNIST classifier in TensorFlow
Stars: ✭ 13 (-18.75%)
Mutual labels:  mnist
PolyphonicPianoTranscription
Recurrent Neural Network for generating piano MIDI-files from audio (MP3, WAV, etc.)
Stars: ✭ 146 (+812.5%)
Mutual labels:  convolutional-neural-network
deep-explanation-penalization
Code for using CDEP from the paper "Interpretations are useful: penalizing explanations to align neural networks with prior knowledge" https://arxiv.org/abs/1909.13584
Stars: ✭ 110 (+587.5%)
Mutual labels:  convolutional-neural-network
cuda-neural-network
Convolutional Neural Network with CUDA (MNIST 99.23%)
Stars: ✭ 118 (+637.5%)
Mutual labels:  mnist
playing with vae
Comparing FC VAE / FCN VAE / PCA / UMAP on MNIST / FMNIST
Stars: ✭ 53 (+231.25%)
Mutual labels:  mnist
PaperSynth
Handwritten text to synths!
Stars: ✭ 18 (+12.5%)
Mutual labels:  mnist
DeTraC COVId19
Classification of COVID-19 in chest X-ray images using DeTraC deep convolutional neural network
Stars: ✭ 34 (+112.5%)
Mutual labels:  convolutional-neural-network
tensorflow-image-classifier
Easily train an image classifier and then use it to label/tag other images
Stars: ✭ 29 (+81.25%)
Mutual labels:  convolutional-neural-network
numpy-neuralnet-exercise
Implementation of key concepts of neuralnetwork via numpy
Stars: ✭ 49 (+206.25%)
Mutual labels:  mnist

SimpNet-Tensorflow


By Ali Gholami, Bio-intelligence Research Unit, Sharif University of Technology.

Introduction

This repository contains the first unofficial implementation of SimpNet architecture described in the paper " Towards Principled Design of Deep Convolutional Networks: Introducing SimpNet" (https://arxiv.org/abs/1802.06205).

Todo

  • Xavier weight initialization for layers {1, 2, 6, 7, 8, 9, 10, 11, 12, 13}
  • Gaussian weight initialization for layers {3, 4, 5}
  • Feed flipped images
  • Shuffle input data
  • Adaptive learning rate for the Adam
  • Moving average on the batch norms (M.A. Fraction = 0.95)
  • Fix SafPool dropout rates
  • Multi-label accuracy reports
  • LOSS = 1 - ACC
  • Learning Rate Visualization
  • AdaDelta Optimizer
  • Convolution Strides Optimization
  • Multilabel Confusion Matrix

Installation

The instructions are tested on Ubuntu 16.04 with python 3.6 and tensorflow 1.10.0 with GPU support.

  • Clone the SimpNet repository:

    git clone https://github.com/hexpheus/SimpNet-Tensorflow.git
  • Setup virtual environment:

    1. By default we use Python 3.6. Create the virtual environment

      virtualenv env
    2. Activate the virtual environment

      source env/bin/activate
  • Use pip to install required Python packages:

    pip install -r requirements.txt

Visualization

  • We can monitor the training process using tensorboard.
    tensorboard --logdir graphs/simpnet/
    Tensorboard displays information such as training loss, evaluation accuracy, visualization of detection results in the training process, which are helpful for debugging and tunning models, as shown below:

MNIST Performance

Here is the loss and accuracy results after running the model on the MNIST dataset. Results shown here are provided after 18 epochs of training. Note that the accuracy provided here is based on the number of true predictions in each batch. Batch size is 140 in the following training.

Accuracy


Loss

Citation

If you use these models in your research, please cite:

@article{hasanpour2018towards,
  title={Towards Principled Design of Deep Convolutional Networks: Introducing SimpNet},
  author={Hasanpour, Seyyed Hossein and Rouhani, Mohammad and Fayyaz, Mohsen and Sabokrou, Mohammad and Adeli, Ehsan},
  journal={arXiv preprint arXiv:1802.06205},
  year={2018}
}

Official Implementation

You can find the official implementation here.

Important Note

This model has yielded stunning results on both MNIST and Fashion MNIST datasets. Other datasets should be tested for evaluation.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].