Skip to content

🌟 Machine Learning In-depth Notes πŸ“˜ is an open-source collection of from-scratch implementations of Machine Learning algorithms, complete with research papers, Python scripts, and Jupyter notebooks. It covers both Supervised πŸ€– and Unsupervised πŸ” learning methods, aiming to bridge the gap between theory and practical coding.

License

Notifications You must be signed in to change notification settings

Ananddd06/Machine_Learning_indepth_notes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🌟 Machine Learning In-depth Notes

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 ⚑.


πŸ“‘ Table of Contents


πŸ”Ž Overview

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.


βš™οΈ Implemented Algorithms

🎯 Supervised Learning

  • πŸ“ˆ Linear Regression
  • πŸ“‰ Logistic Regression
  • ⚑ Support Vector Machine (SVM)
  • 🌳 Decision Tree
  • 🌲 Random Forest
  • πŸ”œ (more coming soon!)

πŸ” Unsupervised Learning

  • πŸ”‘ K-Means Clustering
  • πŸ— Hierarchical Clustering
  • πŸ“Š Principal Component Analysis (PCA)
  • πŸ”œ (more coming soon!)

πŸ“‚ Directory Structure

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

πŸ“– Research Papers

Every algorithm includes its foundational research paper πŸ“„.
Examples:

  • supervised/linear_regression/paper.pdf β†’ Linear Regression theory
  • unsupervised/kmeans/paper.pdf β†’ K-Means original paper

This way, you can connect code ↔ theory easily.


πŸ’» How to Use

Clone the repo and dive in!

git clone https://github.com/Ananddd06/Machine_Learning_indepth_notes.git
cd Machine_Learning_indepth_notes

To run any program

cd supervised/linear_regression
python linear_regression.py

πŸ‘‰ Make sure you install dependencies first:

pip install -r requirements.txt

🀝 Contribute

We πŸ’™ contributions! You can:

  • βž• Add new algorithms
  • πŸ““ Improve Jupyter notebooks with visualizations
  • πŸ“„ Upload missing research papers
  • πŸ›  Refactor / optimize existing code
  • ✨ Suggest new features

Steps to contribute:

  1. 🍴 Fork this repo
  2. 🌿 Create a branch (e.g., add/naive_bayes)
  3. πŸ’Ύ Commit changes
  4. πŸ“¬ Open a Pull Request

πŸš€ Future Roadmap

  • Supervised Learning algorithms
  • Unsupervised Learning algorithms
  • NLP implementations (from scratch) πŸ“
  • Deep Learning basics 🧠
  • Transformers ⚑

⭐ Star My Repo

Hey there! πŸ™Œ

If you find this project helpful, please star ⭐ the repository and keep learning πŸ“šβœ¨.

With love ❀️, Anand

About

🌟 Machine Learning In-depth Notes πŸ“˜ is an open-source collection of from-scratch implementations of Machine Learning algorithms, complete with research papers, Python scripts, and Jupyter notebooks. It covers both Supervised πŸ€– and Unsupervised πŸ” learning methods, aiming to bridge the gap between theory and practical coding.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published