Skip to content

ys93239/Deep-Learning-Image-Classification

 
 

Repository files navigation

Image Classification on CIFAR 10

##Overview

Image classification was a challenging project of Microsoft CIFAR10 where we were asked to classify the images on the basis of 10 given classes.We applied Deep Learning using Tensorflow, keras and MXNet. The scripts used for this classification are described beow:

  • keras_final.py : Reads and preprocessing data, model training and predicting testing data with image augmentation.
  • keras_without_aug : Classifier without image augmentation.
  • multi_gpu_tensorflow.py : Reads tensor flow record format file, image pre-processing and multi CPU training model.
  • mxnet_large.py : Convolutional Neural Network based on MXNet API, supports multiple GPUs.

##Problem Description

The problem was to identify the category of large collecton of small images. Each image is a 32x32 pixel with three color channels: standard RGB format. There were 60,000 images splitting as 50,000 images for training the model and 10,000 for testing. The whole dataset was around 300 MB. The class/category for an image to be classified were:

  • airplane
  • automobile
  • bird
  • cat
  • deer
  • dog
  • frog
  • horse
  • ship
  • truck

##How to Run Before executing any python script, the following dependenices need to be installed.

  • numpy
  • pillow
  • scipy
  • keras
  • mxnet (v. 0.7.0)
  • tensorflow (v. 0.10 for keras and 0.11 for multi-gpu support)
  • CUDA (v. 7.5) and cuDNN(v. 5.1)

Execution Instructions

  • mxnet_large.py - command to run:- python mxnet_large.py no_of_gpus path_to_train_file path_to_test_file path_to_train_labels
  • For Multi GPU using Tensorflow run all using python <filename> in the following order
    • run images_to_tfrecord.py
    • run testimages_to_tfrecord.py
    • run multi_gpu_tensorflow.py
    • run multi_gpu_eval_tensorflow.py
  • Keras based classifiers run all files using python <filename>
    • keras_final.py and keras_without_aug.py

##Project Report Please refer to the project3_report.pdf file for a detailed overview of layers in various implementation of CNNs using different frameworks.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 77.7%
  • Java 22.3%