sumit

Getting started with Machine Learning

Disclaimer: I am not an expert; I'm a learner, and I've just outlined what has worked for me and although I have tried making it more general, this could still, to some extent, be a subjective list.

This list assumes the following:

There’s no particular order to this, and the resources I suggest could be subjective. As a learner, you’re free to roam around, but having some basic foundation when it comes to math & programming (Python) is key.

I’m going to paste some materials below. These aren’t necessarily in order.

My suggestion: complete (1), get some basic understanding of Python (and some PyTorch too if you have time) in (2) (you do not need to master Python or PyTorch! learn as you go!), complete the 3B1B playlist from (3.1.1) — make sure you have a basic high-level understanding of the concepts — and start (3.2). The rest can be done concurrently with something else. Even if you skip some parts, make sure you come back to complete it. When I say this, I’m not talking about the course, but the topic!


To be clear

If you find something from below not good enough or interactive, it’s okay to refer to something else to cover that topic. It’s all subjective, anyway. You probably know what works best for you. What’s important is that you cover that topic in some way.

Okay, here’s the list.

1. Math

Again, could be subjective but it’s important to get the absolute foundations down. So, I suggest:

1.1 Math for ML Specialization on Coursera:

Covers basic linear algebra, calculus, and statistics required for ML. You don’t need to pay; just audit the courses.

1.2 Essence of Linear Algebra YouTube playlist by 3B1B

Highly recommended. The material is in YouTube video format as well as reading format. You can watch/do this concurrently with the linear algebra course above.

1.3 Differential Equations Playlist by 3B1B

I highly recommend this playlist as well. YouTube playlist as well as text format available. You can watch/do this concurrently with the calculus course above.

1.4 Essence of Calculus Playlist by 3B1B

another highly recommended playlist series. YouTube playlist as well as text format available. You can watch/do this concurrently with the calculus course above.

NOTE:
You can search videos on the Statquest YouTube channel for any math concepts from above that you find confusing. For instance, I found the PCA explanation on the Coursera course quite confusing, and Statquest’s video cleared it up for me. You can also do that with the Trefor Bazett channel; it’s got tons of valuable material.

DISCLAIMER: Regarding the 3B1B Courses

These courses are for getting a high-level preview of the concepts and are not necessarily to be relied upon for purely learning. For that, you need paper, a pen, and some proper math exercises to solve. But that's exactly why doing the 3B1B courses concurrently with more rigorous math materials is very effective.

2. Programming (Python, PyTorch, etc.)

Pretty sure this is something you might already know where to look at to learn. I’ll still paste some materials below and you can see if they might be helpful to you:

2.1 Practical Python Course

~ 40 hours of intense work to finish, focusing mainly on script writing, basic data manipulation, and program organization

2.2 Intro to DL with PyTorch (Udacity)

by the creators of PyTorch

2.3 PyTorch: Zero to Mastery on YouTube

25 hours of content on YouTube, materials are documented really well. HIGHLY RECOMMEND THIS.


3. The “ML” Stuff

People have their own views on how to start this as well, so I’ll paste materials that I think are helpful to get started as well.

3.1 The “Theory”

3.1.1 Neural Network Playlist by 3B1B

You know the drill by now. The YouTube videos are very interactive & intuitive. Highly recommend watching this before doing any NN projects or hands-on exercises in my opinion. Text format available too!

3.1.2 Machine Learning Specialization by Andrew Ng

You can audit the course and get the basics of ML down.

3.1.3 ML Playlist by Statquest

Always learn something new from this guy, he’s really good.

3.2 The Hands-On Approach

Neural Network - Zero to Hero Series by Andrej Karpathy

This series can get quite heavy (there are videos for each project, each one is long), and that’s exactly why I strongly recommend you watch all of his videos and consume everything. That’s all we need to do to reach a certain level of mastery.


IMPORTANT

Some people actually start their ML journey with this series by Karpathy, and that’s fine too. However, there will be lots of things that one doesn’t necessarily understand and has to search up the internet separately (that’s what I did), thus leading to all the materials I listed above. Therefore, in a way, properly understanding this series requires a certain level of understanding of everything I’ve listed out so far, but that’s the whole point! If you finish this series and understand most of it, you are no longer an amateur.

Do some small-scale side projects too! Kaggle is nice. Also, try to consume as much as you can from people like Sebastian Raschka in addition to Andrej Karpathy.

Good luck!