Someone trying to start their ML journey would be confused about where to start. There are thousands of roadmaps in the world, some starting from Math, some starting from ML online courses, then backtracking to Math, some directly starting from Deep Learning before everything etc. You should have probably come across several memes about this on social media.
Well, jokes aside, How should we decide the starting point? What is important?
To answer those questions, I thought that we needed answers to two critical questions:
- How did people working or researching in the field start their journey?
- How do these people recommend others to start their journey?
To get these answers, I thought LinkedIn was the best place. Hence, I conducted polls in different ML groups for the two questions. The polls ran over a week, and roughly answers from roughly 300-400 people were collected. I try to present them through this article. Before that, I will try to present why this is a problem by walking you through my journey in AI.
I was baffled when I wanted to start my ML/AI journey. I used to be one of the traditionalists who wanted to start their journey from basic math. So learning from Math always lead to Calculus. I used to dive into calculus, then work on some problems, be happy and then look at the following steps I needed to take. They were always linear algebra and statistics. Unfortunately, despite having fantastic resources for the two topics, I always used to get stuck at some point and leave it.
Later, I came across a list of all the Mathematical and related concepts considered prerequisites for Machine learning. Here are a few from that list:
- Probability (Univariate and Multivariate) and Statistics
- Multivariate Calculus and Partial Differential Equations, Numerical Methods for PDEs etc.,
- Optimization Theory
- Game Theory
- Decision Theory
- Information Theory
- Linear Algebra
This is a brief list of topics from the original list. Each of the individual topics itself is a whole study. Among the topics listed, I was only confident about Linear Algebra and Calculus. If I had to follow this path, it would have taken months and probably 1-2 years to even develop a model. At this point, I knew it was time to deviate from the traditional path.
Well, I probably wouldn't have done this without external pressures. Still, my institute had a compulsory internship project, and I had started this whole fiasco just around 3-4 months before I needed an internship.
So what had I done? Well, the great genius (The past me in this case...😑) decided to dive directly into Deep learning instead of starting with Machine learning. The market needed that in your resume then, so I thought it was a good idea. Hence I have dived directly into Andrew Ng's Deep Learning specialisation.
Luckily the course had covered the basics, or else I would have become mad. Also, Professor Ng's beautiful line, "Don’t worry about it if you don’t understand",. gave me the confidence to move forward. Hence it was not all bad. However, If I had to recommend someone a starting point, I would probably recommend SentDex's playlist or Fast.Ai's Intro to Machine learning course.
The Polls and their results.
It's time to get to the main point of this article. How did people start their journey? and What do they recommend for beginners? These questions were asked for the past two weeks, and here are the results:
So why do we need to know how people started their journeys? Well, I thought it would present the reality of the people in the market or the industries. I originally wanted to write the article with only this poll and draw a few conclusions. Then I thought comparing people's recommendations to this when the voting ended would be fun.
Online/Offline Machine learning courses
Based on history, many people started their journey through ML online/offline courses. This can be their college curriculum or Coursera, or other platforms. This result is natural, as it was obvious. I didn't expect the 24% of people who started their journey through DL. As I said, the market needed flashy terms like "Convolution Neural Networks" or projects like "Sentiment classification". I thought to confirm this with the recruiters I know, and they accepted that Sentiment classification is the most common project they see in the resumes they get.
I genuinely found a new respect for those who started in Math. I want to know if they covered all the essential topics from calculus to Stats and optimisation or if it was part of their uni curriculum. However, only 26% started their journey in Math.
But I wouldn't recommend beginners start from Math. Of course, High-school level math is still essential, but other than that, I think starting from math takes a lot of time if you plan to enter the job market. Maybe even for people who want to focus on research, I recommend not starting from here. Having fun with the projects is more motivating and engaging than math. Slowly as you do projects, you will automatically find the need to understand certain aspects of different concepts.
For example, you can focus on game theory's essential and relevant aspects when you want to learn Generative Adversarial Networks (GANs). Or the relevant probability concepts when discussing Variational Autoencoders or Graph neural networks.
Finally, the most contradictory part is the project-based approach to machine learning. This is my new favourite approach as I learn and develop the models. I am now even training models with only 1~2 differences, like having or not having batch norm or max pooling vs average pooling etc. I love this approach as I can understand the differences by visualising and quantifying the saliency of the models. I can see why many people recommend the project-based approach. Roughly 35% (~1% more than people who recommend math.) of the people recommended people start their journeys this way.
In the aspects of jobs, however, the need for certifications for Machine learning courses is needed to be considered. So, I still need to discuss this with others before concluding. This approach adds fun projects to your resume, and if you dive into your projects, this can help in your interviews a lot.
So? What should you take from this poll?
Now, the decision is up to you. Many who recommend a project-based approach or Math started their journey probably from courses. This can be backed by the higher percentage of people who started from ML courses. However, they probably have a reason to recommend starting with math or a project-based approach.
This decision between math and a project-based approach is highly made depending on your time requirements and priorities. If you have sufficient time, then I will recommend starting with Math. However, don't dive too deep. Getting intuition and practising a few problems is enough. We are not going to win international olympiads. We only need the sufficient background to understand what research papers present.
However, if you have limited time, I recommend a project-based approach, especially if you have some interviews. This gives you enough leverage to answer questions in the interview. So, the decision is now up to you.
One thing that is important to note is that I have just taken the results directly from the LinkedIn polls. It was hard to export the voter's details and get info about age, location, industry, education level, etc., to make a better report. So, it would be better to think how you start your journey still seriously. At the end of the day, everyone plays their own game, each with its own rules.
By the way, if you use the project-based approach, staying tuned for my articles might also interest you. I am currently working on some projects that I think are fun while also trying to present a different point of view for the base theory. Even if you don't choose this approach, stay tuned for other articles where I summarise and present articles on various topics.
Thanks for reading till the end. You are a beast! Hope to see you again here at NeuroNuts! ✌