
This function is for use with decision tree classification models created by the DBMS_DATA_MINING package or with the Oracle Data Mining Java API. It is not valid with other types of models. It returns a measure of cost for a given prediction as an Oracle NUMBER.
If you specify the optional class parameter, then the function returns the cost for the specified class. If you omit the class parameter, then the function returns the cost associated with the best prediction. You can use this form in conjunction with the PREDICTION function to obtain the best pair of prediction value and cost.
COST MODEL indicates that the scoring should be performed by taking into account the cost matrix that was associated with the model at build time. If no such cost matrix exists, then the database returns an error.
The mining_attribute_clause behaves as described for the PREDICTION function. Please refer to mining_attribute_clause.
See Also:
Oracle Data Mining Concepts for detailed information on Oracle Data Mining features
Oracle Data Mining Administrator's Guide for information on the demo programs available in the code
Oracle Data Mining Application Developer's Guide for information on writing Oracle Data Mining applications
The following example finds the ten customers living in Italy who are least expensive to convince to use an affinity card.
This example and the prerequisite data mining operations can be found in the demo file $ORACLE_HOME/rdbms/demo/dmdtdemo.sql. General information on data mining demo files is available in Oracle Data Mining Administrator's Guide. The example is presented here to illustrate the syntactic use of the function.
WITH
cust_italy AS (
SELECT cust_id
FROM mining_data_apply_v
WHERE country_name = 'Italy'
ORDER BY PREDICTION_COST(DT_SH_Clas_sample, 1 COST MODEL USING *) ASC, 1
)
SELECT cust_id
FROM cust_italy
WHERE rownum < 11;
CUST_ID
----------
100081
100179
100185
100324
100344
100554
100662
100733
101250
101306
10 rows selected.