Deep Learning is an continuously-growing, popular part of a broader family of machine learning methods, based on data representations. As a relatively new concept, the vast amount of resources can be a touch overwhelming for those either looking to get into the field, or those already engraved in it. A good way of staying updated with the latest trends is to interact with the community by engaging and interacting with the deep learning open source projects that are currently available.
Fig. 1: Top 16 open source deep learning libraries by Github stars and contributors, using log scale for both axes. The color of the circle shows the age in days (greener - younger, bluer - older), computed from Start date given on github under Insights / Contributors.
By all measures, TensorFlow is the undisputed leader. Keras, Caffe, Microsoft Cognitive Toolkit, and PyTorch completing the top five.
Below you will find the full list, ordered by stars, with a brief outline and further links. We hope you will enjoy collaborating and learning more by using the links provided for each library:
- TensorFlow was originally developed by researchers and engineers working on the Google Brain Team within Google’s Machine Intelligence research organization. The system is designed to facilitate research in machine learning, and to make it quick and easy to transition from research prototype to production system.
Stars: 96655, Contributors: 1432, Commits: 31714, Start: 1-Nov-15. Github URL: TensorFlow.
- Keras is a high-level neural networks API, written in Python and capable of running on top of TensorFlow, CNTK, or Theano.
Stars: 28385, Contributors: 653, Commits: 4468, Start: 22-Mar-15. Github URL: Keras.
- Caffe is a deep learning framework made with expression, speed, and modularity in mind. It is developed by the Berkeley Vision and Learning Center (BVLC) and community contributors.
Stars: 23750, Contributors: 267, Commits: 4128, Start: 8-Sep-15. Github URL: Caffe.
- Microsoft Cognitive Toolkit (Previously CNTK) is a unified deep learning toolkit that describes neural networks as a series of computational steps via a directed graph.
Stars: 14243, Contributors: 174, Commits: 15613, Start: 27-Jul-14. Github URL: Microsoft Cognitive Toolkit.
- PyTorch, Tensors and Dynamic neural networks in Python with strong GPU acceleration.
Stars: 14101, Contributors: 601, Commits: 10733, Start: 22-Jan-12. Github URL: PyTorch.
- Apache MXnet is a deep learning framework designed for both efficiency and flexibility. It allows you to mix symbolic and imperative programming to maximize efficiency and productivity.
Stars: 13699, Contributors: 516, Commits: 6953, Start: 26-Apr-15. Github URL: Apache MXnet.
- DeepLearning4J is part of the Skymind Intelligence Layer, along with ND4J, DataVec, Arbiter and RL4J. It is an Apache 2.0-licensed, open-source, distributed neural net library written in Java and Scala.
Stars: 8725, Contributors: 141, Commits: 9647, Start: 24-Nov-13. Github URL: DeepLearning4J.
- Theano allows you to define, optimize, and evaluate mathematical expressions involving multi-dimensional arrays efficiently. However, in September 2017, Theano announced that any further major developments would cease after the 1.0 release. Don’t let this put you off though, it is still an extremely powerful library that you can carry out deep learning research with it at any time.
Stars: 8141, Contributors: 329, Commits: 27974, Start: 6-Jan-08. Github URL: Theano.
- TFLearn is a modular and transparent deep learning library built on top of TensorFlow. It was designed to provide a higher-level API to TensorFlow in order to facilitate and speed-up experiments, while remaining fully transparent and compatible with it.
Stars: 7933, Contributors: 111, Commits: 589, Start: 27-Mar-16. Github URL: TFLearn.
- Torch is the main package in Torch7 where data structures for multi-dimensional tensors and mathematical operations over these are defined. Additionally, it provides many utilities for accessing files, serializing objects of arbitrary types and other useful utilities.
Stars: 7834, Contributors: 133, Commits: 1335, Start: 22-Jan-12. Github URL: Torch.
- Caffe2 is a lightweight, modular, and scalable deep learning framework. Building on the original Caffe, Caffe2 is designed with expression, speed, and modularity in mind.
Stars: 7813, Contributors: 187, Commits: 3678, 21-Jun-15. Github URL: Caffe2.
- PaddlePaddle (PArallel Distributed Deep LEarning) is an easy-to-use, efficient, flexible and scalable deep learning platform, which is originally developed by Baidu scientists and engineers for the purpose of applying deep learning to many products at Baidu.
Stars: 6726, Contributors: 120, Commits: 13733, 28-Aug-16. Github URL: PaddlePaddle.
- DLib is a modern C++ toolkit containing machine learning algorithms and tools for creating complex software in C++ to solve real world problems.
Stars: 4676, Contributors: 107, Commits: 7276, Start: 27-Apr-08. Github URL: DLib.
- Chainer is a Python-based, standalone open source framework for deep learning models. Chainer provides a flexible, intuitive, and high performance means of implementing a full range of deep learning models, including state-of-the-art models such as recurrent neural networks and variational auto-encoders.
Stars: 3685, Contributors: 160, Commits: 13700, Start: 12-Apr-15. Github URL: Chainer.
- Neon is Nervana's Python-based deep learning library. It provides ease of use while delivering the highest performance.
Stars: 3466, Contributors: 77, Commits: 1112, Start: 3-May-15. Github URL: Neon.
- Lasagne is a lightweight library to build and train neural networks in Theano.
Stars: 3417, Contributors: 64, Commits: 1150, Start: 7-Sep-14. Github URL: Lasagne.
- H2O.ai, Open Source Fast Scalable Machine Learning Platform For Smarter Applications (Deep Learning, Gradient Boosting, Random Forest, Generalized Linear Modeling, Automatic Machine Learning, ...). Stars: 3017, Contributors: 102, Commits: 22771, Start: 2-Mar-14. Github URL: h2oai/h2o-3.
- PyLearn2 . Stars: 2573, Contributors: 119, Commits: 7119. Github URL: PyLearn2.
- BigDL. Stars: 2385, Contributors: 50, Commits: 2330. Github URL: BigDL.
- Shogun. Stars: 2068, Contributors: 145, Commits: 16521. Github URL: Shogun.
- Apache SINGA. Stars: 1362, Contributors: 31, Commits: 869. Github URL: Apache SINGA.
- Blocks. Stars: 1099, Contributors: 48, Commits: 3257. Github URL: Blocks.
- Mocha. Stars: 1031, Contributors: 41, Commits: 1064. Github URL: Mocha.
So that’s our extensive list of the top deep learning libraries and platforms. If you know of any we’ve missed out, please let us know in the comments!
The contributors and commits were recorded on April 17, 2018.
- Top 20 Python AI and Machine Learning Open Source Projects
- Top 8 Free Must-Read Books on Deep Learning
- Ranking Popular Distributed Computing Packages for Data Science