構文
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.