Friday, February 16, 2018

10 Opensource tools/frameworks for Artificial Intelligence

Here are 10 tools/frameworks which popular or getting popular in the “hot topic” of today’s IT world – Artificial Intelligence. The details below trying to give intro, features and links to where you can find more details.

1) TensorFlow: An open-source software library for Machine Intelligence


TensorFlow™ is an open source software library which originally developed by researchers and engineers working on the Google Brain Team. TensorFlow is for numerical computation using data flow graphs. Nodes in the graph represent mathematical operations, while the graph edges represent the multidimensional data arrays (tensors) communicated between them. The flexible architecture allows you to deploy computation to one or more CPUs or GPUs in a desktop, server, or mobile device with a single API.

Useful Links :

Tensorflow home: https://www.tensorflow.org



2) Apache SystemML: An optimal workplace for machine learning using big data


SystemML, the machine-learning technology created at IBM, has reached one of the top-level project status at the Apache Software Foundation and it’s a flexible, scalable machine learning system. Important  characteristics are:

1.       Algorithm customizability via R-like and Python-like languages.

2.       Multiple execution modes, including Spark MLContext, Spark Batch, Hadoop Batch, Standalone, and JMLC (Java Machine Learning Connector).

3.       Automatic optimization based on data and cluster characteristics to ensure both efficiency and scalability.

Useful Links :




3) Caffe: A deep learning framework made with expression, speed, and modularity in mind.


Caffe project initiated by Yangqing Jia during his PhD at UC Berkeley and the later developed by Berkeley AI Research (BAIR) and by community contributors. It mostly focusses on convolutional networks for computer vision applications. Caffe is a solid and popular choice for computer vision-related tasks and you can download many successful models made by Caffe users from the Caffe Model Zoo (link below) for out-of-the-box use.

Useful Links :




Tutorial presentation of the framework and a full-day crash course: https://docs.google.com/presentation/d/1UeKXVgRvvxg9OUdh_UiC5G71UMscNPlvArsWER41PsU/edit#slide=id.p



4)  Apache Mahout: A distributed linear algebra framework and mathematically expressive Scala DSL 


Mahout designed to let mathematicians, statisticians, and data scientists quickly implement their own algorithms. Apache Spark is the recommended out-of-the-box distributed back-end, or can be extended to other distributed backends.

·         Mathematically Expressive Scala DSL

·         Support for Multiple Distributed Backends (including Apache Spark)

·         Modular Native Solvers for CPU/GPU/CUDA Acceleration

Apache Mahout currently implements areas including Collaborative filtering (CF), Clustering and Categorization

Useful Links :


Intro to Mahout by Grant Ingersoll: https://www.ibm.com/developerworks/library/j-mahout/

5) OpenNN: An open source class library written in C++ which implements neural networks.


OpenNN (Open Neural Networks Library) was formerly known as Flood is based on Ph.D. thesis of R. Lopez, "Neural Networks for Variational Problems in Engineering", at Technical University of Catalonia, 2008.

Useful Links :


OpenNN Artelnics GitHub: https://github.com/Artelnics/OpenNN

Neural Designer: https://neuraldesigner.com/

6) Torch: An open source machine learning library, a scientific computing framework, and a script language based on the Lua programming language.


Torch provides a wide range of algorithms for deep machine learning, and uses the scripting language LuaJIT, and an underlying C/CUDA implementation. The core package of Torch is torch. It provides a flexible N-dimensional array or Tensor, which supports basic routines for indexing, slicing, transposing, type-casting, resizing, sharing storage and cloning. The nn package is used for building neural networks

Useful Links :

Torch Home: http://torch.ch/


7) Neuroph: An object-oriented neural network framework written in Java.


Neuroph can be used to create and train neural networks in Java programs. Neuroph provides Java class library as well as GUI tool easyNeurons for creating and training neural networks. Neuroph is lightweight Java neural network framework to develop common neural network architectures. It contains well designed, open source Java library with small number of basic classes which correspond to basic NN concepts. Also has nice GUI neural network editor to quickly create Java neural network components. It has been released as open source under the Apache 2.0 license.

Useful Links :



8) Deeplearning4j: The first commercial-grade, open-source, distributed deep-learning library written for Java and Scala.


Deeplearning4j (DL4J) Integrated with Hadoop and Spark, DL4J is designed to be used in business environments on distributed GPUs and CPUs. Skymind is its commercial support arm, bundling Deeplearning4j and other libraries such as Tensorflow and Keras in the Skymind Intelligence Layer (SKIL, Community Edition), a deep learning environment that gives developers an easy, fast way to train and deploy AI models. SKIL acts as a bridge between Python data science environments and the JVM.

Useful Links :





9) Mycroft : Claiming as the world’s first open source assistant and may be used in anything from a science project to an enterprise software application.


Mycroft runs anywhere – on a desktop computer, inside an automobile, or on a Raspberry Pi. This is open source software which can be freely remixed, extended, and improved. Mycroft may be used in anything from a science project to an enterprise software application.

Useful Links :

MyCroft Home: https://mycroft.ai



10) OpenCog: OpenCog is a project that aims to build an open source artificial intelligence framework


OpenCog is a diverse assemblage of cognitive algorithms, each embodying their own innovations — but what makes the overall architecture powerful is its careful adherence to the principle of cognitive synergy.  OpenCog was originally based on the release in 2008 of the source code of the proprietary "Novamente Cognition Engine" (NCE) of Novamente LLC. The original NCE code is discussed in the PLN book (ref below). Ongoing development of OpenCog is supported by Artificial General Intelligence Research Institute (AGIRI), the Google Summer of Code project, and others.

Useful Links :

OpenCog Home: https://opencog.org/



No comments:

Deep Learning of Sequence data with LSTM

This article published in May, 2019 edition of "Open Source for you" (AI & ML special edition) online read here - https://w...