Machine and Deep Learning SDKs, Tools, Frameworks and Systems
Developers have witnessed the rise of multiple big data solutions in the past few years. Building on top of the volume, variety and velocity of data, companies have seen the growing need for automating business decisions based on the knowledge coming from online systems, sensors and connected devices. In order to take advantage of this wealth of data developers are leveraging a wide range of machine and deep learning SDKs, tools, frameworks, systems, services, and libraries. This blog post highlights some of the available machine learning and deep learning SDKs available from leading platform vendors, hardware vendors, researchers, and open source projects. It’s a great time to be a software engineer and to have all of these AI technologies to integrate into our existing applications or use in new development projects.
Machine and Deep Learning SDKs
Here are a few of the many machine learning and deep learning SDKs, tools, frameworks, systems, services, and libraries that are available for developers to use in their cognition-based, big data driven applications. I’ve divided the list up into services/systems, frameworks, libraries and tools (although the distinctions are arbitrary as some provide both a service along with an API, SDK or framework).
Services/Systems
- IBM Watson – https://www.ibm.com/watson/
- Amazon Machine Learning – https://aws.amazon.com/machine-learning/
- Google Cloud Prediction API – Prediction’s cloud-based machine learning and pattern recognition tools can help analyze your data to add various features to your applications – https://cloud.google.com/prediction/
- Veles – Open Source (by Samsung) distributed platform for rapid Deep Learning app development – https://velesnet.ml/
- H20 AI – open source machine learning platform for enterprises – http://www.h2o.ai/
- Apache PredictionIO – open source Machine Learning Server built for developers and data scientists to create predictive engines for any machine learning task – http://predictionio.incubator.apache.org/
Frameworks
- Apache Singa – deep learning framework (in the Apache incubator) – https://singa.incubator.apache.org/en/index.html
- Caffe Deep Learning Framework – http://caffe.berkeleyvision.org/
- Oryx2 – Lambda architecture on Apache Spark, Apache Kafka for real-time large scale machine learning – http://oryx.io/
- Neon (Nervana Systems) – Python based Deep Learning Framework – https://github.com/NervanaSystems/neon
- Torch – Scientific Computing Machine Learning framework/algorithms – http://torch.ch/
- PyTorch – A deep learning framework that puts Python first. In an early-release Beta.- http://pytorch.org/
- Accord.net – .NET machine learning framework combined with audio and image processing libraries completely written in C# – http://accord-framework.net/
- MOA (Massive Online Analysis) – open source framework for data stream mining – http://moa.cms.waikato.ac.nz/
Libraries
- TensorFlow – open source library for Machine Learning (from Google) – https://www.tensorflow.org/
- Apache Spark MLlib – library of algorithms for Spark – http://spark.apache.org/mllib/
- Microsoft Azure ML – https://studio.azureml.net/
- Microsoft Distributed Machine Learning Toolkit (DMTK) – http://www.dmtk.io/
- Intel BigDL – BigDL is a distributed deep learning library for Apache Spark; users can write their applications as standard Spark programs, which can directly run on top of existing Spark or Hadoop clusters. – https://github.com/intel-analytics/BigDL
- DeepLearning4j – commercial-grade, open-source, distributed deep-learning library written for Java and Scala – https://deeplearning4j.org/
- Microsoft Cognitive Toolkit – trains deep learning algorithms to learn like the human brain – https://www.microsoft.com/en-us/research/product/cognitive-toolkit/
- Theano – python deep learning library – http://deeplearning.net/software/theano/
- Brainstorm – Fast, flexible and fun neural networks. – https://github.com/IDSIA/brainstorm
- mlPack – scalable machine learning library – http://mlpack.org/
- Shogun – open source machine learning toolbox provides a wide range of unified and efficient Machine Learning (ML) methods – https://github.com/shogun-toolbox/shogun
- OpenNN – open source class library written in C++ programming language which implements neural networks – http://www.opennn.net/
Tools/SDKs
- Intel Deep Learning SDK – Tools to accelerate deep learning training and deployment – https://software.intel.com/en-us/deep-learning-sdk
- NVIDIA Deep Learning SDK – tools and libraries for designing and deploying GPU-accelerated deep learning applications – https://developer.nvidia.com/deep-learning-software
Machine Learning Courses
- Udacity: Introduction to Machine Learning – https://www.udacity.com/course/intro-to-machine-learning–ud120
- Udacity: Deep Learning by Google – Take machine learning to the next level (free course) – https://www.udacity.com/course/deep-learning–ud730
- edX: Machine Learning for Data Science and Analytics – https://www.edx.org/course/machine-learning-data-science-analytics-columbiax-ds102x-0
- Open Classroom: Machine Learning by Andrew Ng – http://openclassroom.stanford.edu/MainFolder/CoursePage.php?course=MachineLearning
- Udacity: Machine Learning Engineer Nanodegree – https://www.udacity.com/course/machine-learning-engineer-nanodegree–nd009
- Udacity: Artificial Intelligence Engineer Nanodegree – https://www.udacity.com/ai
Are you using other AI, Machine Learning or Deep Learning technologies?
Am I missing a machine learning or deep learning library, framework, SDK, tool, service, system or API that your are using? Have you recently taken an AI, Machine Learning or Deep Learning Course? Post a comment and/or send me an email about your experiences working with these AI technologies in your application development projects.
David Intersimone “David I”
Vice President of Developer Communities
Evans Data Corporation
davidi@evansdata.com
Skype: davidi99
Twitter: @davidi99