My best advice on how to study machine learning
I’ve been doing machine learning for over three years and am due to start a job as a machine learning engineer in a few months. So, it’s fair to say I have probably built hundreds of models at this point. That’s why, in this article, I want to break down how I’d learn machine learning again and give you some clarity on how you can approach it as well.
What Is Machine Learning?
The term “machine learning” originated from Arthur Samuel in 1959, who was researching AI at IBM. He described machine learning as:
Field of study that gives computers the ability to learn without being explicitly programmed
Essentially, it’s a set of computational methods and algorithms that learn from data and past experience to make future predictions. Typically, the higher the quality and quantity of data, the better the future predictions will be as there is more information to learn from.
The “learning” part is that we don’t give explicit instructions to the computer regarding the algorithm. There are some loose rules, but the algorithm finds the best parameters of the model on its own. Hence, it is “learning.”
The diagram below illustrates it nicely and kind’ve stupidly! You would feed the model with cat pictures, and the model will learn how to categorise certain images as a cat or not.

This is an example of supervised learning, where we have labels for our data. However, there is also something called unsupervised learning, where the data is unlabelled, and the model’s job is to categorize and group it in a certain way.
If you want to learn more about all the types of machine learning and its history, I recommend this article. If I went into all of this in this article, it would be far too long!
With all this said, machine learning is a combination of many other older fields, such as statistics, mathematical optimisation, and data mining. Many of the machine learning algorithms have their roots in those domains.
So, it’s not necessarily an entirely new field, but it has risen to prominence due to the increase in computing and volume of data over the last few decades.
Why Learn Machine Learning?
Machine learning is used in many fields: supply chain, natural language processing, finance, trading, computer vision, insurance, medicine, and more. Chances are, every large company will have some sort of area where they use machine learning algorithms.
The best example of machine learning most people are familiar with is recommendations. When you log onto Amazon, Instagram or YouTube, stuff is recommended to you that is in line with your interests. These recommendations are generated from a machine learning algorithm.
According to this article, nearly 50% of businesses have adopted machine learning in some way, and 80% of companies mentioned that machine learning increased their revenue.
I recommend you check out the article for a full breakdown of machine learning in the industry.
With all of this in mind, and especially with the recent rise in hype in AI, machine learning is very valuable in the current job market. If you have skills and knowledge in this area, you will be compensated very well.
The average salary of a machine learning engineer ranges from £41k — £74k, with a median salary of about £55k in the UK (Source Glassdoor). This is above the national average but will vary by location and industry. In the US, the salary is even higher, with an average base of $157k (source Builtin). Pretty much anywhere in the world, a data scientist or machine learning engineer will earn above the average!
Nevertheless, I personally expect that compensation and number of jobs to increase significantly over the years as AI and machine learning become more known and widespread across the world.
Step 1: Roadmap
The first step is getting a machine learning roadmap, so you have some structured learning. These are the courses and steps I would personally follow in order:
- Maths — Learn the required maths through freeCodeCamp videos on Linear Algebra, Calculus, and Statistics. This should give you the fundamentals if you don’t have a STEM background. If you have a STEM background, you likely know most of the material already, but sometimes its useful to have a refresher.
- Python — Learn basic Python syntax and operations. The free courses I recommend are Tutorialspoint, w3schools, and FreeCodeCamp. Make sure you do the exercises to cement your understanding.
- ML Libraries — Get used to working with machine learning libraries like NumPy, Pandas, Matplotlib, and Sci-Kit Learn. Take basic tutorials and build simple things at the beginning. This will build your confidence, and show you that implementing machine learning isn’t that hard!
- ML Theory — The two best courses to learn the theory behind machine learning are Andrew Ng’s Machine Learning Specialization on Coursera and his follow-up Deep Learning Specialization. These will teach you everything from linear regression to large language models and will do it in Python so you get real hands on experience.
That, to me, is pretty much all the courses you need to understand machine learning at an entry-level. Of course, you can Google things and use reference texts as well, but the above list will be more than sufficient.
Below is an article of my recommended books and courses.
Step 2: Implement
Like anything, hands-on experience is how you truly learn. Below are some suggestions for how to do this.
- Kaggle — Participate in a few competitions, but remember that the primary goal is not to win or earn money. Instead, focus on learning how to implement a machine learning algorithm to solve a real-world problem. This mirrors the practical use of machine learning in industry, where the focus is on solving business problems.
- ML From Scratch — Implement algorithms using basic Python and packages like NumPy. Being able to write an algorithm from first principles is one of the best ways to learn it. You can start simply with linear regression and gradint descent. Then move over to the hard stuff, eventually to a shallow neural network!
- Research Papers — Choose a research paper and try to re-create the results using their data. This is the pinnacle of learning ML, and you will gain invaluable knowledge.
- Personal Projects — You can do any other projects that interest you, but make sure they are of substantial difficulty and quality to make it worth your while.
You obviously don’t have to do all of them, but I would try to do maybe 2–4. The top three are probably the best, and they all technically fall under “personal projects” as well.
Step 3: Document
This step is often missed and is incredibly underrated. You have done all the complex learning and practising; why not document what you have done?
Talking about your work is probably the easiest thing as you have done it, but it’s likely to be the scariest as it requires putting yourself out there for scrutiny.
Writing blog posts and newsletters and making YouTube videos have probably been the highest ROI in my data science and machine learning journey.
Documenting and explaining all my work allowed me to understand it and retain the information for longer.
So, the final stage I recommend you do is talk about your work. It could be as simple as a tweet or a LinkedIn post. Starting small is a perfectly valid approach, and it will gradually build your brand and knowledge in the space, which is truly invaluable.