Welcome to Machine Learning From Scratch — a comprehensive, beginner-friendly, and professional repository containing classic Machine Learning algorithms implemented in two ways:
✅ From Scratch (Pure Python) — for complete understanding of the math and logic
✅ With Scikit-learn — for production-ready and fast implementation
📌 This project includes only Machine Learning algorithms (no deep learning), with clean code, real datasets, and Jupyter notebooks for practice.
Link:Machine Learning From Scratch
To help students, developers, and AI enthusiasts learn Machine Learning the right way — by implementing core algorithms manually and then applying the same models using Scikit-learn for practical use.
Each folder includes:
- Python code (from scratch)
- Scikit-learn version
- Dataset(s)
- Jupyter notebook(s)
- ✅ Simple Linear Regression
- ✅ Polynomial Linear Regression
- ✅ Multiple Linear Regression
- ✅ Lasso Regression
- ✅ Ridge Regression
- ✅ Random Forest Regression
- ✅ XGBoost Regressor (Scikit-learn version only)
- ✅ Decision Tree Regressor
- ✅ LightGBMRegressor
- ✅ CastboostRegression
- ✅ ElasticNet Regression
- ✅ BayesianRidge Regression
- ✅ Gradient Boosting Regression
- ✅ Support Vector Machine (SVM) Regression
- ✅ K-Nearest Neighbors (KNN) Regression
- ✅ Huber Regression
- ✅ Orthogonal Matching Pursuit (OMP)
- ✅ Logistic Regression
- ✅ Bernoulli Naive Bayes
- ✅ Multinomial Naive Bayes
- ✅ Naive Bayes Classification
- ✅ Decision Tree Classification
- ✅ K-Nearest Neighbors (KNN)
- ✅ Support Vector Machine (SVM)
- ✅ Random Forest Classifier (Scikit-learn only)
- ✅ K-Means Clustering
- ✅ Hierarchical Clustering
- ✅ DBSCAN
- ✅ PCA (Principal Component Analysis)
- ✅ Apriori Algorithm (Association Rule Mining)
- ✅ Frequent Pattern Growth (FP-Growth)
- Python 3.x
- NumPy, Pandas, Matplotlib, Seaborn
- Scikit-learn (for sklearn versions only)
Install dependencies:
pip install numpy pandas matplotlib seaborn scikit-learn
This repository is perfect for:
- Students learning ML theory and code
- Preparing for interviews and exams
- Building data science portfolios
- Training models with real datasets
Zohaib Sattar
📧 Email: [zabizubi86@gmail.com]
🔗 LinkedIn: Zohaib Sattar
If you find this project helpful, please ⭐️ star the repo and share it with your network. It motivates further open-source contributions!