A Preview of Time Series Forecasting with Adobe Experience Platform
Authors: Antony Jerome, Haichun Chen, Vijeth Lomada, Tatsuya Ishii, and Shankar Srinivasan
This article provides directional information on how we are thinking about time series as an element within data science.
Companies struggle to harness transactional and behavioral data to deliver the experiences customers expect. We wanted to discuss this problem in advance of our release by creating a pre-built recipe for time series in Adobe Experience Platform Data Science Workspace. Data scientists will be able to use the pre-built recipe as-is or customize it to meet their unique needs.
What is a time series?
A time series is a series of data points collected sequentially through time. The presence of the time dimension makes such data unique. For example, the current value of a series can have a dependence on past values, and techniques to analyze such datasets would be more effective if they can tap into these signals.
Some popular examples of time series data include:
- Customer behavioral data
- Sequence of actions performed by users on a website
- Web traffic statistics (page views, error counts, etc.)
- Sales or revenue data
- System health metrics (server response times, CPU usage, etc.)
Time series forecasting defined
Time series forecasting is a statistical and/or machine learning approach used to extrapolate a time series into the future by learning historical patterns in the data. For example, in the figure below, the purple box shows historical data for a time series, and the objective here is to generate the forecast in the green box using it.
Forecasting can be beneficial in a number of ways, including:
- System load forecasting to scale up or down system resources based on anticipated usage for identifying anomalous activity
- Anticipating user actions and identifying changes in behavioral patterns
- Revenue forecasting
Some of the most common forecasting approaches are:
- Statistical forecasting techniques such as ARIMA and ETS
- Machine learning approaches incorporating recurrent neural networks and 1D convolutions
What are we developing for time series analysis?
Our pre-built recipe will accommodate a variety of time series use cases:
- Anomaly detection
Our customers have unique business requirements that can benefit from time series forecasting. In order to meet our customer requirements, we developed a pre-built time series  recipe (in Beta) with the option for data scientists to customize the model for their unique needs. Our offering helps data scientists build and deploy production-ready machine learning models with minimal effort.
Adobe Experience Platform’s time series recipe is unique because it is:
- Generally applicable: The service operates on a generic input/output time series schema, and this makes it is easy for a user to apply it to a new dataset and generate results quickly with minimal data transformations.
- Managed and configurable: The service allows customers to have maximum flexibility by configuring the model to meet the specific needs of their time series data.
- Supports developer and marketing use cases: We designed the model to be self-learning so that some of the technical configurations don’t need to be manually set. For example, the optimal forecast horizon can be automatically computed based on data. Since business people are experts of their domain, we allow users to specify additional signals as input to the service to help improve accuracy.
- Deep learning-based: Deep learning has become mainstream now for computer vision and natural language problems. However, time series has been a stronghold for traditional data science due to success in statistical techniques such as ETS. The issues with traditional methods are their strong assumptions about the data distribution and the level of difficulty required to extend them to multivariate scenarios. Another downside is they usually are not scalable, meaning they cannot handle large amounts of data. We implemented an ensemble method using a combination of 1D convolution, encoder/decoder, and BiLSTM. In our tests against multiple real data sets, this approach performed better than several traditional methods such as ETS and SARIMA.
How was our time series model built?
We used a deep learning model built on TensorFlow. The training time for our models is significantly improved with the usage of GPUs. Setting up a GPU cluster with appropriate TensorFlow / CUDA / CuDNN versions, and ensuring it stays up-to-date can be a time-consuming process. The code is packaged as Docker images and deployed on Data Science Workspace. The model is made available to customers in the form of a pre-built recipe that can be applied to custom datasets.
The time series model uses a combination of 1D convolutions, recurrent neural networks, and feed forward layers.
- 1D convolutions are the one-dimensional cousin of the more popular 2D convolutions seen in image-related tasks. The goal of a 1D convolution is to learn a set of filters that are applied across the time dimension. These filters can be thought of as feature extractors that operate on the time scale, and when combined with appropriate strides, this can effectively collapse the length of the time dimension.
- Recurrent neural network (RNN) is a type of neural network that incorporates the concept of feedback loops in it. This allows an RNN to have visibility into past states while generating the output for the current time step. We use a type of RNN called long short-term memory (LSTM) that can handle longer time series better.
- Feed forward layers are the traditional multi-layer neural networks that do not have a feedback mechanism. It is used to project the recurrent layer outputs for forecast horizon dimensionality.
Our model also supports multivariate forecasting, allowing it to scale a large number of time series. We support the ability to leverage external regressor time series in a forecasting model. External regressors such as holidays and sales promotions can have a powerful impact on the metric being forecasted.
What will this mean for you?
Our time series recipe will allow data scientists and data engineers to accelerate their machine learning capabilities and activate them across the enterprise. For example:
- Engineers will be able to set up auto-remediation using forecast results as demand prediction.
- Data Scientists will be able to use anomaly detection or forecasting as novel features in their models to improve accuracy.
- Marketers will be able to detect anomalies in traffic and send alerts for fast problem resolution on complex, mission-critical campaigns such as Black Friday for the Retail industry.
 Adobe Experience Platform Data Science Workspace https://www.adobe.com/content/dam/acom/en/experience-platform-highlights/pdfs/adobe-experience-platform-data-science-workspace-machine-learning.pdf
 R. J. Hyndman, E. Wang and N. Laptev, “Large-Scale Unusual Time Series Detection,” 2015 IEEE International Conference on Data Mining Workshop (ICDMW).
 R. J. Hyndman and G. Athanasopoulos. “Forecasting: principles and practice,” (2018) OTexts.