This site contains the documentation that is relevant to older WSO2 product versions and offerings.
For the latest WSO2 documentation, go to https://wso2.com/documentation/.

PMML Based Predictive Analytics Extension

This extension adds PMML based predictive analytic model compliance to Siddhi. It allows you to make predictions based on a predictive analytic model. Supported functions of the PMML extension are as follows.

Predict function

Syntax< double | float|long|int|string|boolean > pmml:predict(<string> pathToPmmlFile)
Extension TypeStream Processor
Description

Processes the input stream attributes according to the defined PMML standard model and outputs the processed results together with the input stream attributes.

This function uses the following input parameter.

  • pathToPmmlFile: The path to the PMML model file.

The function returns the outputs defined in the output fields. The number of outputs can vary.

Example

predict('<CEP HOME>/samples/artifacts/0301/decision-tree.pmml')

This model is implemented to detect network intruders. The input event stream is processed by the execution plan that uses the pmml predictive model to detect whether a particular user is an intruder to the network or not. The output stream contains the processed query results that include the predicted responses together with the feature values extracted from the input event stream.

Syntax< double | float|long|int|string|boolean > pmml:predict(<string> pathToPmmlFile,  <double|float|long|int|string|boolean> input )
Extension TypeStream Processor
Description

Processes the input stream attributes according to the defined PMML standards model and outputs the processed results.

This function uses the following input parameters.

  • pathToPmmlFile: The path to the PMML model file.
  • input: An attribute of the input stream that is sent to the PMML standard model as a value to based on which the prediction is made. The predict function does not accept any constant values as input parameters. You can have multiple input parameters according to the input stream definition.

This function returns the processed outputs defined in the query. The number of outputs can vary depending on the query definition.

Examples

predict('<CEP HOME>/samples/artifacts/0301/decision-tree.pmml', root_shell, su_attempted, num_root, num_file_creations, num_shells, num_access_files, num_outbound_cmds, is_host_login, is_guest_login , count, srv_count, serror_rate, srv_serror_rate)

This model is implemented to detect network intruders. The input event stream is processed by the execution plan that uses the pmml predictive model to detect whether a particular user is an intruder to the network or not. The output stream contains the processed query results that include the predicted responses.