Welcome to the Machine Learning Tutorial repository! This repository is designed to accompany the machine learning tutorial syllabus for 2024 at University Muhammed VI Polytechnic (UM6P). Below, you'll find a breakdown of the topics covered in this repository along with instructions on how to use it effectively.
- Introduction to Machine Learning
- Python Basics
- NumPy and Pandas Basics
- Supervised Learning
- Training Linear Regression
- Training Classification Model
- Unsupervised Learning
- Project Project Project
In this section, you will learn about the fundamental concepts of machine learning including the perceptron, perceptron algorithm, different types of learning (supervised, unsupervised, reinforcement), and various applications of machine learning.
Here, you will get familiar with Python basics such as variables, data structures (lists, dictionaries) and control structures (if, else, loops). This knowledge is essential for implementing machine learning algorithms in Python.
NumPy and Pandas are two essential libraries for data manipulation and analysis in Python. In this section, you'll learn about arrays, matrices, and basic operations in NumPy, as well as data manipulation using Pandas DataFrames.
This section focuses on supervised learning techniques including regression (simple linear regression, multiple linear regression, polynomial regression) and classification (binary classification, multi-class classification).
Here, you'll delve into the details of training linear regression models. Topics covered include data preprocessing (data visualization, data cleaning, normalization, handling missing data), model building (forward propagation and backpropagation), handling bias and variance, and model evaluation.
Similar to linear regression, this section covers the training of classification models. You'll learn about data preprocessing, model building, handling bias and variance, and various evaluation metrics such as accuracy, precision, recall, and F1-score.
In this section, you'll explore unsupervised learning techniques including clustering (K-means, hierarchical) and dimensionality reduction (PCA).
Finally, this section is dedicated to a project where you'll apply the knowledge gained throughout the tutorial to solve a real-world problem.
Updates: This repository will be updated regularly after each lecture is completed. The tutorial started in March 2024 and will last for six months within 2024.
Within this repository, you will find folders corresponding to each topic covered every week. Each folder contains questions related to the topic. If you encounter difficulties with any of the questions, you can access the solution code provided to guide you through.
Feel free to navigate through the folders and explore the materials. If you have any questions or suggestions, please feel free to reach out.
Happy learning, master students of UM6P!
Happy learning, master students of UM6P!
YouTube Channel: Aljebraschool - Contains video tutorials for each weekly lecture.
Aljebra blog: Aljebraschool blog - Contains tutorials blog for each weekly lecture.