An introduction to deep learning with Python (Keras) : Building a digit recogniser

Published Mar 22, 2018

I am a senior undergrad of Maths and Computing at the Indian Institute of Technology, BHU (Varanasi).

The problem I wanted to solve

Okay, so getting started with Deep Learning? Image recognition? Taking up this problem: Digit Recognition is probably the easiest and the fastest way to get your hands dirty. Now python is my go to language when it comes to this domain, so here we go!

What are we doing exactly?

This is a very preliminary problem. We are going to make a deep classifier that will recognise hand written digits with about 98% accuracy. This is the best part, you can play around with the model and improve the accuracy.

What technology will you need?

Like I said, Python is definitely the most seamless language when it comes to building machine learning models. Hence I picked up Python. However for building the following model, you'll need to have the following libraries installed:

1. pip
2. Scipy and dependencies (python -m pip install --user numpy scipy matplotlib ipython jupyter pandas sympy nose)
3. Keras (sudo pip install keras)

The process ......

After installation, all you need is to get your hands dirty with learning Keras. I'll write another post about learning the same if any of you readers propose so, let me know in the comments.

Did I face any challenges?

Its a simple problem brothers!

Key takeaways!

Finding just the right deep network architecture can be tricky. You have to have a killer intuition, that comes with practice of course. As a beginner, your first step is to try different architectures: deep, shallow, flat, narrow. Find the sweet spot in your validation set. Slowly you'll grow that instinct!

Like I say: Practice, get your hands dirty!

Here you go! The code and whatnot!

Check out my project hosted on GitHub at:
https://github.com/shreemoyee/Digit-Recognizer-/blob/master/Digit%20Recognizer.ipynb
Next steps is obviously to start building something bigger and better! Stay tuned!!