Sunday 15 May 2022

Can anyone draw me a road map for machine learning?

I run an AI/ML Startup and have hired many developers over the last 5 years. Here is a roadmap that I’d follow myself if I were to start again in Machine Learning:

  • Learn Python: I think Python is by far the best programming language when it comes to Machine Learning. I will spend significant time learning Python basics - variables, constants, loops, lists, dictionaries, functions, etc. There are some excellent online courses on Python programming. Pick up one such course and complete it end-to-end.
  • Learn Data Structures and Algorithms: Directly jumping from Python Programming to Machine Learning will absolutely be overwhelming. Machine Learning requires extensive programming skills and it is extremely important to be able to do that, otherwise one would find things frustrating. Imagine, you know the basics of writing a Python program, and there is a Machine Learning problem in front of you, which you can easily solve, but can’t write code for - how frustrating would that be? Therefore, I’d highly recommend spending time studying Data Structures and Algorithms. In any case, if you are going to apply for a job in Machine Learning, you are sure to face a Data Structures round and so, why not prepare for it? CLRS is the best book for Data Structures and algorithms. There are some great courses in Data Structures and Algorithms. I find the Coursera course to be quite relevant. However, if you are looking for a Python-specific course, then try this one. I’d not recommend spending money on purchasing certifications for Data Structures courses. Your focus should be on studying the course material and learning from it rather than on a certification.
  • Learn Machine Learning: Now that you know how to write code, and handle some relatively sizeable programs, it is the right time to jump into Machine Learning. The best course, to begin with, is the Coursera Machine Learning Course. This is a completely free course and is taught by Andrew Ng - a leading Machine Learning Scientist. I’d suggest that one should complete this course end-to-end including the assignments and exercises. The course will help you learn the basics of Machine Learning and you’d be ready to solve ML problems. Once you’re through with this course, it's the time to apply your knowledge to create meaningful projects which you can showcase on your resume. There is an excellent course for this that I’d highly recommend - Learn Machine Learning By Building ProjectsYou would not only learn the concepts of ML in this course, but also you’d be creating some excellent projects which will help you on your resume shortlisting for job interviews.

If done sincerely, the entire above curriculum can be completed in a time period of 2 - 3 months in the best case, and 3 - 4 months in an average case. I think one should aim for 15 - 20 days to learn the basics of Python, another 15 - 20 days for Data Structures, and the remaining time to learn the actual Machine Learning curriculum.

Apart from this, here are some general thoughts:

  1. To avoid boredom, you may want to consider partnering with a friend so that you both can learn together and most importantly, discuss doubts and collaborate. You both can bounce off problem statements at each other and challenge each other - the whole learning experience would become far more engaging.
  2. While Machine Learning would be a lot of theory, I’d highly recommend keeping the focus on the implementation of the algorithms. Nothing gives more clarity than implementing the algorithm and writing a working code. Only reading theory isn’t going to help.
  3. If you are not able to understand any specific algorithm, search it on YouTube and you would find some amazing videos and alternative explanations which will help you clear the doubt.
  4. To participate in Machine Learning contests, you may want to enroll yourself on KaggleIt is the most popular site for Machine Learning datasets and contests.
  5. The roadmap that I have explained above is only to get yourself started in Machine Learning and grab an entry-level job. By no means it is exhaustive. The sky is the limit when it comes to learning ML.

Happy learning!

No comments:

Post a Comment