Open Source for you

A Brief History and the Benefits of Shogun, the ML Library for Everyone

-

Shogun offers a full implementa­tion of Hidden Markov models. Its core is written in C++ and it offers interfaces for MATLAB,

Octave, Python, R, Java, Lua, Ruby and C#. Today, there is a large and active user community all over the world that uses Shogun as a base for education and research, and also contribute­s to the core package.

Shogun was developed in 1999 by Soeren Sonnenburg and Gunnar Raetsch. The inventive focus was on large-scale kernel methods and bioinforma­tics. Since then, it has continuous­ly been used for scientific research and has expanded massively. In early 2017, Shogun joined NumFocus.

Presently, Shogun is developed by a diverse team of students, scientists and profession­als. None of their work would have been possible, however, without the patches and bug reports given by various contributo­rs.

Mission

Machine learning is powerful.

Since the last two decades, machine learning (ML) has emerged from an unconventi­onal academic field to changing the way we live. Its methods impact society and its tools have a billion-dollar influence on the global economy. Shogun developers want to make sure that the primary algorithms are user-friendly and accessible.

They want users like scientists, data enthusiast­s, journalist­s, students, nonprofit organisati­ons and companies, as well as common citizens to be able to use ML tools at no cost.

The Shogun ML toolkit encourages this expedition through its features (accessible, open source and good, which will be explained later) and a pivot on ML education and developmen­t. Shogun is one of the largest and oldest open source ML platforms.

Features

Given below are some features of Shogun which make it unique.

Accessible: Shogun is not limited to any single language; you can use the toolkit through a unified interface (SWIG) from C++, Python, Octave, R, Java, Lua, C#, Ruby, etc. Thus Shogun is independen­t of trends in computing languages and importantl­y, this allows us to use it as a vehicle to expose one’s algorithms to multiple communitie­s. Shogun runs natively under Linux/ UNIX, MacOS and Windows.

Anybody can attempt and learn Shogun with minimal effort, simply by connecting to a Jupyter Notebook (an open source Web applicatio­n that allows us to create and share documents that contain live code, equations or other things). Users can run Shogun in the cloud. It also offers this service for free through external donations.

Shogun does not reinvent anything, but provides bindings to other sophistica­ted libraries like Tapkee, SLEP, GPML, LibSVM/LibLinear, SVMLight, LibOCAS, libqp, VowpalWabb­it, and more.

Free (open source): Shogun is community-based and non-commercial. It is currently released under the GPLv3. It is also moving towards

BSD compatibil­ity with optional GPL (General Public License) parts. This

Shogun is an open source machine learning software library built in C++. It offers a wide range of efficient and unified machine learning algorithms. The heart of Shogun lies in kernel machines such as support vector machines for regression and classifica­tion problems. Read on to understand more about this library.

means companies can use the code without having to turn their code-base to GPL.

Benefits of using Shogun

Shogun offers well-organised implementa­tion of all standard ML algorithms. Its executions are competitiv­e as measured by the MLPack benchmarki­ng framework. Shogun offers complete modern/advance algorithms (like efficient SVM implementa­tions, multiple kernel learning, etc). All of these are assisted by a collection of general-purpose methods for preprocess­ing, serialisat­ion, I/O, evaluation and parameter tuning. Shogun has a substantia­l testing infrastruc­ture, making it dependable in dozens of OS setups.

Reasons for using Shogun

Shogun is a community learning platform in every sense — anyone can use the toolbox to learn about ML and apply it to solve problems. Many scientists use Shogun as a tool for their research, and it is cited many hundred times on Google Scholar. The Shogun cloud is being used for educationa­l purposes in several universiti­es and workshops (e.g., University College London: ‘Introducti­on to Machine Learning’). Shogun values its contributo­rs highly, and aims to foster and develop them. It has counselled 33 Google Summer of Code student projects since 2011 (and counting). Many of its students have taken the skills they gained to industries and organisati­ons, and have really done well for themselves and their companies.

Installing Shogun on Ubuntu

We are using a Debian/Ubuntu operating system to install Shogun. Both currently contain the C++ library and Python bindings. Add this to your system as follows:

Then, install as:

The Python (2) bindings can be installed using:

This article gives a brief idea of Shogun, its history, features and reasons to use it. Anyone interested to learn more can visit the official site at https://www.shogun-toolbox.org/.

 ??  ??
 ??  ??
 ??  ??
 ??  ??

Newspapers in English

Newspapers from India