Shark – Machine Learning 3.1


Shark 3.1 Released

March 1, 2016: We are happy to announce the official release of Shark 3.1.0.

Shark 3.0 Released

October 27, 2015: We are happy to announce the official release of Shark 3.0.0.

Shark moves to GitHub

October 9, 2015: Shark moved to GitHub. Please update your repositories, see the downloads page for more details.

Shark goes LGPL

As of January 2014, Shark is distributed under the permissive GNU Lesser General Public License.

Gold Prize for Shark alpha-release

October 22, 2011: We are happy to announce that our alpha-release of Shark 3.0 has won the Gold Prize at the Open Source Software World Challenge 2011.

About Shark

Shark is a fast, modular, feature-rich open-source C++ machine learning library.

It provides methods for linear and nonlinear optimization, kernel-based learning algorithms, neural networks, and various other machine learning techniques (see the feature list below). It serves as a powerful toolbox for real world applications as well as research. Shark depends on Boost and CMake. It is compatible with Windows, Solaris, MacOS X, and Linux. Shark is licensed under the permissive GNU Lesser General Public License.


The current stable version is Shark 3.1, released 1-3-2015.

Shark 3 is incompatible with earlier versions of Shark. It is a nearly complete rewrite with cleaner interfaces, better code structure, and also better performance. Shark 2 is not supported any longer. Shark 3.1 includes minor interface changes compared to 3.0 Almost all programs should be compatible

Source Packages

We have two source packages available:     Shark-3.1.0.tar.gz

Shark Repository

Get the current Shark repository snapshot:

git clone

OS coverage status service
Linux and Mac OSlibrary and unit tests build results Linux and Mac OS travis-ci
Windowslibrary only, no unit tests build results Windows appveyor

Where to start?

Why Shark?

Speed and flexibility

Shark provides an excellent trade-off between flexibility and ease-of-use on the one hand, and computational efficiency on the other.

One for all

Shark offers numerous algorithms from various machine learning and computational intelligence domains in a way that they can be easily combined and extended.

Unique features

Shark comes with a lot of powerful algorithms that are to our best knowledge not implemented in any other library, for example in the domains of model selection and training of binary and multi-class SVMs, or evolutionary single- and multi-objective optimization.

Selected features

Shark currently supports:

Credits and Copyright

Citing Shark

We kindly ask you to cite Shark in academic work as:

Christian Igel, Verena Heidrich-Meisner, and Tobias Glasmachers. Shark. Journal of Machine Learning Research 9, pp. 993-996, 2008.

The article's bibtex entry reads:

  author = {Christian Igel and Verena Heidrich-Meisner and Tobias Glasmachers},
  title = {Shark},
  journal = {Journal of Machine Learning Research},
  year = {2008},
  volume = {9},
  pages = {993--996}


The Shark library is made available under the GNU Lesser General Public License.

Hosting institutions

The Shark machine learning library is jointly maintained by researchers from