trekhleb/homemade-machine-learning

🤖 Python examples of popular machine learning algorithms with interactive Jupyter demos and math being explained

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 28 minutes ago
Added to GitGenius on September 2nd, 2026
Created on November 1st, 2018
Open Issues & Pull Requests: 30 (+0)
GitHub issues: Enabled
Number of forks: 4,190
Total Stargazers: 24,784 (+0)
Total Subscribers: 922 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 18.6 days
Mean response time: 100.8 days
90th percentile: 225.1 days
Tracked items: 4

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 3
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 270 days
Stale 30+ days: 3
Stale 90+ days: 1

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

No label distribution available yet.

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

Homemade Machine Learning is a collection of educational implementations of popular machine learning algorithms in Python with interactive Jupyter Notebook demonstrations.

The repository addresses the need to understand machine learning algorithms from first principles rather than treating them as black boxes. It implements algorithms from scratch to expose the mathematics underlying each technique, providing interactive Jupyter notebooks that let you adjust training data and algorithm parameters while observing results, charts, and predictions directly in the browser. The explanations are grounded in foundational machine learning theory.

This project is designed for learners and students seeking to deepen their understanding of how machine learning algorithms work internally. It suits anyone who wants to study the mathematical foundations before or instead of relying on production libraries. The repository explicitly states that implementations are "homemade" and not intended for production use, making the educational purpose clear. It covers supervised learning problems including regression tasks like linear regression, with examples showing how these techniques apply to real-world scenarios such as stock price forecasting and sales analysis.

The project maintains a stable collection of algorithm implementations with interactive demonstrations that remain accessible and functional. The codebase is organized around core machine learning concepts with each algorithm accompanied by explanatory material and runnable notebook examples.