Since the earliest days of computers, creating machines that could "think" like humans has been a key goal for researchers. In the past few years, computer scientists have made huge leaps forward in artificial intelligence (AI), to the point where the technology is becoming commonplace.
In fact, Gartner predicts, "By 2020, AI technologies will be virtually pervasive in almost every new software product and service." And IDC forecasts that companies will spend $12.5 billion on AI technology in 2017, 59.3 percent more than in 2016. That tremendous growth is likely to continue through 2020, when revenues could top $46 billion.
Open source software development has played a huge role in the rise of artificial intelligence, and many of the top machine learning, deep learning, neural network and other AI software is available under open source licenses.
For this list, we selected 50 of the most well-known of these open source artificial intelligence projects. They are organized into categories and then alphabetized within those categories. The lines between some of the categories can be fuzzy, so we used the project owners' descriptions of their applications to determine where to place the various tools.
As always, if you know of additional open source AI tools that you believe should be on this list, feel free to note them in the comments section below.
Developed at Carnegie Mellon University, ACT-R is the name of both a theory of human cognition and software based on that theory. The software is based on Lisp, and extensive documentation is available. Operating System: Windows, Linux, macOS.
Originally created by a UC Berkeley PhD student, Caffe has become a very popular deep learning framework. Its claims to fame include expressive architecture, extensible code, and speed. Operating System: Windows, Linux, macOS.
First developed at Yahoo, this effort brings the Caffe deep learning framework to Hadoop and Spark clusters. It's been used for image search and content classification, among other use cases. Operating System: Windows, Linux, macOS.
Used by organizations like Airbus and Microsoft, DeepDetect is an open source deep learning server based on Caffe, TensorFlow and XGBoost. It offers an easy-to-use API for image classification, object detection, and text and numerical data analysis. Operating System: Windows, Linux, macOS.
Deeplearning4j claims to be "the first commercial-grade, open-source, distributed deep-learning library written for Java and Scala." Commercial support is available through Skymind. Operating System: Windows, Linux, macOS.
Short for "Deep Scalable Sparse Tensor Network Engine," DSSTNE (pronounced "destiny") is the software library Amazon uses to train and deploy its recommendation engine. Key features include multi-GPU scale, large layers and operation with sparse datasets. Operating System: Windows, Linux, macOS.
With more than 100,000 users, H2O claims to be "the world's leading open source deep learning platform." In addition to the Open Source version, the company also offers a Premium edition with paid support. Operating System: Windows, Linux, macOS.
Formerly known as CNTK, the Microsoft Cognitive Toolkit promises to train deep-learning algorithms to think like the human brain. It boasts speed, scalability, commercial-grade quality and compatibility with C++ and Python. Microsoft uses it to power the AI features in Skype, Cortana and Bing. Operating System: Windows, Linux.
Useful for deep learning, Theano describes itself as "a Python library that allows you to define, optimize, and evaluate mathematical expressions involving multi-dimensional arrays efficiently." Key features include GPU support, integration with NumPy, efficient symbolic differentiation, dynamic C code generation and more. Operating System: Windows, Linux, macOS.
11. DeepMind Labs
Intended for use in AI research, DeepMind Lab is a 3D game environment. It was created by the DeepMind group at Google and is said to be especially good for deep reinforcement learning research. Operating System: Linux.
12. Project Malmo
Project Malmo is a Microsoft-led effort to use Minecraft as an AI research platform. According to the website, "Minecraft is ideal for artificial intelligence research for the same reason it is addictively appealing to the millions of fans who enter its virtual world every day. Unlike other computer games, Minecraft offers its users endless possibilities, ranging from simple tasks, like walking around looking for treasure, to complex ones, like building a structure with a group of teammates." Operating System: Windows, Linux, macOS.
Google's DeepMind and Blizzard Entertainment are collaborating on a project that makes it possible to use the StarCraft II video game as an AI research platform. It's a cross-platform C++ library for building scripted bots. Operating System: Windows, Linux, macOS, Android, iOS.
This open source chess engine is one of the best in the world and can beat most human grandmasters. Note that it is also available as a mobile app. Operating System: Windows, Linux, macOS.
XGBoost supports gradient boosted trees, a type of decision tree that is easy to train and offers an alternative to neural networks. It supports regression, classification, ranking and other types of algorithms. Operating System: Windows, Linux, macOS.
The Numenta organization offers numerous open source projects related to hierarchical temporal memory. Essentially, these projects attempt to create machine intelligence based on current biological understandings of the human neocortex. Operating System: Windows, Linux, macOS.
17. Open Cog
Rather than focus on a narrow aspect of AI such as deep learning or neural networks, Open Cog aims to create beneficial artificial general intelligence (AGI). The project is working toward creating systems and robots with the capacity for human-like intelligence. Operating System: Linux.
Accord.NET promises machine learning "made in a minute." Based on Microsoft technologies, it includes sample applications and extensive documentation to help developers create production-grade computer vision, computer audition, signal processing and statistics applications quickly. Operating System: Windows.
Designed for computer vision and artificial intelligence applications, AForge.NET is a C# framework for image processing, neural networks, genetic algorithms, fuzzy logic, machine learning, robotics and more. It includes several libraries and sample applications. Operating System: Windows.
This "machine learning package built for humans" was created by Airbnb to help with dynamic pricing recommendations for hosts. It's based on Java and is particularly good for projects with geography-related variables. Operating System: Windows, Linux, macOS.
This Microsoft machine learning project includes the DMTK Framework, the Light LDA topic model algorithm, the Distributed (Multisense) Word Embedding algorithm and the LightGBM gradient boosting tree framework. The company plans to add more algorithms and components to the toolkit as research progresses. Operating System: Windows, Linux.
Dlib offers a set of C++ machine learning libraries that are quick to execute. It includes algorithms for binary classification, multiclass classification, regression, structured prediction, deep learning, clustering, unsupervised learning, semi-supervised/metric learning, reinforcement learning and feature selection. Operating System: Windows, Linux, macOS.
Under active development since 2008, Encog is a machine learning framework created by data scientist Jeff Heaton. It supports neural networks, support vector machines, bayesian networks, hidden markov models, genetic programming and genetic algorithms. Operating System: Windows, Linux, macOS.
GoLearn describes itself as a "batteries included" machine learning library for the Go programming language. It aims for simplicity and customizability. Operating System: Linux, macOS.
One of many machine learning projects sponsored by the Apache Software Foundation, Mahout offers a programming environment and framework for building scalable machine-learning applications. It also includes premade algorithms and a vector math experimentation environment called Samsara. Operating System: Windows, Linux, macOS.