CREATE_MODEL2プロシージャ
DBMS_DATA_MININGパッケージのCREATE_MODEL2プロシージャは、モデルを作成するためのモデル設定を定義するプロシージャです。
CREATE_MODEL2プロシージャを使用すれば、一時データベース・オブジェクトをユーザーが作成する必要がありません。モデルでは、構成設定とユーザー指定の変換を使用できます。CREATE_MODEL2プロシージャでは、入力は表またはビューであり、そのようなオブジェクトがまだ存在しない場合はユーザーが作成する必要があります。
DBMS_DATA_MINING.CREATE_MODEL2 ( model_name IN VARCHAR2, mining_function IN VARCHAR2, data_query IN CLOB, set_list IN SETTING_LIST, case_id_column_name IN VARCHAR2 DEFAULT NULL, target_column_name IN VARCHAR2 DEFAULT NULL, xform_list IN TRANSFORM_LIST DEFAULT NULL);
data_queryパラメータは、モデルを作成するためのトレーニング・データを提供する問合せを指定します。set_listパラメータでSETTING_LISTを指定します。SETTING_LISTはVARCHAR2(30)によるCLOB索引の表で、ここで索引は設定名でCLOBはその名前の設定値です。残りのパラメータは、CREATE_MODELプロシージャでカバーします。
DBMS_DATA_MININGパッケージのRENAME_MODELプロシージャを使用して、モデルの名前を変更することもできます。このプロシージャでは、指定した別の名前によって、MODEL_NAMEに対して指定されている機械学習モデルの値が変更されます。
次のCREATE_MODEL2プロシージャは、SVMアルゴリズムを使用して分類モデルを作成します。次の例のmining_data_build_vデータセットでは、顧客がアフィニティ・カード・プログラムを選択する可能性がわかります。
DECLARE
v_setlist DBMS_DATA_MINING.SETTING_LIST;
BEGIN
v_setlist('PREP_AUTO') := 'ON';
v_setlist('ALGO_NAME') := 'ALGO_SUPPORT_VECTOR_MACHINES';
v_setlist('SVMS_KERNEL_FUNCTION') := 'SVMS_LINEAR';
DBMS_DATA_MINING.CREATE_MODEL2(
MODEL_NAME => 'SVM_MODEL',
MINING_FUNCTION => 'CLASSIFICATION',
DATA_QUERY => 'select * from mining_data_build_v',
SET_LIST => v_setlist,
CASE_ID_COLUMN_NAME => 'CUST_ID,
TARGET_COLUMN_NAME => 'AFFINITY_CARD');
END;