Open main menu

MLPACK (C++ library)

mlpack is a machine learning software library for C++, built on top of the Armadillo library. mlpack has an 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.[1] Its intended target users are scientists and engineers.

Stable release
3.0.3 / July 27, 2018; 50 days ago (2018-07-27)
Repository Edit this at Wikidata
Written in C++
Operating system Cross-platform
Available in English
Type Software library
License Open source (BSD)

It is open-source software distributed under the BSD license, making it useful for developing both open source and proprietary software. Releases 1.0.11 and before were released under the LGPL license. The project is supported by the Georgia Institute of Technology and contributions from around the world.


Miscellaneous featuresEdit

Template classes for GRU, LSTM structures are available, thus the library also supports Recurrent Neural Networks.

There are bindings to R and Python. Its binding system is extensible to other languages.

Supported algorithmsEdit

Currently mlpack supports the following algorithms:

See alsoEdit


  1. ^ Ryan Curtin; et al. (2013). "mlpack: A Scalable C++ Machine Learning Library". Journal of Machine Learning Research (JMLR). 14 (Mar): 801–805. 

External linksEdit