Implementation of k-nearest neighbors regression, decision tree, and perceptron models from scratch. \ Implementation of clusturing algorithms such as k-means, k-means++ with gaussian kernel. \ Implementation of expectation maximization for gaussian mixture model