ML++ and cppyml: efficient implementations of selected ML algorithms, with Python bindings.
ML++ is a set of efficient C++ implementations of some ML algorithms.
cppyml is a Python extension module built on top of M++. Precompiled cppyml binaries for Windows are available on PyPi.
© 2020-21 Roman Werpachowski.
More is coming! See Doxygen documentation for the C++ library documentation and Sphinx documentation for the Python extensions.
Tested with Visual Studio C++ 2019 and Python 3.8.x.
Tested with on Ubuntu 20.04.1 LTS (Focal Fossa).
A list of required packages for is in the ubuntu_required_packages.txt
file.
For the build:
For demos and tests:
Use the Visual Studio build process, opening the solution ML.sln
. Before opening this file, copy the
provided file LocalDependencies.props.template
to LocalDependencies.props
(otherwise the solution won’t load).
After loading the solution, adjust the additional include / library paths in this property sheet to point
to the directories where you installed the dependencies (see above).
Pre-built Python extension cppyml
can be installed via pip install cppyml
(requires Python 3.7.x).
If you want to build it from source, see cppyml documentation.
Call scons
in the main repository directory to build in Debug mode, or scons mode=release
for a Release (optimised) build.
C++ code has Doxygen-compatible comments. To generate HTML documentation from
them, run in the main repository directory doxygen Doxyfile
(requires doxygen
and graphviz
to be installed). The documentation will be written to the docs/html
subdirectory.
Documentation for the Python extension project cppyml
is here.