The last post from our series on the AWS Machine Learning Specialty Certification will talk about the area of Machine Learning Implementation and Operations. The idea behind this area is implementing ML solutions, which can be achieved in different ways using AWS. First, we will learn about some of the ready to use ML services provided by Amazon. After that, we will see the AWS Sagemaker deployment options in case you want to deploy your own model using the AWS infrastructure.
AWS provides many different ML services that are ready to use and do not require any model writing, enabling organizations to use sophisticated ML solutions without the need to have a specialized team to deploy it. We will focus on three of the most important and most mentioned services in the exam.
Rekognition is a collection of video and image analysis solutions. It is useful for a variety of use cases, such as image labeling, text detection, face detection, people pathing, and more. You can also use Rekognition to create metadata from images or videos that you have stored, making it possible to search them using keywords, for example.
For Natural Language Processing (NLP) use cases, such as document classification, sentiment analysis, entity, and key phrase recognition, or organizing documents in topics, Amazon Comprehend is your go-to service. It also has a specific implementation for health applications, called Comprehend Medical.
As the name suggests, Amazon Forecast is a Forecasting tool that enables you to work with predictions on time-series data. A common use case is to predict the demand for a certain product or the future load of an application. Amazon provides multiple algorithms for you to choose, using ML to achieve better results than with common forecasting models. One of its most distinctive features is the capacity to relate multiple time-series data in a single model.
If you want to use a custom trained model, Amazon SageMaker provides different options for deployment that are easy to use and to maintain. If you are required to build a persistent endpoint for your model, the only thing you need to do is specify the number and type of instances to host it, run a deploy command in your SageMaker notebook, and SageMaker handles the creation of an HTTPS endpoint. These are the best solutions if your use case requires your application to have a real-time response to requests.
If your business requirement is different and you only need to process the requests on a specified schedule, SageMaker’s Batch Transform is the recommended solution. It can handle small to large sizes of data, ranging from bytes do petabytes, and using SageMaker’ API you can call Batch Transform to execute this transform job and then return the results to S3. It is also cheaper than the persistent endpoint because you pay only for the amount of time required to make the predictions, not for the entire time that the endpoint is live.
Lastly, you can attach multiple models or processing jobs using SageMaker’s Inference Pipeline. An example of this is a SageMaker pipeline in which the first model does preprocessing on image data, the second model takes the output of the first model and predicts what objects are in the image, and then the third and final model clusters similar groups of images according to the metadata created from the second model. An important note is that Inference Pipeline works both for SageMaker Endpoints or Batch Transform jobs.
This was the last post of our series on AWS’s Machine Learning Specialty Certification. We hope you have enjoyed the reading. If you are planning on taking the exam, make sure to study the materials indicated in our first post and good luck!
Featured Image by Christopher Gower on Unsplash.