https://github.com/xcollab/ml-algorithms-from-scratch
A comprehensive collection of machine learning algorithms implemented from scratch and using popular libraries, with detailed explanations and practical examples.
https://github.com/xcollab/ml-algorithms-from-scratch
Last synced: 11 months ago
JSON representation
A comprehensive collection of machine learning algorithms implemented from scratch and using popular libraries, with detailed explanations and practical examples.
- Host: GitHub
- URL: https://github.com/xcollab/ml-algorithms-from-scratch
- Owner: codewithdark-git
- License: mit
- Created: 2024-12-03T07:34:01.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-27T12:16:32.000Z (12 months ago)
- Last Synced: 2025-03-31T18:46:11.526Z (11 months ago)
- Language: Jupyter Notebook
- Size: 35.5 MB
- Stars: 26
- Watchers: 1
- Forks: 12
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ML-Algorithms-From-Scratch
A comprehensive collection of machine learning algorithms implemented both from scratch and using popular libraries. Each implementation includes detailed explanations, mathematical concepts, and practical examples.
## 🎯 Project Goal
This repository aims to provide clear, well-documented implementations of machine learning algorithms to help understand their inner workings. Each algorithm is implemented twice:
1. From scratch using NumPy (to understand the core concepts)
2. Using popular libraries like scikit-learn (for practical applications)
## 🗂️ Algorithms Included
- Linear Regression
- Methods:
- Gradient Descent
- Normal Equation
- Simple Linear Regression
- Multiple Linear Regression
- Polynomial Regression
- Gradient Descent
- Batch Gradient Descent
- Stochastic Gradient Descent
- Neural Networks
- Neural Network from Scratch
- Decision Tree
- PINN (Physics Inform Neural Network)
- More algorithms coming soon:
- Logistic Regression
- Support Vector Machines
- K-means Clustering
- Naive Bayes
- Dimensionality Reduction
## 📚 Features
- Detailed Jupyter notebooks with step-by-step explanations
- Mathematical concepts and formulas
- Visualizations of algorithm behavior
- Performance comparisons
- Real-world examples and use cases
- Comprehensive documentation
## 🛠️ Technologies Used
- Python 3.8+
- NumPy
- Matplotlib
- scikit-learn
- Jupyter Notebook
## 🚀 Getting Started
1. Clone the repository
2. Install dependencies:
```bash
pip install -r requirements.txt
```
3. Navigate to any algorithm folder
4. Open the Jupyter notebooks to see implementations
## 📖 Learning Path
Each algorithm folder contains:
- Theoretical explanation
- Step-by-step implementation
- Visualization of results
- Practical examples
- Performance evaluation
## 🤝 Contributing
Contributions are welcome! Feel free to:
- Add new algorithms
- Improve existing implementations
- Add more examples
- Enhance documentation
## 📝 License
This project is licensed under the MIT License - see the LICENSE file for details..