All Projects → zishansami102 → Cnn From Scratch

zishansami102 / Cnn From Scratch

Licence: gpl-3.0
A scratch implementation of Convolutional Neural Network in Python using only numpy and validated over CIFAR-10 & MNIST Dataset

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Cnn From Scratch

Emnist
A project designed to explore CNN and the effectiveness of RCNN on classifying the EMNIST dataset.
Stars: ✭ 81 (-61.43%)
Mutual labels:  convolutional-neural-networks, mnist
Motionblur Detection By Cnn
Stars: ✭ 126 (-40%)
Mutual labels:  object-detection, convolutional-neural-networks
Fashion Mnist
A MNIST-like fashion product database. Benchmark 👇
Stars: ✭ 9,675 (+4507.14%)
Mutual labels:  convolutional-neural-networks, mnist
Yolo tensorflow
🚖 Object Detection (YOLOv1) implentation in tensorflow, with training, testing and video features.
Stars: ✭ 45 (-78.57%)
Mutual labels:  object-detection, convolutional-neural-networks
Compactcnncascade
A binary library for very fast face detection using compact CNNs.
Stars: ✭ 152 (-27.62%)
Mutual labels:  object-detection, convolutional-neural-networks
Ml In Tf
Get started with Machine Learning in TensorFlow with a selection of good reads and implemented examples!
Stars: ✭ 45 (-78.57%)
Mutual labels:  convolutional-neural-networks, mnist
Ti Pooling
TI-pooling: transformation-invariant pooling for feature learning in Convolutional Neural Networks
Stars: ✭ 119 (-43.33%)
Mutual labels:  convolutional-neural-networks, mnist
Dmsmsgrcg
A photo OCR project aims to output DMS messages contained in sign structure images.
Stars: ✭ 18 (-91.43%)
Mutual labels:  object-detection, convolutional-neural-networks
Self Driving Golf Cart
Be Driven 🚘
Stars: ✭ 147 (-30%)
Mutual labels:  object-detection, convolutional-neural-networks
Wsddn
Weakly Supervised Deep Detection Networks (CVPR 2016)
Stars: ✭ 138 (-34.29%)
Mutual labels:  object-detection, convolutional-neural-networks
Svhn Cnn
Google Street View House Number(SVHN) Dataset, and classifying them through CNN
Stars: ✭ 44 (-79.05%)
Mutual labels:  convolutional-neural-networks, mnist
Deep Learning With Python
Deep learning codes and projects using Python
Stars: ✭ 195 (-7.14%)
Mutual labels:  object-detection, convolutional-neural-networks
Computervision Recipes
Best Practices, code samples, and documentation for Computer Vision.
Stars: ✭ 8,214 (+3811.43%)
Mutual labels:  object-detection, convolutional-neural-networks
Trafficvision
MIVisionX toolkit is a comprehensive computer vision and machine intelligence libraries, utilities and applications bundled into a single toolkit.
Stars: ✭ 52 (-75.24%)
Mutual labels:  object-detection, convolutional-neural-networks
Keras Faster Rcnn
Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks
Stars: ✭ 28 (-86.67%)
Mutual labels:  object-detection, convolutional-neural-networks
Sod
An Embedded Computer Vision & Machine Learning Library (CPU Optimized & IoT Capable)
Stars: ✭ 1,460 (+595.24%)
Mutual labels:  object-detection, convolutional-neural-networks
Tracking With Darkflow
Real-time people Multitracker using YOLO v2 and deep_sort with tensorflow
Stars: ✭ 515 (+145.24%)
Mutual labels:  object-detection, convolutional-neural-networks
Saliency
TensorFlow implementation for SmoothGrad, Grad-CAM, Guided backprop, Integrated Gradients and other saliency techniques
Stars: ✭ 648 (+208.57%)
Mutual labels:  object-detection, convolutional-neural-networks
Lsoftmax Pytorch
The Pytorch Implementation of L-Softmax
Stars: ✭ 133 (-36.67%)
Mutual labels:  convolutional-neural-networks, mnist
Person Detection And Tracking
A tensorflow implementation with SSD model for person detection and Kalman Filtering combined for tracking
Stars: ✭ 193 (-8.1%)
Mutual labels:  object-detection, convolutional-neural-networks

Convolutional Neural Network from scratch Awesome

Live Demo

Objective of this work was to write the Convolutional Neural Network without using any Deep Learning Library to gain insights of what is actually happening and thus the algorithm is not optimised enough and hence is slow on large dataset like CIFAR-10. This piece of code could be used for learning purpose and could be implemented with trained parameter available in the respective folders for any testing applications like Object Detection and Digit recognition.
It's Accuracy on MNIST test set is above 97%.

alt text

Architecture

INPUT - CONV1 - RELU - CONV2 - RELU- MAXPOOL - FC1 - OUT

alt text

alt text

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Prerequisites

Followings are also required if working/testing on the app.py

  • Flask - A microframework for Python
  • Gunicorn - A Python WSGI HTTP Server for UNIX
  • OpenCV - An open-source library that includes several hundreds of computer vision algorithms

Directories

  • CIFAR-10: Object detection with CIFAR-10
  • MNIST: Handwritten Digits Recognition with MNIST

Installing

  • Clone the repository
git clone https://github.com/zishansami102/CNN-from-Scratch
  • Downlad the dataset and copy that to it's corresponding folder(CIFAR-10/MNIST).
  • Move into the required directory (/CNN-from-Scratch/MNIST or /CNN-from-Scratch/CIFAR-10) and then run the following command to start training model
python train.py

Output:

alt text

  • To load pre-trained models, change the pickle filename from 'output.pickle' to 'trained.pickle' in run.py: line No. - 30-31 and comment out the training part form the code in run.py: line No. - 42-111

Application Testing/Running

  • In the the directory /CNN-from-Scratch run the following command.
python app.py

App will start running on the local server http://127.0.0.1:5000/ as shown below :

alt text

Contributing

Mail me at [email protected] if you want to contribute in this project
My homepage - zishansami102.github.io

Acknowledgments

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].