Machine Learning Notebooks
This repository contains some jupyter notebooks which I use to learn machine learning.
Classifying Iris
The iris dataset is classified with a simple feed forward neural network and a SVM. Just a getting started example. I used scikit-learn for the SVM and Keras (with tensorflow as engine) for building the classifiers.
Logistic Regression with numpy
This is a bit more interesting, since I implemented the logistic regression myself, so I did not use any library like scikit-learn or keras for the model generation. It uses backpropagation and the example is based on Andres Ng's course.
Linear Regression
This is the linear regression model once implemented by scikit-learn and once by myself. Used to do a regression on the boston housing dataset. Furthermore, I used regularization techniques to prevent overfitting.
Linear Regression GD
This is the linear regression with gradient descent. Instead of computing the best weights directly, I use gradient descent as an optimization algorithm to get good weights to fit the line.
Linear Discriminant Functions
This notebook implements two algorithms to generate linear discriminant functions. One iterative algorithm with gradient descend (Perceptron Algorithm) and one using the pseudoinverse. Furthermore, I added visualizations and examples, so I hope the concept gets clear.
Unfinished
KMeans Clustering
I started to implement KMeans Clustering, however, this is not finished - its missing the main loop. Helper functions are already defined.