This template library is a personal project to refresh and deepen my knowledge of Machine Learning theory and algorithms.
- Machine Learning
- Gaussian processes
- Neural networks (Fully connected Networks)
- K-means (untested)
- Optimization (untested)
- SGD and variants (untested)
- BFGS (untested)
- c++11 ( g++-4.9.2 )
- Eigen == 3.3.3
- Boost == 1.64.0 (headers-only)
- Demo
- A bash script is provided to setup eveything necessary to run the demos.
- Gaussian Process regression. Image from this demo
- Filters learned by a Bernoulli-Bernoulli RBM on the MNIST dataset (19 epochs)
- Classification on MNIST with a 3-layer NN. Image from this demo
When I started this library it was mostly to have some fun implementing deep learning methods and C++ templates. One consequence is that I haven't spent much time testing those algorithms, but they seem to be working. In the future, I will slowly redesign those parts and add the relevant tests.