How to learn AI for beginners
How did I learn AI and how should you learn AI?
This post contains many subjective opinions, so please take it with a grain of salt.
How did I start with AI?
When I first entered university, I had no idea what I should study and major in. So I tried many things, from web development (frontend and backend) with my friend (Kowl), to CTF (Cybersecurity). I also have a little experience with Unity (Game Development). But none of them really caught my interest.
Yes! AI was the last thing in my must-try list. I first was not interested in AI at all. I thought it was too hard and I didn’t want to work with Maths. But anyway, I tried it.
Here is how I started with AI:
- Machine Learning cơ bản
- Basic maths on youtube: mainly BKHN(HUST) online/leaked lectures
Yes, that’s it. First, I just simply read the ML cơ bản blog, and got confused by concepts like “matrix”, “vector”, “derivative”, “gradient”, … you name it. So that’s why I went to youtube to learn basic maths. And then I came back to the blog, got confused again, and went back to youtube, … That’s how I first started with AI. :v
Okay, that was about Machine Learning, so what about Deep Learning? I learned it from this blog: Khoa học dữ liệu
Ye, I got confused again by many new concepts like “CNN”, “RNN”, “LSTM”, “Transformer”, … And I didn’t familiar with Numpy or Pandas at all. So I just read the blog along with many youtube videos that I found on the internet.
Anyway, that was a tough time, but I got through it. Now, I mainly read papers about related topics and searched for youtube video/blogs to understand more if needed.
How should you learn AI?
Okay, let’s first answer this question: “Do you learn AI because of FOMO?”.
- If your answer is “Yes”, okay that’s fine! Who will reject 10.000 USD/month job, right? However, you MUST atleast know what are some basic algorithms in AI and how they work. Fancy stuffs in AI need a lot of knowledge to understand clearly.
- If you just want to use AI (ChatGPT, …), this is not the right place for you. This is a tutorial for beginners who want to learn AI from basic concepts.
Okay, lets go into the main part. So if I can go back to 2023 and give myself a second chance to learn AI, here is what I would probably do:
- Get a good foundation in maths: Probability, Linear Algebra, Calculus are the must-have.
- Learn from popular and recommended resources: I think you can find youself good resources on the internet, I won’t suggest a specific courses/blogs here but some popular ones like All in One (AIO - AI VIET NAM), and deeplearning.ai are good choices.
- Learn carefully Machine Learning concepts, don’t rush to Deep Learning or some fancy stuffs like LLMs, … you won’t need that right now.
- Learn to read papers: This sounds difficult at first, but it’s a must-have skill if you want to keep up with the latest researches. And trust me, if you have a good foundation in basic concepts, you can understand most of the papers.
Have some hands-on projects: Learning engineering skills is also important, you can learn it at the same time with the theory part.
- Here is the final order:
- Maths:
- Linear Algebra
- Probability
- Calculus
- Machine Learning
- Linear Regression
- Gradient Descent
- Logistic Regression
- KNN
- SVM
- Decision Trees
- …
- Deep Learning
- Feedforward Neural Network
- CNN
- RNN
- …
- Read papers
- Maths:
What is the most important thing that I learned?
- Basic concepts are the key!: Although I re-read the same blog many times, I still learned something new every time. So don’t rush, take your time to understand the basic concepts.
- Sharing with friends: Trust me, you won’t remember a sh*t after just reading, so try to understand it in a way that you can explain it to others. And start to share, distill your knowledge into simple conversations, and you will understand it better.
- intuition understanding -> math/code understanding -> in-depth understanding: This is my personal approach, dont rush yourself to understand math/code first, I will always try to understand the intuition behind the concept, then code it (recommened to follow the tutorial) to check if I understand it correctly. And finally (but not required), I will try to understand the in-depth insight of the concept, this is hard and takes time, but one you get it, you can easily understand the related papers.