What is the Anomaly Detector API?
The Anomaly Detector API enables you to monitor and detect abnormalities in your time series data with machine learning. The Anomaly Detector API adapts by automatically identifying and applying the best-fitting models to your data, regardless of industry, scenario, or data volume. Using your time series data, the API determines boundaries for anomaly detection, expected values, and which data points are anomalies.
Using the Anomaly Detector doesn't require any prior experience in machine learning, and the RESTful API enables you to easily integrate the service into your applications and processes.
With the Anomaly Detector, you can automatically detect anomalies throughout your time series data, or as they occur in real-time.
|Detect anomalies as they occur in real-time.||Detect anomalies in your streaming data by using previously seen data points to determine if your latest one is an anomaly. This operation generates a model using the data points you send, and determines if the target point is an anomaly. By calling the API with each new data point you generate, you can monitor your data as it's created.|
|Detect anomalies throughout your data set as a batch.||Use your time series to detect any anomalies that might exist throughout your data. This operation generates a model using your entire time series data, with each point analyzed with the same model.|
|Get additional information about your data.||Get useful details about your data and any observed anomalies, including expected values, anomaly boundaries and positions.|
|Adjust anomaly detection boundaries.||The Anomaly Detector API automatically creates boundaries for anomaly detection. Adjust these boundaries to increase or decrease the API's sensitivity to data anomalies, and better fit your data.|
Check out this interactive demo to understand how Anomaly Detector works. To run the demo, you need to create an Anomaly Detector resource and get the API key and endpoint.
To learn how to call the Anomaly Detector API, try this Azure Notebook. This web-hosted Jupyter Notebook shows you how to send an API request and visualize the result.
To run the Notebook, complete the following steps:
- Get a valid Anomaly Detector API subscription key and an API endpoint. The section below has instructions for signing up.
- Sign in, and click Clone, in the upper right corner.
- Un-check the "public" option in the dialog box before completing the clone operation, otherwise your notebook, including any subscription keys, will be public.
- Click Run on free compute
- Select one of the notebooks.
- Add your valid Anomaly Detector API subscription key to the
- Change the
endpointvariable to your endpoint. For example:
- On the top menu bar, click Cell, then Run All.
The Anomaly Detector API is a RESTful web service, making it easy to call from any programming language that can make HTTP requests and parse JSON.
For best results when using the Anomaly Detector API, your JSON-formatted time series data should include:
- data points separated by the same interval, with no more than 10% of the expected number of points missing.
- at least 12 data points if your data doesn't have a clear seasonal pattern.
- at least 4 pattern occurrences if your data does have a clear seasonal pattern.
After signing up:
- Take your time series data and convert it into a valid JSON format. Use best practices when preparing your data to get the best results.
- Send a request to the Anomaly Detector API with your data.
- Process the API response by parsing the returned JSON message.
- Please refer to technical blogs Introducing Azure Anomaly Detector API and Overview of SR-CNN algorithm in Azure Anomaly Detector about the algorithms under the hood.
- Please refer to this paper Time-Series Anomaly Detection Service at Microsoft (accepted by KDD 2019) for the cutting-edge SR-CNN algorithms developed by Microsoft.
Join the Anomaly Detector community
- Join the Anomaly Detector Advisors group on Microsoft Teams
- See selected user generated content
- Quickstart: Detect anomalies in your time series data using the Anomaly Detector REST API
- The Anomaly Detector API online demo
- The Anomaly Detector REST API reference