Welcome to Machine Learning In-depth Notes πβ¨ β an open-source collection of from-scratch implementations of Machine Learning algorithms.
This project covers Supervised π€ and Unsupervised π learning methods, each paired with its research paper PDF π.
Our mission is to learn by building, understanding ML from the ground up, and making it accessible to everyone!
Weβre not stopping here π¦ β coming soon: NLP π, Deep Learning π§ , and Transformers β‘.
- π Overview
- βοΈ Implemented Algorithms
- π Directory Structure
- π Research Papers
- π» How to Use
- π€ Contribute
- π Future Roadmap
- π License
This repo is a hands-on learning resource. Each algorithm is:
- β Implemented from scratch (no shortcuts!)
- π Documented with the original research paper
- π Accompanied by Python scripts & Jupyter Notebooks for demos
Our goal is to create a living library of ML knowledge β practical + theoretical.
- π Linear Regression
- π Logistic Regression
- β‘ Support Vector Machine (SVM)
- π³ Decision Tree
- π² Random Forest
- π (more coming soon!)
- π K-Means Clustering
- π Hierarchical Clustering
- π Principal Component Analysis (PCA)
- π (more coming soon!)
Machine_Learning_Indepth_Notes/
βββ supervised/
β βββ linear_regression/
β β βββ linear_regression.py
β β βββ linear_regression.ipynb
β β βββ paper.pdf
β βββ logistic_regression/
β βββ logistic_regression.py
β βββ logistic_regression.ipynb
β βββ paper.pdf
βββ unsupervised/
β βββ kmeans/
β β βββ kmeans.py
β β βββ kmeans.ipynb
β β βββ paper.pdf
β βββ pca/
β βββ pca.py
β βββ pca.ipynb
β βββ paper.pdf
βββ README.md
βββ LICENSE
Every algorithm includes its foundational research paper π.
Examples:
supervised/linear_regression/paper.pdfβ Linear Regression theoryunsupervised/kmeans/paper.pdfβ K-Means original paper
This way, you can connect code β theory easily.
Clone the repo and dive in!
git clone https://github.com/Ananddd06/Machine_Learning_indepth_notes.git
cd Machine_Learning_indepth_notesTo run any program
cd supervised/linear_regression
python linear_regression.pyπ Make sure you install dependencies first:
pip install -r requirements.txt
We π contributions! You can:
- β Add new algorithms
- π Improve Jupyter notebooks with visualizations
- π Upload missing research papers
- π Refactor / optimize existing code
- β¨ Suggest new features
- π΄ Fork this repo
- πΏ Create a branch (e.g.,
add/naive_bayes) - πΎ Commit changes
- π¬ Open a Pull Request
- Supervised Learning algorithms
- Unsupervised Learning algorithms
- NLP implementations (from scratch) π
- Deep Learning basics π§
- Transformers β‘
Hey there! π
If you find this project helpful, please star β the repository and keep learning πβ¨.
With love β€οΈ, Anand