mlpack: a scalable C++ machine learning library

a scalable C++ machine learning library

Technologies
c++
Topics
machine learning, data mining, fast 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.

2016 Program

Successful Projects

Contributor
nilay_jain
Mentor
Marcus Edel, Tham
Organization
mlpack: a scalable C++ machine learning library
We need to go deeper - GoogLeNet
To implement the components of the GoogLeNet architecture (the inception layer, global average pooling, and other pieces), and then build GoogLeNet...
Contributor
mentekid
Mentor
Ryan Curtin
Organization
mlpack: a scalable C++ machine learning library
Approximate Nearest Neighbor Search: Implementation of Multiprobe LSH and LSH Tuning
Approximate Nearest Neighbor Search solutions become appealing in problems where dimensionality increases. Locality Sensitive Hashing is a popular...
Contributor
Bang
Mentor
Marcus Edel
Organization
mlpack: a scalable C++ machine learning library
Neuroevolution Algorithms Implementation
Neuroevolution algorithms search optimal solutions by evolution rather than learning, which enables them to deal with large complex problems. In this...
Contributor
Marcos Pividori
Mentor
sumedhghaisas
Organization
mlpack: a scalable C++ machine learning library
Approximate Nearest Neighbor Search
Mlpack provides an extensible, flexible exact nearest neighbor search implementation, with the ability to do dual-tree k-NN search. However, there is...
Contributor
KeonKim
Mentor
Tham
Organization
mlpack: a scalable C++ machine learning library
Dataset and Experimentation Tools
This GSoC project aims to develop a tool for managing dataset and experimenting the data. This project is important because most of the time used...
Contributor
lozhnikov
Mentor
Ryan Curtin
Organization
mlpack: a scalable C++ machine learning library
R+ trees, Hilbert R trees, vantage point trees, random projection trees, UB trees implementation
Many methods of the mlpack machine learning library (such as nearest neighbor search, range search and others) are based on dual-tree algorithms...