github.com/mlpack/mlpack ↗
mlpack: a fast, header-only C++ machine learning library
Open this visualization on its own page →
Contributors
347
Lines of Code
152,322
From
2007-03-14
To
2022-01-26
About mlpack/mlpack
mlpack is a fast, header-only C++ machine learning library designed as a versatile toolkit for machine learning researchers and practitioners. It implements a wide array of machine learning algorithms and functions with an intuitive C++ interface, aiming to serve as a machine learning analog to LAPACK. The library's lightweight C++ implementation makes it suitable for both production environments and interactive prototyping through C++ notebooks.
Beyond its core C++ interface, mlpack provides extensive language bindings including Python, R, Julia, and Go, as well as command-line programs for accessibility across different workflows. The library depends on Armadillo for linear algebra, ensmallen for optimization, and cereal for serialization, and it requires a C++17 compiler. It bundles several header-only libraries like STB for image loading and httplib for dataset downloads to minimize external dependencies.
The project emphasizes practical usability through comprehensive documentation, quickstart guides for multiple languages, and an examples repository showcasing real-world applications. It is fiscally sponsored by NumFOCUS and operates under an open governance model, making it a community-driven resource for machine learning development.