a scalable C++ machine learning library

Technologies
c++
Topics
machine learning, data science, deep learning, algorithms
a scalable C++ machine learning library

mlpack is a C++ machine learning library with emphasis on scalability, speed, and ease-of-use. Its aim is to make machine learning possible for novice users by means of a simple, consistent API, while simultaneously exploiting C++ language features to provide maximum performance and maximum flexibility for expert users. This is done by providing a set of command-line executables which can be used as black boxes, and a modular C++ API for expert users and researchers to easily make changes to the internals of the algorithms.

As a result of this approach, mlpack outperforms competing machine learning libraries by large margins; the handful of publications relating to mlpack demonstrate this.

mlpack is developed by contributors from around the world. It is released free of charge, under the 3-clause BSD License. (Versions older than 1.0.12 were released under the GNU Lesser General Public License: LGPL, version 3.)

mlpack bindings for R are provided by the RcppMLPACK project.

2018 Program

Successful Projects

Contributor
Manish Kumar
Mentor
Ryan Curtin
Organization
mlpack
LMNN (via Low-Rank optimization) & BoostMetric Implementation
Many cognitive techniques, such as recognition and categorization are assumed to have need of establishing similarities between perceptual or...
Contributor
Haritha Sreedharan Nair
Mentor
Marcus Edel
Organization
mlpack
Neural Collaborative Filtering
Recommendation systems are widely used in various online and offline platforms, collaborative filtering being the most commonly used method for...
Contributor
Wenhao Huang
Mentor
Mikhail Lozhnikov
Organization
mlpack
Alternatives to Neighborhood-Based Collaborative Filtering
The overall objective of this project is to improve the current CF module in mlpack to provide better rating prediciton, fast execution, and flexible...
Contributor
Yasmine Dumouchel
Mentor
Kevin Avignon, Ryan Curtin
Organization
mlpack
Automated Binding Generator
This automatically-generated Go binding proposal aims to allow Go users to have access to the fast and scalable machine learning library that is...
Contributor
Atharva Khandait
Mentor
Sumedh Ghaisas
Organization
mlpack
Variational Autoencoders
Variational Autoencoders(VAEs) are widely used in unsupervised learning of complicated distributions. The more classical generative models depend...
Contributor
Shikhar Jaiswal
Mentor
Marcus Edel
Organization
mlpack
Implementing Essential Deep Learning Modules
Over the years, Deep Learning has become a promising field of work, attracting attention from the most prominent Machine Learning researchers of the...