# Best Machine Learning Curriculum for Beginners – Level 101 Gaurav Bhardwaj
Published on
#Artificial Intelligence  I often see many questions by people (mostly self-learners) newly coming into this grossing field that “how can we start to learn Machine Learning?”, “what is the best machine learning curriculum for Beginners? “or “What is the curriculum that every self-learner must follow?”.

I already created a separate post for how can I learn machine learning? and this is the post for the second question i.e. what is the curriculum of machine learning for self-learners?

There are plenty of curriculums already made over the internet but I connected with various data scientists in my connections having rich experience in this field.

So after summing up all of the discussion. I am creating this curriculum for you. You can follow that in order to master machine learning.

Note: This covers only Machine Learning, not deep learning

I have divided the curriculum into three levels.

### Machine Learning Curriculum for Beginners

• Level 1 (Complete Novice).
• Level 2 (Knows Mathematics but not Data Science basics).
• Level 3 (Knows Mathematics, Data Science basics but not ML).

According to your level of expertise, you can iterate between different levels accordingly.

I am specifying a high-level curriculum for Level 1 and Level 2. As it is the prerequisites required for learning machine learning.

## Level 1:

The first level involves learning mathematics.

Learning Mathematics:

1. Linear Algebra
2. Calculus
3. Probability and Statistics

If you are wondering where to learn. Please follow:

How to Learn Machine Learning Quickly – A Great Roadmap

## Level 2:

The second level involves learning Data Science.

2. Pandas [Link] [Chapter 1] [Chapter 2] [Chapter 3]

## Level 3

Machine Learning Curriculum

1. Importing the Dataset + Practice
2. Exploratory Data Analysis + Practice
3. Data Preprocessing + Practice
4. Handling Missing Data + Practice
5. Feature Scaling and Selection + Practice
6. Scikit Learn Library
8. Introduction to Supervised Learning + Practice
9. Linear Regression with one variable + Practice
10. Linear Regression with multiple variables and Regularization + Practice
11. SVMs + Practice
12. Logistic Regression + Practice
13. Naive Bayes + Practice
14. Decision Tree + Practice
15. Introduction to Ensembles + Practice
16. Random Forests + Practice
17. K-Nearest Neighbour + Practice
18. PCA + Practice
19. Introduction Unsupervised Learning
20. Clustering – DBScan, KMeans + Practice
21. Cross-Validation and Grid Search CV + Practice
22. Stochastic Gradient Descent for Classification and Regression + Practice
23. Time Series Analysis + Practice
24. Bagging and Boosting Techniques + Practice
25. XGBoost, CATBoost, LighGBM + Practice
26. Kaggle Ex-Competition Practice

References: [SciKit Learn Documentation]

I will post the series of Intuitions and Jupyter notebooks in upcoming posts using the prefix “ML-Series” or you can also find them by looking into the category “Machine Learning Series”. Stay Tuned for more updates.

If you have any queries or suggestions, please feel free to drop a comment below. How to handle missing values in Categorical data Thank you Gaurav, these particular points are really helpful, but are there any particular conditions where we can use mean, median, mode? and coming to your channel that’s great to have ML series from start to end and people like me will be desperately waiting for such stuff, it is like pouring milk on our head all the best to you and i also subscribed your channel
Can you tell me what is the effect of covid19 on ML jobs can we get jobs or will it take time Very Informative Article Thanks Bhavesh ! Glad you liked it 🙂 Hi, Gaurav you provided Machine Learning Curriculum along with that can you provide link to learn all the topics Hi Gaurav you posted Machine Learning Curriculum from where i can learn all these topics or concepts can you provide the link for all the topics  in KNN if k=4 and we get 2 neighbours belonging to True class and 2 neighbours belonging to False class, then what should we do How to handle Positively skewed data or Negatively skewed data and if there are more null values and if we delete it other data is also getting, please suggest solution Hi Chandra,
For handling skewness,You can apply transformation like log transformation or even square root transformation.If there are null values, you can always fill it with mean,median or more. Also you can predict the null values using simple linear regression. Hope this help you.
I am also going to start a new machine learning series from scratch till deployment, after my django series on this link Link to My Channel