mlpack

Documentation

mlpack is a general-purpose machine learning library, written in C++, that aims to provide fast, lightweight implementations of both common and cutting-edge machine learning algorithms. It depends only on the Armadillo linear algebra library and the cereal serialization library.

mlpack is intended for academic and commercial use, for instance by data scientists who need efficiency and ease of deployment, or, e.g., by researchers who need flexibility and extensibility.

High-quality documentation is a development goal of mlpack. mlpack’s documentation is split into two parts: documentation for the bindings/CLI, and documentation for the C++ library. Also useful is the examples repository, which demonstrates usage of mlpack’s functionality in simple example programs.

Generally, working with the bindings is a good choice for simple machine learning and data science tasks, and writing C++ is a good idea when complex or custom functionality is desired.

All interfaces are heavily documented, and if you find a documentation issue, please report it.

Build

Building mlpack From Source (Linux)
Building mlpack From Source (Windows)

CLI

mlpack command-line quickstart guide
command-line documentation

Python Bindings

mlpack in Python quickstart guide
Binding documentation

Julia Bindings

mlpack in Julia quickstart guide
Binding documentation

R Bindings

mlpack in R quickstart guide
Binding documentation

Go Bindings

mlpack in Go quickstart guide
Binding documentation

C++ User Documentation

For details on the C++ API, it's recommended to look at the documentation in the source code; every class and method is fully documented in comments. Below are some tutorials and additional resources that can be used.

Sample C++ ML App for Windows
File formats and loading data in mlpack
Matrices in mlpack
Cross-Validation Tutorial
Hyperparameter Tuner Tutorial

Tutorials

Alternating Matrix Factorization (AMF)
Artificial Neural Networks (ANN)
Approximate k-furthest Neighbor Search (approx_kfn)
Collaborative Filtering (CF)
DatasetMapper
Density Estimation Trees (DET)
Euclidean Minimum Spanning Trees (EMST)
Fast Max-Kernel Search (FastMKS)
Image Utilities
k-Means Clustering
Linear Regression
Neighbor Search (k-Nearest-Neighbors)
Range Search
Reinforcement Learning

Developer Documentation

mlpack Timers
mlpack versions in code
The ElemType Policy in mlpack
The MetricType Policy in mlpack
The KernelType Policy in mlpack
The TreeType Policy in mlpack
mlpack Automatic Bindings To Other Languages
Writing an mlpack Binding






© 2007 - 2023 mlpack developers (BSD License).

Home  • Quick Start  • Documentation  • Community  • FAQ  • GitHub