# Machine Learning From Scratch in Python

I created a series on YouTube where I explain polular Machine Learning algorithms and implement them from scratch using only built-in Python modules and numpy.

I created a series on YouTube where I explain polular Machine Learning algorithms and implement them from scratch using only built-in Python modules and numpy. Each Tutorial starts with a little theory session, where I explain the basic concepts and the necessary math/formulas behind the algorithm. Then I jump right into the code and try to implement the algorithm in a clean and easy to follow way. This is a great exercise to get in-depth understanding of the algorithms!

The link to the playlist is here: playlist
The GitHub repo is here: repo

The algorithms I cover:

• KNN (K Nearest Neighbors)
• Linear Regression
• Logistic Regression
• (Refactoring of Linear and Logistic Regression)
• Naive Bayes
• Perceptron
• SVM (Support Vector Machine)
• Decision Tree Part 1
• Decision Tree Part 2
• Random Forest
• PCA (Principal Component Analysis)
• K-Means Clustering

## Prerequisites¶

I assume that you already have a good understanding of Python and the numpy stack, and also the necessary math skills to follow the equations in the theory sections. If you need to refresh any of these skills, I can recommend the following free resources:

## How to Follow the Videos¶

To get the most from this series, I recommend that you first follow along, take notes during the theory part, and then code along with me. Then, after the video, try to implement the algorithm again on your own!

FREE VS Code / PyCharm Extensions I Use

✅ Write cleaner code with Sourcery, instant refactoring suggestions: Link*

Python Problem-Solving Bootcamp

🚀 Solve 42 programming puzzles over the course of 21 days: Link*

* These are affiliate link. By clicking on it you will not have any additional costs. Instead, you will support my project. Thank you! 🙏