This repository contains implementations of basic machine learning algorithms in plain Python (Python Version 3.6+). All algorithms are implemented from scratch without using additional machine learning libraries. The intention of these notebooks is to provide a basic understanding of the algorithms and their underlying structure, not to provide the most efficient implementations.
- Linear Regression
- Logistic Regression
- Perceptron
- k-nearest-neighbor
- k-Means clustering
- Simple neural network with one hidden layer
- Multinomial Logistic Regression
- Decision tree for classification
- Decision tree for regression
After several requests I started preparing notebooks on how to preprocess datasets for machine learning. Within the next months I will add one notebook for each kind of dataset (text, images, ...). As before, the intention of these notebooks is to provide a basic understanding of the preprocessing steps, not to provide the most efficient implementations.
If you have a favorite algorithm that should be included or spot a mistake in one of the notebooks, please let me know by creating a new issue.
See the LICENSE file for license rights and limitations (MIT).