Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/elcaiseri/machine-learning-from-scratch

Machine Learning using NumPy
https://github.com/elcaiseri/machine-learning-from-scratch

knn linear-regression logistic-regression machine-learning mlp naive-bayes numpy

Last synced: about 17 hours ago
JSON representation

Machine Learning using NumPy

Awesome Lists containing this project

README

        


Python
NumPy

This repository contains a collection of classic machine learning algorithms implemented from scratch using only the Python NumPy library.

## Table of Contents
- [About](#about)
- [Algorithms](#algorithms)
- [To-Do](#to-do)
- [Usage](#usage)
- [Contributing](#contributing)
- [License](#license)

## About
Machine Learning from Scratch is a project aimed at deepening our understanding of fundamental machine learning algorithms. By implementing these algorithms using only the NumPy library, we gain insights into the underlying mathematical concepts and optimization techniques.

## Algorithms
Currently, the following algorithms have been implemented:
- k-Nearest Neighbors (knn.py)
- Linear Regression (linearRegression.py)
- Logistic Regression (logisticRegression.py)
- Naive Bayes (naiveBayes.py)
- Multi-Layer Perceptron (mlp.py)

Each algorithm is self-contained in its respective Python file.

## To-Do
- Add comments to explain the equations used in each algorithm.
- ~~Implement the Multi-Layer Perceptron (MLP) algorithm.~~

## Usage
You can use these implementations to explore and experiment with the behavior of classic machine learning algorithms. To get started, follow these steps:
1. Clone the repository: `git clone https://github.com/elcaiseri/Machine-Learning-from-Scratch.git`
2. Install the required dependencies: `pip install -r requirements.txt`
3. Open the Python files corresponding to the algorithm of interest.
4. Run the Python scripts to observe the algorithm's behavior.

## Contributing
We welcome contributions to improve existing implementations, add new algorithms, or fix issues. If you'd like to contribute, please follow the guidelines in [CONTRIBUTING.md](CONTRIBUTING.md).

## License
This project is licensed under the [MIT License](LICENSE).

---
*If you find this project helpful or interesting, consider giving it a star! :star:*

*© 2023 [elcaiseri](https://github.com/elcaiseri)*

---