File structure:
- algorithms -> Implementation of the ML algorithms listed below(*)
- plots -> Classes for each algorithm that allow manually adding points to a 2-D plane and visualising the classification boundary
- assignments -> This is a collection of various applications of the algorithms(**)
- data -> Various data for testing algorithms implementations
This project includes realisations of common algorithms such as Linear and Logistic Regression, Naive Bayes, etc.
(*) K-nearest neighbors, Perceptron classification, Multinomial/Gaussian Naive Bayes, Linear Regression, Logistic Regression
(**) Sources of the data and task requirements: https://github.com/aevanchen/machine_learning_miniprojects/tree/master
Made from scratch only using numpy, matplotlib and scipy
scikit-learn is only used for comparing the implementations of the algorithms