Registering a new algorithm


By registering a new algorithm, you can handle specific use cases not covered by the default algorithms, such as Regression, Classification, Time Series, and Anomaly Detection. This involves implementing more specialized versions of these algorithms or introducing new algorithmic approaches. 


Information
Important:

Custom algorithms, that is Python code, are developed by the data scientist. To ensure seamless integration with BMC Helix Edge and proper functionality for prediction, the code must use specific Python-based libraries. These libraries are provided upon request by BMC Support.

These libraries handle crucial tasks, including:

  • Making the training data file available to the algorithm.
  • Enabling the upload of trained models to BMC Helix Edge.
  • Reporting the status of the training job.

For development purposes, the data scientist can configure and download the training data file. In most cases, the data source resides within BMC Helix Edge. 

Before you begin

Before registering an algorithm, the data scientist must fulfill the following prerequisite:

  • Create Docker images for both training and prediction.
  • Upload these Docker images to the Docker registry used by the Helix Edge installation.

To register a new algorithm 

  1. On the BMC Helix Edge page, navigate to Intelligence, click Machine Learning, and select Manage Algorithms.
  2. Click New Algorithm.
    The system displays the following page:
    image-2025-1-27_14-52-28-1.png
  3. In the Basic Details pane, do the following:
    1. From the Algorithm Type list, select an algorithm.
      The following are the available options: 

      Algorithm Type

      Description

      Anomaly Detection

      Use this algorithm type to identify unusual patterns or situations that deviate from expected behavior based on historical data.

      Classification

      Use this algorithm type to categorize data into predefined groups or classes.

      Regression

      Use this algorithm type to predict the value of a target metric based on other input metrics.

      Time Series Prediction

      Use this algorithm type to take historical data to predict future values of a time-dependent metric.

    2. In the Name fieldgive your algorithm a descriptive name for easy identification.
    3. In the Description field, briefly explain the algorithm's purpose and functionality.
  4. In the Training Image URL field, enter the URL of the image data set used to train the algorithm. 
    The system uses this data set to teach the algorithm to recognize patterns and make predictions.
  5. In the Prediction pane, do the following:
    1. In the Prediction Image field, enter the URL of the image data set used for prediction in the following format: http://<algorithm-name>:<portNo>/api/version/predict. For example, enter the URL as http://AutoEncoder:48096/api/v3/predict.The system uses this data set to test the algorithm's accuracy and performance.
    2. In the Default Prediction Endpoint URL field, enter the URL of the default prediction endpoint in the following format: api/version/predict. For example, enter api/v3/predict if your URL is.
      This location is the URL where the system deploys the algorithm to predict new data.
      The Prediction Template pane displays the Payload and the Template with codes. After constructing the input payload, you can call the prediction endpoint with the Prediction template. This template lets you interpret the results and generate outputs based on the predictions.
  6. Click Approve New Image & Save to proceed with the new image.
    The system displays the following disclaimer message:
    image-2025-1-29_14-42-16.png
  7. Click Save to accept the risk and proceed with the new image.
    If the administrator does not approve the changes, revert the image to the Docker registry.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*

BMC Helix Edge 25.1