構文

cost_matrix_clause::=

mining_attribute_clause::=

用途
このファンクションは、DBMS_DATA_MININGパッケージまたはOracle Data Minerで作成した分類モデルで使用するためのものです。このファンクションは、他の型のモデルに対しては無効です。このファンクションは、複数クラスの分類の使用例で、すべてのクラスを含むオブジェクトのVARRAYを戻します。オブジェクト・フィールドには、PREDICTION、PROBABILITYおよびCOSTの名前が付きます。PREDICTIONフィールドのデータ型は、モデルの作成中に使用するターゲット値の型によって異なります。他の2つのフィールドは、両方ともOracleのNUMBERになります。要素は最適な予測から最低の予測の順序で戻されます。
bestNには、戻されるターゲット・クラスを最も高い確率(コスト・マトリックス句が指定されている場合は、最も低いコスト)のNに制限するために、正の整数を指定します。複数のクラスがN番目の値にあっても、N個の値のみが戻されます。cutoffのみでフィルタ処理するには、このパラメータにNULLを指定します。
cutoffには、戻されるターゲット・クラスを、指定したカットオフ値以上(コスト・マトリックス句が指定されている場合は、指定したコスト以下)の確率を持つターゲット・クラスに制限するために、NUMBER値を指定します。bestNにNULLを指定すると、cutoffのみでフィルタ処理できます。
bestNとcutoffの両方に値を指定すると、戻される予測は、bestNで、かつ確率(またはcost_matrix_clause指定時のコスト)がしきい値を超えるもののみに制限されます。
cost_matrix_clause句は、すべての分類モデルに対して有効です。この句を指定すると、bestNとcutoffの両方は、予測の確率ではなく予測コストに関して処理されます。bestNの値は、結果をNの最適(最低)コストを持つターゲット・クラスに制限し、cutoffは、ターゲット・クラスを、指定したカットオフ以下のコストを持つターゲット・クラスに制限します。
この句を指定すると、コレクションの各オブジェクトは、予測値(データ型はモデルの作成時に使用されるターゲット値の型によって異なる)、予測確率および予測コスト(両方ともOracleのNUMBER)の3つを含むスカラー値の組になります。
この句を指定しない場合、VARRAYの各オブジェクトは、予測値と予測確率を含むスカラーの組になります。戻されるデータ型は、前述の説明と同様です。
モデルに関連付けられたコスト・マトリックスを考慮して、スコアリングを実行する必要があることを示すには、COST MODELを指定します。このようなコスト・マトリックスが存在しない場合は、エラーが戻されます。
コスト・マトリックスが存在するかどうかわからない場合は、COST MODEL AUTOを指定します。この場合、次のようになります。
格納されたコスト・マトリックスが存在する場合、結果はCOST MODELの場合と同じになります。
格納されたコスト・マトリックスが存在しない場合は、結果はcost_matrix_clauseを使用しない場合とほとんど同じになります。ただし、コレクションのオブジェクトが3つあり、コスト値が単位コスト・マトリックス(対角線上は0の値、それ以外の場所は1の値)に基づいて計算されている場合は除きます。これは、1から指定されたクラスの確率を引いた値と同じです。格納されたコスト・マトリックスが存在しない場合は、cutoffパラメータは無視されます。
表内コスト・マトリックスを指定するには、VALUES句(cost_matrix_clauseの下の方のブランチ)を使用します。表内コスト・マトリックスは、モデルがスコアリングのコスト・マトリックスに関連付けられているかどうかにかかわらず使用できます。表内コスト・マトリックスの例は、『Oracle Data Miningアプリケーション開発者ガイド』を参照してください。
mining_attribute_clauseは、PREDICTIONファンクションと同様に動作します。「mining_attribute_clause」を参照してください。
|
関連項目:
|
例
次の例では、提携カードの使用および不使用の可能性とコストを、10人の顧客それぞれで示します。この例はバイナリ・ターゲットを持ちますが、このような問合せは「Low」、「Med」、「High」などの複数クラスの分類でも有効です。
この例と前提条件のデータ・マイニング操作は、デモ・ファイル$ORACLE_HOME/rdbms/demo/dmdtdemo.sqlで確認できます。データ・マイニングのデモ・ファイルの一般情報は、『Oracle Data Mining管理者ガイド』を参照してください。次に、このファンクションの構文の使用例を示します。
SELECT T.cust_id, S.prediction, S.probability, S.cost
FROM (SELECT cust_id,
PREDICTION_SET(dt_sh_clas_sample COST MODEL USING *) pset
FROM mining_data_apply_v
WHERE cust_id < 100011) T,
TABLE(T.pset) S
ORDER BY cust_id, S.prediction;
CUST_ID PREDICTION PROBABILITY COST
---------- ---------- ----------- -----
100001 0 .96682 .27
100001 1 .03318 .97
100002 0 .74038 2.08
100002 1 .25962 .74
100003 0 .90909 .73
100003 1 .09091 .91
100004 0 .90909 .73
100004 1 .09091 .91
100005 0 .27236 5.82
100005 1 .72764 .27
100006 0 1.00000 .00
100006 1 .00000 1.00
100007 0 .90909 .73
100007 1 .09091 .91
100008 0 .90909 .73
100008 1 .09091 .91
100009 0 .27236 5.82
100009 1 .72764 .27
100010 0 .80808 1.54
100010 1 .19192 .81
20 rows selected.