ensmallen provides a simple set of abstractions for writing an objective function to optimize. It also provides a large set of standard and cutting-edge optimizers that can be used for virtually any numerical optimization task. These include full-batch gradient descent techniques, small-batch techniques, gradient-free optimizers, and constrained optimization.
requirements
- recent C++ compiler with C++11 support
- Armadillo version 8.400 or later
- OpenBLAS or Intel MKL or LAPACK (see Armadillo site for details)
license
ensmallen is open source software, licensed under the permissive 3-clause BSD license.
download
- ensmallen-2.16.0.tar.gz
- vcpkg:
vcpkg install ensmallen:x64-windows
citation
- S. Bhardwaj, R. Curtin, M. Edel, Y. Mentekidis, C. Sanderson. ensmallen: a flexible C++ library for efficient function optimization. Workshop on Systems for ML and Open Source Software at NIPS 2018.
see also