# Amazon SageMaker

Amazon SageMaker AI is a cloud-based machine-learning platform that allows the creation, training, and deployment by developers of machine-learning (ML) models on the cloud. It can be used to deploy ML models on embedded systems and edge-devices. The platform was launched in November 2017.

## Capabilities

SageMaker enables developers to operate at a number of different levels of abstraction when training and deploying machine learning models. At its highest level of abstraction, SageMaker provides pre-trained ML models that can be deployed as-is. In addition, it offers a number of built-in ML algorithms that developers can train on their own data.
The platform also features managed instances of TensorFlow and Apache MXNet, where developers can create their own ML algorithms from scratch. Regardless of which level of abstraction is used, a developer can connect their SageMaker-enabled ML models to other AWS services, such as the Amazon DynamoDB database for structured data storage, AWS Batch for offline batch processing, or Amazon Kinesis for real-time processing.

## Development interfaces

A number of interfaces are available for developers to interact with SageMaker. First, there is a web API that remotely controls a SageMaker server instance. While the web API is agnostic to the programming language used by the developer, Amazon provides SageMaker API bindings for a number of languages, including Python, JavaScript, Ruby, Java, and Go. In addition, SageMaker provides managed Jupyter Notebook instances for interactively programming SageMaker and other applications.

## History and features

* 2017-11-29: SageMaker is launched at the AWS re:Invent conference.
* 2018-02-27: Managed TensorFlow and MXNet deep neural network training and inference are now supported within SageMaker.
* 2018-02-28: SageMaker automatically scales model inference to multiple server instances.
* 2018-07-13: Support is added for recurrent neural network training, word2vec training, multi-class linear learner training, and distributed deep neural network training in Chainer with Layer-wise Adaptive Rate Scaling (LARS).
* 2018-07-17: AWS Batch Transform enables high-throughput non-real-time machine learning inference in SageMaker.
* 2018-11-08: Support for training and inference of Object2Vec word embeddings.
* 2018-11-27: SageMaker Ground Truth "makes it much easier for developers to label their data using human annotators through Mechanical Turk, third-party vendors, or their own employees."
* 2018-11-28: SageMaker Reinforcement Learning (RL) "enables developers and data scientists to quickly and easily develop reinforcement learning models at scale."
* 2018-11-28: SageMaker Neo enables deep neural network models to be deployed from SageMaker to edge-devices such as smartphones and smart cameras.
* 2018-11-29: The AWS Marketplace for SageMaker is launched. The AWS Marketplace enables 3rd-party developers to buy and sell machine learning models that can be trained and deployed in SageMaker.
* 2019-01-27: SageMaker Neo is released as open-source software.

## Notable Customers

* NASCAR is using SageMaker to train deep neural networks on 70 years of video data.
* Carsales.com uses SageMaker to train and deploy machine learning models to analyze and approve automotive classified ad listings.
* Avis Budget Group and Slalom Consulting are using SageMaker to develop "a practical on-site solution that could address the over and under utilization of cars in real-time using an optimization engine built in Amazon SageMaker."
* Volkswagen Group uses SageMaker to develop and deploy machine learning in its manufacturing plants.
* Peak and Footasylum use SageMaker in a recommendation engine for footwear.

## Awards

In 2019, CIOL named SageMaker one of the "5 Best Machine Learning Platforms For Developers," alongside IBM Watson, Microsoft Azure Machine Learning, Apache PredictionIO, and AiONE.