Score an MSET-SPRT Model
Scoring data with MSET-SPRT models is similar to scoring with classification algorithms, except that the SPRT methodology relies on ordered data because it tracks gradual shifts over multiple MSET predictions.
This is different than the typical usage of Oracle Database SQL prediction functions, which do not keep state information between rows.
The following functions are supported: PREDICTION
, PREDICTION_COST
, PREDICTION_DETAILS
, PREDICTION_PROBABILITY
, and PREDICTION_SET
. These functions have syntax new in Oracle Database 21c for scoring MSET-SPRT models. That syntax has an ORDER
BY
clause to order and window the historical data.
The prediction functions return the following information:
PREDICTION
indicates whether the record is flagged as anomalous. It uses the same automatically generated labels as one-class SVM models: 1 for normal and 0 for anomalous.PREDICTION_COST
performs an auto-cost analysis or a user-specified cost. A user-specified cost typically assigns a higher cost to false positives than to false negatives.PREDICTION_DETAILS
specify the signals that support the prediction along with a weight.PREDICTION_PROBABILITY
conveys a measure of certainty based on the consolidation logic.PREDICTION_SET
returns the set of predictions (0, 1) and the corresponding prediction probabilities for each observation.
Note:
If the values in one or more of the columns specified in theORDER
BY
clause are not unique, or do not represent a true chronology of data sample values, the SPRT predictions are not guaranteed to be meaningful or consistent between query executions.
Unlike other classification models, an MSET-SPRT model has no obvious probability measure associated with the anomalous label for the record as a whole. However, the consolidation logic can produce a measure of uncertainty in place of probability. For example, if an alert is raised for 2 anomalies over a window of 5 observations, a certainty of 0.5 is reported when 2 anomalies are seen within the 5 observation window. The certainty increases if more than 3 anomalies are seen and decreases if no anomalies are seen.
The PREDICTION_DETAILS
function accommodates output of varying forms and can convey the required information regarding the individual signals that triggered an alarm. When random projections are engaged, only the overall PREDICTION
and PREDICTION_PROBABILITY
are computed and PREDICTION_DETAILS
are not reported.
You must score the historical data in order to tune the SPRT parameters, such as false alerts and miss rates or consolidation logic, before you deploy the MSET model. The SPRT parameters are embedded in the model object to facilitate deployment. While scoring in the database is needed for parameter tuning and forensic analysis on historical data, monitoring a stream of sensor data is more easily done outside of the database in an IoT service or on the edge device itself.
You can build and score an MSET-SPRT model as a partitioned model if the same columns that you use to build the model are present in the input scoring data set. If those columns are not present, the query results in an error.
Related Topics