JalFaizy Shaikh — Published On August 31, 2016 and Last Modified On July 5th, 2020
Beginner Deep Learning Learning Path Machine Learning Python

Here’s the learning path to master deep learning in 2020!

Introduction

Deep Learning, a prominent topic in Artificial Intelligence domain, has been in the spotlight for quite some time now. It is especially known for its breakthroughs in fields like Computer Vision and Game playing (Alpha GO), surpassing human ability. Since the last survey, there has been a drastic increase in the trends. (click here to check out the survey)

Here is what Google trends shows us:

dl_trends

If you are interested in the topic here’s an excellent non-technical introduction. If you are interested to know the recent trends, here’s a great compilation.

Here our aim is to provide a learning path to all those who are new to deep learning and also the ones who want to explore it further. So are you ready to step onto the journey of conquering Deep Learning? Let’s GO!

 

Step 0 : Pre-requisites

It is recommended that before jumping on to Deep Learning, you should know the basics of Machine Learning. The Learning Path on Machine Learning is a complete resource to get you started in the field.

If you want a shorter version, here it is:

 

Timeline : Suggested: 2-6 months

 

Step 1 : Setup your Machine

Before going on to the next step, make sure you have the supported hardware. It is generally recommended that you should have atleast

  • A good enough GPU (4+ GB), preferably Nvidia
  • An OK CPU (eg. Intel Core i3 is ok, Intel Pentium may not be)
  • 4 GB RAM or depending upon the dataset.

If you are still unsure, go through this hardware guide.

PS: If you are a hardcore gamer (not just candy crushers obviously!), you may already have the required hardware.

If you don’t have the required specifications, you could either buy it or lease an Amazon Web Service instance. Here’s a good guide for using AWS for deep learning.

Note: Do not install any deep learning libraries at this stage, do it on step 3.

 

Step 2 : A Shallow Dive

Now that you have a good enough knowledge of pre-requisites, you should go on further into understanding Deep Learning.

As per your preference you could follow:

Along with the pre-requisites, you should get to know the popular deep learning libraries and the languages for running them. Here’s a (non-comprehensive) list (Check the wiki page for a more comprehensive list):

Some other notable libraries include Mocha, neon, H2O, MXNet, Keras, Lasagne, Nolearn. Here’s a list of Deep Learning libraries by Language.

Check out Lecture 12 of Stanford’s CS231n course for a brief overview of some of the popular libraries.

 

Timeline : Suggested 1-3 weeks

 

Step 3 : Choose your own Adventure!

Now comes the interesting part! Deep Learning has been applied in various fields with state-of-the-art results. To get a taste of this side of the moon, you, the reader, gets to choose which path to take. This should be a hands-on experience, so that you get a proper foundation on what you have understood until now.

Note: Each path contains a primer blog, a practical project, the required deep learning library for the project and an assisting course. First go through the primer, then install the required libraries and get on with the project. If you face any difficulties along the way, use the associated course to back you up.

 

Timeline : Suggested 1-2 months

 

Step 4 : Deep Dive into Deep Learning

Now you are (almost) ready to make a dent in Deep Learning Hall of Fame! The path ahead is long and deep (pun intended) and mostly unexplored. Now it is upto you to make use of this newly acquired skill as efficiently as you can. Here are some tips you should do to hone your skill.

 

Timeline : Suggested – Infinity!

 

Noteworthy Resources

 

End Notes

I hope this learning path was helpful to you. I have tried to make it as comprehensive as possible. Now, it’s time for you to practice and read as much as you can. To gain expertise in working in neural network try out our deep learning practice problem – Identify the Digits.

Once you have an understanding of Deep Learning and its associated concepts, take the Deep Learning Skill test. The way Deep learning is gaining recognition it is important to be familiar with it.

Good luck! Did you like reading this article? Do you follow a different approach / package / library to get started with Deep Learning? I’d love to interact with you in comments.

You can test your skills and knowledge. Check out Live Competitions and compete with best Data Scientists from all over the world.

About the Author

JalFaizy Shaikh
JalFaizy Shaikh

Faizan is a Data Science enthusiast and a Deep learning rookie. A recent Comp. Sc. undergrad, he aims to utilize his skills to push the boundaries of AI research.

