ML-From-Scratch: Machine Learning Models and Algorithms in NumPy
This repository profile is provided by osrepos.com, an open source repository discovery platform.
Summary
ML-From-Scratch is a comprehensive GitHub repository offering bare-bones NumPy implementations of fundamental machine learning models and algorithms. It emphasizes accessibility, making complex concepts easier to understand for learners and practitioners. This project covers a wide range of topics, from linear regression to deep learning and reinforcement learning, all implemented from scratch.
Repository Information
Topics
Click on any tag to explore related repositories
Use at your own risk
OSRepos shares public repositories for knowledge and discovery only. Any installation, execution, configuration, or use of code from these repositories is the user's own responsibility. Always review the repository, source code, dependencies, licenses, and security implications before running or installing anything. OSRepos is not responsible for issues, damages, or losses resulting from third-party repositories.
Introduction
The ML-From-Scratch repository by eriklindernoren is an exceptional resource for anyone looking to understand the core mechanics of machine learning. It provides Python implementations of fundamental machine learning models and algorithms, built entirely from scratch using NumPy. The primary goal of this project is not optimization, but rather to present the inner workings of these algorithms in a transparent and accessible way, making it an invaluable educational tool. From supervised and unsupervised learning to deep learning and reinforcement learning, this repository offers a hands-on approach to mastering machine learning concepts.
Installation
To get started with ML-From-Scratch, follow these simple steps:
$ git clone https://github.com/eriklindernoren/ML-From-Scratch
$ cd ML-From-Scratch
$ python setup.py install
Examples
The repository includes numerous examples demonstrating the practical application of the implemented algorithms. Here are a few highlights:
Polynomial Regression
Explore how a regularized polynomial regression model fits temperature data.
$ python mlfromscratch/examples/polynomial_regression.py
Classification With CNN
See a Convolutional Neural Network (CNN) in action, classifying the digit dataset.
$ python mlfromscratch/examples/convolutional_neural_network.py
+---------+
| ConvNet |
+---------+
Input Shape: (1, 8, 8)
+----------------------+------------+--------------+
| Layer Type | Parameters | Output Shape |
+----------------------+------------+--------------+
| Conv2D | 160 | (16, 8, 8) |
| Activation (ReLU) | 0 | (16, 8, 8) |
| Dropout | 0 | (16, 8, 8) |
| BatchNormalization | 2048 | (16, 8, 8) |
| Conv2D | 4640 | (32, 8, 8) |
| Activation (ReLU) | 0 | (32, 8, 8) |
| Dropout | 0 | (32, 8, 8) |
| BatchNormalization | 4096 | (32, 8, 8) |
| Flatten | 0 | (2048,) |
| Dense | 524544 | (256,) |
| Activation (ReLU) | 0 | (256,) |
| Dropout | 0 | (256,) |
| BatchNormalization | 512 | (256,) |
| Dense | 2570 | (10,) |
| Activation (Softmax) | 0 | (10,) |
+----------------------+------------+--------------+
Total Parameters: 538570
Training: 100% [------------------------------------------------------------------------] Time: 0:01:55
Accuracy: 0.987465181058
Generating Handwritten Digits with GANs
Witness a Generative Adversarial Network (GAN) learning to generate handwritten digits.
$ python mlfromscratch/unsupervised_learning/generative_adversarial_network.py
Deep Reinforcement Learning
Observe a Deep Q-Network solving the CartPole-v1 environment from OpenAI gym.
$ python mlfromscratch/examples/deep_q_network.py
Why Use ML-From-Scratch?
This repository is ideal for:
- Deepening Understanding: By implementing algorithms from scratch, it offers unparalleled insight into their mathematical foundations and operational mechanisms.
- Educational Purposes: It serves as an excellent learning resource for students and self-learners in machine learning, data science, and artificial intelligence.
- NumPy Proficiency: It's a great way to improve your NumPy skills by seeing how complex algorithms are built using its core functionalities.
- Comprehensive Coverage: It spans a broad spectrum of machine learning paradigms, including supervised, unsupervised, reinforcement, and deep learning.
Links
- GitHub Repository: https://github.com/eriklindernoren/ML-From-Scratch
- Author's LinkedIn: https://www.linkedin.com/in/eriklindernoren/
- Author's Email: mailto:eriklindernoren@gmail.com
Related repositories
Similar repositories that may be relevant next.

SkillOpt: Optimizing Self-Evolving Agent Skills for LLMs
August 11, 2026
SkillOpt is an innovative text-space optimizer from Microsoft that enables the training of reusable natural-language skills for frozen LLM agents. It approaches skill development with the rigor of deep-learning optimization, using trajectory-driven edits and validation-gated updates. This results in deployable `best_skill.md` artifacts that significantly boost agent performance across various benchmarks and models without modifying model weights.

Awesome AI Agents 2026: The Ultimate List of AI Tools and Frameworks
August 8, 2026
This repository, `awesome-ai-agents-2026`, is a comprehensive and frequently updated collection of over 340 AI agents, frameworks, and tools across more than 20 categories. It serves as an essential resource for developers and researchers looking to explore the rapidly evolving landscape of artificial intelligence in 2026, covering everything from coding agents to creative AI and governance.
awesome-ai: A Curated List of 400+ AI APIs, Tools, and Frameworks
August 7, 2026
The awesome-ai repository by edwardtay offers a comprehensive, curated list of over 400 AI APIs, tools, frameworks, and platforms. Spanning more than 40 categories, it serves as an invaluable resource for developers and researchers navigating the vast landscape of artificial intelligence. This list helps users discover solutions for LLMs, agents, image/video generation, MLOps, and more.

AI-Agents-Projects-Tutorials: Comprehensive Guide to AI Agent Development
July 28, 2026
The AI-Agents-Projects-Tutorials repository offers an extensive collection of code implementations and tutorials for building advanced AI agents. It covers fundamental concepts such as multi-agent systems, memory management, planning, and reasoning loops. This resource is ideal for developers and researchers seeking practical insights into agentic AI development.
Source repository
Open the original repository on GitHub.
11 counted GitHub visits