Improving Forecast Accuracy with Machine Learning

What does this AWS Solution do?

The Improving Forecast Accuracy with Machine Learning solution generates, tests, compares, and iterates on Amazon Forecast forecasts. The solution automatically produces forecasts and generates visualization dashboards for Amazon QuickSight or Amazon SageMaker Jupyter Notebooks—providing a quick, easy, drag-and-drop interface that displays time series input and forecasted output. Forecasting can be applied to predict retail inventory demand, supply-chain planning, workforce status, web traffic forecasting, and more.

Forecasts can be compared across dimensions (for example, retail store location) or item-level metadata (for example, product brand, size, and color). You can use this data for the following:

  • Optimize existing forecasts - Save time and retain compatibility with your legacy tools, or gain insight into over- and under-provisioning, with the p50 forecast.
  • Meet variable customer demand - Provide high levels of customer satisfaction with the p90 forecast, where the true value is expected to be lower than the predicted value 90% of the time.
  • Avoid over-provisioning - Save on costs and avoid over-provisioning with the p10 forecast, where the true future demand value is expected to be lower than the predicted value only 10% of the time.
Sample graph comparing two forecast outputs
The solution outputs probabilistic predictions at three default quantiles to address sensitivity to over and under-provisioning (shown in the sample graph above).


Automated processes

Streamline the process of ingesting, modeling, and forecasting multiple experiments through the automation of Amazon Forecast.


Secure deployment

Provide a secure one-click deployment using an AWS CloudFormation template developed with the AWS Well-Architected Framework methodologies.


Proactive monitoring

Easily monitor forecasts by emailing users when successes and failures occur.


Automated visualization

Facilitate collaboration and experimentation by combining your input data and forecast output in an Amazon QuickSight Analysis or Jupyter Notebook.

AWS Solution overview

Deploying this solution with the default parameters builds the following serverless environment in the AWS Cloud.

Improving Forecast Accuracy with Machine Learning architecture

The AWS CloudFormation template deploys the resources required to automate your Amazon Forecast usage and deployments. Based on the capabilities of the solution, the architecture is divided into three parts: data preparation, forecasting, and data visualization. The template includes the following components:

  1. An Amazon Simple Storage Service (Amazon S3) bucket for Amazon Forecast configuration where you specify configuration settings for your dataset groups, dataset predictors, and forecasts, as well as the datasets themselves.
  2. An Amazon S3 event notification that triggers when new datasets are uploaded to the related Amazon S3 bucket.
  3. An Improving Forecast Accuracy with Machine Learning AWS Step Functions state machine. This combines a series of AWS Lambda functions that build, train, and deploy your Machine Learning (ML) models in Amazon Forecast. All AWS Step Functions log to Amazon CloudWatch.
  4. An Amazon Simple Notification Service (Amazon SNS) email subscription that notifies administrative users with the results of the AWS Step Functions.
  5. An Amazon SageMaker notebook instance that data scientists and developers can use to prepare and process data, and evaluate Forecast output.
  6. An AWS Glue job combines raw forecast input data, metadata, predictor backtest exports, and forecast exports into an aggregated view of your forecasts.
  7. Amazon Athena can be used to query your forecast output using standard SQL queries.
  8. Amazon QuickSight analyses can be created on a per-forecast basis to provide users with forecast output visualization across hierarchies and categories of forecasted items, as well as item level accuracy metrics. Dashboards can be created from these analyses and shared within your organization.

Improving Forecast Accuracy with Machine Learning

Version 1.5.2
Release date: 01/2023
Author: AWS

Estimated deployment time: 5 min

Estimated cost 
Use the button below to subscribe to solution updates.

Note: To subscribe to RSS updates, you must have an RSS plug-in enabled for the browser you are using.  

Did this Solutions Implementation help you?
Provide feedback 
Solving with Solutions: Improving Forecast Accuracy with Machine Learning
Customer Reference
App8 Helps Restaurants Predict Demand Using AWS Solutions
Learn how tech company App8 developed a tool that could predict customer volume and demand for particular menu items using the Improving Forecast Accuracy with Machine Learning Solution.
AWS for Industries
Short-term Electric Load Forecasting with Amazon Forecast

Learn how the Improving Forecast Accuracy with Machine Learning Solution simplifies short-term electric load forecasting for power and utilities to improve grid reliability.

AWS Architecture Blog
Improving Retail Forecast Accuracy with Machine Learning

In this blog post, we will show you how to build a reliable retail forecasting system using Amazon Forecast and an AWS-vetted solution called Improving Forecast Accuracy with Machine Learning.

Build icon
Deploy an AWS Solution yourself

Browse our library of AWS Solutions to get answers to common architectural problems.

Learn more 
Find an APN partner
Find an AWS Partner Solution

Find AWS Partners to help you get started.

Explore icon
Explore Guidance

Find prescriptive architectural diagrams, sample code, and technical content for common use cases.

Learn more