Our Top Authors

Download Analytics Vidhya App for the Latest blog/Article

27 thoughts on "A Complete Guide on Getting Started with Deep Learning in Python"

shailesh
shailesh says: August 31, 2016 at 9:55 am
Very good article :) Reply
Aman Kapoor
Aman Kapoor says: August 31, 2016 at 10:00 am
Well done ! Reply
Arupratan B
Arupratan B says: August 31, 2016 at 10:19 am
Excellent articulation. Great for startups.... Reply
Renato
Renato says: August 31, 2016 at 1:14 pm
Thanks for sharing! Reply
Faizan Shaikh
Faizan Shaikh says: August 31, 2016 at 1:58 pm
Thanks shailesh! Reply
Faizan Shaikh
Faizan Shaikh says: August 31, 2016 at 1:58 pm
Thank you Aman. Glad to be of help! Reply
Tushar T. Raut
Tushar T. Raut says: August 31, 2016 at 3:30 pm
Very Nice Article Reply
Faizan Shaikh
Faizan Shaikh says: August 31, 2016 at 4:28 pm
Great! Happy to help. Reply
Faizan Shaikh
Faizan Shaikh says: August 31, 2016 at 4:29 pm
Hope you find it useful! Reply
Anchal gupta
Anchal gupta says: August 31, 2016 at 6:11 pm
Hey faizan nice article ☺️ Reply
Faizan Shaikh
Faizan Shaikh says: August 31, 2016 at 6:42 pm
Thanks Anchal! Reply
Khalil shaikh
Khalil shaikh says: September 01, 2016 at 2:38 am
Very useful article on deep learning.Congrats faizan. Reply
George
George says: September 01, 2016 at 2:50 am
Good stuff! Systematic and practical, as always. Thanks! Reply
Faizan Shaikh
Faizan Shaikh says: September 01, 2016 at 9:26 am
Glad you liked it! Reply
Faizan Shaikh
Faizan Shaikh says: September 01, 2016 at 9:26 am
Thank you :) Reply
Faizan Shaikh
Faizan Shaikh says: September 01, 2016 at 9:28 am
Thanks tushar! Reply
Neeraj Sarwan
Neeraj Sarwan says: September 01, 2016 at 10:47 am
Nice work. It will be of great help to many. Reply
Soham
Soham says: September 02, 2016 at 8:29 am
Very good article Faizan ! Keep it up ! Reply
Faizan Shaikh
Faizan Shaikh says: September 02, 2016 at 10:00 pm
Thanks Soham! Reply
Faizan Shaikh
Faizan Shaikh says: September 02, 2016 at 10:01 pm
Thanks Neeraj. Hope it truly helps many! Reply
Shafiuddin
Shafiuddin says: January 18, 2017 at 2:16 pm
Very Useful blog for DL , it is good. Reply
Amit kumar
Amit kumar says: January 21, 2017 at 10:41 am
Nice article with good content ...thanks for guidance Reply
Archit
Archit says: June 16, 2017 at 11:01 am
Hi, the link mentioned above "DL for trading" is not working. Can anyone suggest an alternative. I want to apply Deep Learning to trading. Please help! Reply
Faizan Shaikh
Faizan Shaikh says: July 08, 2017 at 5:08 pm
Here's an alternative link https://www.linkedin.com/pulse/survey-deep-learning-techniques-applied-trading-james-melenkevitz-phd Reply
Ashutosh Chapagain
Ashutosh Chapagain says: October 10, 2017 at 3:28 pm
Very good content. Thank you Reply
Atendra
Atendra says: November 11, 2017 at 7:10 pm
Great Article Faizan !! Thank you. may be this has to update as well , given the speed at which technology grows. for example Fast.ai tutorials (http://course.fast.ai/index.html) can be part of it. It's a great way to understand Deep Learning (Advantage : Also gets 10 hours of free GPU clusters !! ) Reply
Faizan Shaikh
Faizan Shaikh says: November 16, 2017 at 6:18 pm
I agree - with the pace that DL is growing, the content for DL has to be updated everyday! Reply

Leave a Reply Your email address will not be published. Required fields are marked *