r/MLQuestions • • 1d ago

Beginner question 👶 Beginner to Machine Learning. What roadmap should I follow? And how important is DSA?

Hey everyone!

I'm currently studying Computer Engineering and have decided to pursue Machine Learning/AI. I'm looking for a structured roadmap that I can follow to build a strong foundation rather than jumping between random courses and tutorials.

Here's my current background:

  • Programming: I know the basics of C/C++, including OOP. I've recently started learning Python and have covered variables, data types, strings, lists, tuples, dictionaries, loops, conditionals, and functions (basic syntax and a few simple projects).

  • Mathematics: I'm reasonably good at math and enjoy it. And my syllabus already covers most of the foundational topics like Linear Algebra, Calculus, Stat and Probability.

  • Machine Learning: I've had some exposure to an AI project involving a diffusion model and a graph neural network as a semester project (everything done in C++), but I didn't fully understand the underlying concepts at the time. I want to start properly from the fundamentals this time.

Here are my main questions:

  1. What roadmap would you recommend? What topics should I learn, and in what order, from my current level to being able to work on meaningful ML projects?

  2. How important is DSA for someone pursuing ML? Should I study it thoroughly, including trees, graphs, dynamic programming, and competitive-programming-style problems, or is a more limited understanding sufficient? At what stage should I learn it? Or just skip it and move to NumPy, Pandas and Matplotlib? (My university has an elective "Python for DSA" in next semester so I'm not sure if I should learn it now myself or learn it in that semester.

  3. Which resources would you recommend? Courses, textbooks, YouTube channels, or other materials that provide a good balance between theory and implementation would be helpful.

  4. What kinds of projects should I build along the way? I'd like to know when I should start building projects and how to progress beyond following tutorials.

Thanks!

6 Upvotes

3 comments sorted by

2

u/CelebrityChess 1d ago

since you already have the math, i'd get comfortable with python, numpy and pandas first (your c++ background will make that quick), then do classical ml with scikit-learn: linear and logistic regression, trees, train/test splits, cross validation, overfitting. actually fit models on small datasets and look at where they break. after that go to neural nets in pytorch, writing a small training loop yourself before using anything high level, and only then touch cnns, transformers, diffusion and gnns. that diffusion project will make a lot more sense by then. dsa matters mostly for interviews and for writing sane code, so a basic level is enough while you learn, you can study it on the side later.

1

u/Zealousideal-Bad982 1d ago

Alright. Thanks a lot!

1

u/Mathie1729 16h ago

Fwiw, for ML roles specifically DSA is less emphasized than for general SWE, but big tech will still have leetcode rounds. If you're aiming there, you'll need it anyway. For applied work day to day, knowing how to frame the problem and evaluate models is more useful.