Skip to content

Handwritten digit classifier using Convolutional Neural Networks with test accuracy 0.995

Notifications You must be signed in to change notification settings

tango911/CNN-Digit-Recognizer

Repository files navigation

CNN Digit Recognizer

About this Competition

its a competition lunched by Kaggal to learn computer vision fundamentals with the famous MNIST data competition link : https://www.kaggle.com/c/digit-recognizer

The data files train.csv and test.csv contain gray-scale images of hand-drawn digits, from zero through nine.

Each image is 28 pixels in height and 28 pixels in width, for a total of 784 pixels in total. Each pixel has a single pixel-value associated with it, indicating the lightness or darkness of that pixel, with higher numbers meaning darker. This pixel-value is an integer between 0 and 255, inclusive.

The training data set, (train.csv), has 785 columns. The first column, called "label", is the digit that was drawn by the user. The rest of the columns contain the pixel-values of the associated image.

Each pixel column in the training set has a name like pixelx, where x is an integer between 0 and 783, inclusive. To locate this pixel on the image, suppose that we have decomposed x as x = i * 28 + j, where i and j are integers between 0 and 27, inclusive. Then pixelx is located on row i and column j of a 28 x 28 matrix, (indexing by zero).

The test data set, (test.csv), is the same as the training set, except that it does not contain the "label" column.

Content

  1. Introduction
  2. Data preparation
  3. CNN
  4. Training and Evaluating the model
  5. Prediction and submition