idps-escape

Use case guide

The anomaly detection pipeline via ADBox can be easily customize by creating a use case. In this context, a use case is a sequence of actions to be performed and the characteristics of the desired outcome. Examples of “informal” use cases are:

  1. Create and train a detector using data about the Linux resource usage with using data from March.
  2. Create and train a detector using data about the Linux resource usage with using data from March and apply it predict the anomalies on May the 3rd.
  3. Use detector X for real-time detection.
  4. Use detector X for batch detection on batches of size 10.

These informal use cases can be translated into real action by using a provided YAML template, as explained in the following section.

Writing a Use Case as YAML File

The YAML file for detector training and prediction includes parameters to configure the training and prediction processes. Below is a guide explaining the purpose of each parameter, its default value, and format.

Training Input Parameters

1. index_date

Represents the data source index where the training data should be fetched from.

2. categorical_features

Specifies if the given input features include categorical features.

3. columns

List of columns used as features to train the detector.

4. aggregation

Specifies if the column values should be aggregated.

5. aggregation_config

6. train_config

7. display_name

Prediction/Detection Input Parameters

1. run_mode

3. detector_id

4. start_time

5. end_time

6. batch_size

Example use case yaml file:

training: 
  index_date: "default"
  categorical_features: false
  columns: 
    - "data.cpu_usage_%"  
    - "data.memory_usage_%"  
  aggregation: true
  aggregation_config: 
    fill_na_method: "Zero"
    granularity: "1min"
    features: 
      data.cpu_usage_%:
        - "average"
        - "max"
      data.memory_usage_%:
        - "average"
        - "max"
  train_config: 
    window_size: 10
    epochs: 30
  display_name: "default"

prediction: 
  run_mode: "default"
  index_date: "default"
  detector_id: "default"
  start_time: "default"
  end_time: "default"
  batch_size: 10