An open API service indexing awesome lists of open source software.

https://github.com/mohammadreza-mohammadi94/ml_algorithms_from_scratch

Machine Learning algorithms and metrics implemented from scratch to deepen understanding, including Linear Regression, Decision Trees, Precision, Recall, and more—coded without ML libraries
https://github.com/mohammadreza-mohammadi94/ml_algorithms_from_scratch

machine-learning machine-learning-algorithms

Last synced: 2 months ago
JSON representation

Machine Learning algorithms and metrics implemented from scratch to deepen understanding, including Linear Regression, Decision Trees, Precision, Recall, and more—coded without ML libraries

Awesome Lists containing this project

README

        

# ML Algorithms From Scratch

This repository contains implementations of various **Machine Learning algorithms** developed from scratch using Python. The primary goal is to understand the inner workings of these algorithms by coding them manually, without relying on pre-built libraries like Scikit-learn for the core computations.

---

## Table of Contents
- [Algorithms Implemented](#algorithms-implemented)
- [Features](#features)
- [Usage](#usage)
- [Contributing](#contributing)
- [Author](#author)

---

## Algorithms Implemented

The repository includes the following algorithms:
- Linear Regression
- Logistic Regression
- Decision Tree
- K-Nearest Neighbors (KNN)
- Support Vector Machine (SVM)
- K-Means Clustering
- Gradient Descent
- Naive Bayes
- Principal Component Analysis (PCA)

---

## Features

- **Pure Python Implementations:** No reliance on ML libraries for algorithm logic.
- **Educational Focus:** Emphasizes understanding the fundamentals.
- **Extensible Code:** Easy to modify and adapt for experimentation.

---

## Usage

1. Clone the repository:
```bash
git clone https://github.com/mohammadreza-mohammadi94/ML_Algorithms_From_Scratch.git
cd ML_Algorithms_From_Scratch
```

2. Explore the code for individual algorithms located in the respective subdirectories.

3. Run the scripts directly to test their functionality
---

## Contributing

Contributions are welcome! If you'd like to add new algorithms or improve existing ones:
1. Fork the repository.
2. Create a new branch for your feature.
3. Submit a pull request.

---

This repository serves as a learning resource for anyone interested in understanding Machine Learning algorithms at a deeper level.