To build business processes based on advanced analysis of company data and machine learning, one should gain insight on programming languages, libraries, and frameworks. Where to start? What programming solutions are required and what can they do? The article describes the main ones.

Machine learning libraries

Open source code software allows to integrate machine learning in various programming languages. There are libraries for Python, R, C++, Java, Scala, Clojure, JavaScript, and Go. Let’sexaminethemostpopulartools.


A library for Python that helps to conduct mathematical calculations. It can be united with other libraries, for instance, NumPy, SciPy, and Matplotlib. They are used together to design an interactive app within a development environment or to embed in other software and utilize from scratch.


A library was established in 1999. It is written in C++ but can be used for Java, Python, C#, Ruby, R, Lua, Octave, and Matlab. Besides, there is a version 6.0.0 supporting Microsoft Windows and Scala language.

Shogun’s major competitor is Mlpack. This library is also based on C++, but it is faster and has been applied since 2011.

Spark MLlib

A machine learning library for Apache Spark and Apache Hadoop. Java is its core language. However, Python developers can connect it to the NymPy library and R users to Spark with a version 1.5.

Machine learning frameworks

A machine learning framework for .Net. Accord has a set of libraries to process video and audio signals. Using framework algorithms, one can recognize faces, stitch images, and track moving objects. Its libraries also have standard machine learning features such as neural networks.

Apache Mahout

A framework is designed in order for mathematicians and data scientists can promptly implement their own algorithms. Apache Mahout is related to the Hadoop framework, but a lot of algorithms can work beyond it. Recent versions of Mahout support the Spark framework. Moreover, there is the ViennaCL library for linear algebra.

AI Conference:  Data analysis and machine learning tools

Data analysis frameworks


An open source framework allowing to divide an app into several fragments and to process each fragment on any node in a computing system cluster.

Hadoop is a bundled software for Big Data analysis. If a company starts operating with a large bulk of data and current Big Data tools fail to fulfil the task, one should install Hadoop.


Like Hadoop, it is an open source code platform. However, they do not interchange each other but can work together. For example, Spark functions faster in such specific tasks as interactive data mining and iteration algorithms. The framework supports Java, Scala, and Python languages.


Frameworks allow to develop any app, but data storage tools are also required. Therefore, there are database management systems (DBMS) that simplify analytics and Big Data analysis.


An open source data storage. It is designed for Big Data analysis in Hadoop files. The most popular system on the SQL platform. It accepts HiveQL as a query language. Platform’s key options include reviewing and forming of requests.


The principal competitor of Hive. It is an open source code mechanism performing SQL requests and operating on Hadoop clusters. It allows to send quick and interactive requests to Hadoop data.

Impala does not feature fault tolerance, thus, if something goes wrong, one should repeat the request. At the same time, the storage operates faster than Hive.

Analytical platforms

Programs that create an integrated environment for machine learning, intelligent data analysis, text analysis, and business intelligence.


An open source environment for forecasting and analytics. The platform supports all stages of data mining. RapidMiner allows to carry out visualization, examination, and optimization. It keeps Spark andHadoopfeatures.

IBM SPPS Modeler

A competitor of RapidMiner. The platform has an autopilot mode and can be used by newcomers. Even an unexperienced analyst is able to build a good model based on the IBM SPPS Modeler solution.

Nevertheless, it is not the best choice to analyze Big Data. SPPS options are limited for global approaches. The platform can break down because of overload when processing Big Data.


The majority of frameworks, databases, and platforms are opensource and commonly available. To choose necessary tools, one should clearly understand the task and purpose. In such a case, you will be able to select required things within minutes.