The complete Machine Learning roadmap with a monthly action plan (Part I)
Introduction
The past few years have been a roller coaster ride for AI practitioners. If you are thinking about jumping into the field, this blog is for you.
We present a roadmap at a monthly level, with all the necessary free resources attached. If you follow this action plan, you will have a clear understanding of what this field is all about. You will come across all the challenges that you should face and learn to overcome them (on your own). This path will also test how passionate you are about this field and will answer all your doubts on whether Machine Learning (ML) is for you or not.
Disclaimer: The journey won’t be easy. But if you hang in there, the rewards are overwhelming! 😁
Pre-requisites
High time to brush up on a few things before we begin. If the pre-requisites seem overwhelming you can jump onto the roadmap and learn them simultaneously.
Calculus
The bare minimum would be to have a good understanding of the chain rule and the reason for the use of derivatives in general.
Resources
Overall Calculus from basics
Eddie Woo - YouTube (Check out his “Introduction to Differentiation” and “Applications of Calculus” playlists)
Chain rule
Why use derivates
Linear Algebra
The basics of Matrix Multiplication and Transpose of a vector.
Resources
Matrix Multiplication
Transpose of a matrix
Statistics
A general overview of a few concepts like hypothesis tests, Central limit theorem and types of data distributions are essential for having a smooth start. You can go for either of the resource mentioned below.
Resources
Python
Basic functionalities like looping, function calls, handling NumPy, Pandas and MatPlotLib are necessary. Although, if python is very new to you, you can learn it on the fly as we go through the roadmap. It’s okay to google code chunks from StackOverflow (as and when required), so no issues!
Setting monthly goals
Overall Goal
Have a very detailed understanding of different ML algorithms
Able to implement all of them with ease
Participate in ML hackathons
Contribute back to the ML community
The entire plan is to get yourself familiar with all the keywords in the first pass, and slowly finetune your understanding as we proceed. We will quote Andrew Ng before we start off.
“If you don’t understand anything now, don’t worry about it.“
January and February
We suggest you jump into Machine Learning from the resources mentioned below. Pick one playlist which suits you and use the other two as references for the same concepts. Do make sure you make notes. You would need them later. Trust us!
It’s very natural not to understand all these things at one go. Just keep going. You can breeze through a few concepts but do finish the playlists and keep making notes!
Resources
March
Time to deep dive! Go back through your notes and try to understand all the math in detail. Try to understand why each algorithm is designed. Cross question each concept and convince yourself why they work. We also recommend you to read blogs, papers or check out other videos for a deeper understanding (here is a complementary list of resources by Shanmukha Sainath)
Disclaimer: There are a number of blogs on Medium and TowardsDataScience that have no clue of what they are talking about. Stay away from such online content.
April
By now, you should have a good theoretical understanding of the background concepts.
It’s time to get your hands dirty!
Only learning the concepts won’t help you. You need to learn how to implement them. Coding the models will eventually give you enough confidence to come up with your own ideas on new datasets.
Go back to your notes, pick up all the algorithms you came across and implement them. You can download two datsets, one for classification and one for regression. Keeping these datasets the same, you can try out different models and see how they perform on your desired evaluation metric. This might sound overwhelming but if you fix the datasets, it’s just a few line changes per model. Scikit learn and python have made it that easy for us! We encourage you to go through different implementations available online on your own. Googling is also an important art to learn! 😁
Resources
Datasets
May
Time to test what you have learned. The best way to do so is to participate in ML hackathons.
But not on a live hackathon!
What you need to do
Pick a random competition that is over
Check if it has the dataset available for you to play around
Read the problem statement
Try to solve it on your own
Submit a few solutions and check where you land on the leaderboard
Check out winner notebooks, study them, see how the winners write code. What features they use, what models they use!
Compare with your approach
In the first few attempts you might not get a good score, but the more notebooks you follow the more you will understand that there is a pattern in the way ML practitioners write code. Understand THAT and you are good to go.
Resources
STD drug effectiveness ML prediction challenge (Hackerearth)
Rank 5 notebook (corresponding blog)
Jantahack: Healthcare Analytics II (AnalyticsVidhya)
June and July
Time to participate in live hackathons now and win some cash prizes! You can do this! All the best.
A note from the authors: Try to sit for short competitions first. The short ones increase your quick thinking capacity and implementation speed. You need to explore more problems in a short period, hence the advice.
Resources
For a complete list of other platforms, do check out this blog by Vetrivel PS.
Bonus Round
We admit that such rigorous learning does leave you burnt out. After all, we have been there. BUT, one way to keep yourself going is to look for inspiration, to see all the endless applications that are possible with ML. For all this make sure to go through the following resources:
Conclusion
This blog assumes you are dedicating around ~8 hours per day for learning these concepts. You are always free to tweak the routine based on your available bandwidth, but this is roughly how you should approach the field as a beginner.
Do remember the journey might be a little difficult in the first phase, but as things start sinking in, you will start enjoying!
All the best! Happy learning! ✌