The SHOGUN machine learning toolbox
Unified and efficient Machine Learning since 1999.
Interfaces
Shogun is implemented in C++ and offers automatically generated, unified interfaces to Python, Octave, Java / Scala, Ruby, C#, R, Lua. We are currently working on adding more languages including JavaScript, D, and Matlab.
Interface | Status |
---|---|
Python | mature (no known problems) |
Octave | mature (no known problems) |
Java/Scala | stable (no known problems) |
Ruby | stable (no known problems) |
C# | stable (no known problems) |
R | beta (most examples work, static calls unavailable) |
Perl | pre-alpha (work in progress quality) |
JS | pre-alpha (work in progress quality) |
See our website for examples in all languages.
Platforms
Shogun is supported under GNU/Linux, MacOSX, FreeBSD, and Windows.
Directory Contents
The following directories are found in the source distribution. Note that some folders are submodules that can be checked out with git submodule update --init
.
- src – source code, separated into C++ source and interfaces
- doc – readmes (doc/readme, submodule), Jupyter notebooks, cookbook (API examples), licenses
- examples – example files for all interfaces
- data – data sets (submodule, required for examples)
- tests – unit tests and continuous integration of interface examples
- applications – applications of SHOGUN (outdated)
- benchmarks – speed benchmarks
- cmake – cmake build scripts