Warehouse Builder Oracle 2006 3
Warehouse Builder... 3 ETL... 4 DMBS_PREDICTIVE_ANALYTICS... 4... 5 1... 5 2... 5 3... 5... 6 SQL PREDICT... 7... 9 1... 9 2... 9 3... 9... 10 PL/SQL... 11... 12... 12... 14 Warehouse Builder における予測分析の使用 2
Warehouse Builder はじめに Web 24 Oracle Enterprise Edition Oracle Oracle Warehouse Builder Warehouse Builder における予測分析の使用 3
ETL におけるエンタープライズ予測分析の使用 Oracle Database 10g ETL 3 DBMS_PREDICTIVE_ANALYTICS SQL PREDICT PL/SQL DMBS_PREDICTIVE_ANALYTICS の使用 DBMS_PREDICTIVE_ANALYTICS ETL 2 EXPLAIN PREDICT PREDICT ETL Column NULL PREDICT Naïve Bayes PREDICT DBMS_PREDICTIVE_ANALYTICS.PREDICT( accuracy => v_accuracy, data_table_name => 'customer_age', case_id_column_name => 'cust_id', target_column_name => 'affinity_card', result_table_name => 'predict_result'); DBMS_OUTPUT.PUT_LINE('Accuracy = ' v_accuracy); Warehouse Builder における予測分析の使用 4
Oracle Data Miner PL/SQL Java API 新しい変換関数の追加 DBMS_PREDICTIVE_ANALYTICS OWB OWB 3 ETL ステップ 1- 名前と説明 ステップ 2-パラメータ data_table_name case_id_column_name target_column_name result_table_name data_schema_name ステップ 3- 実装 1.DBMS_PREDICTIVE_ANALYTICS PREDICT_RESULT Warehouse Builder における予測分析の使用 5
case_id_column_name prediction probability case_id case_id target_column_name NULL マッピング PREDICT_RESULT CUSTOMER_AGE PREDICTED_CUSTOMERS 2 Oracle Warehouse Builder DBMS_PREDICTIVE_ANALYTICS Warehouse Builder における予測分析の使用 6
SQL PREDICT 関数の使用 10g Release 2 SQL PREDICT DBMS_DATA_MINING Oracle Data Mining Java API ETL DBMS_DATA_MINING PL/SQL GET_MODEL_DETAILS Oracle Database PL/SQL Packages and Types Reference Java API Exploring Model Details ETL DM_USER_MODELS select 'NAME', 'FUNCTION_NAME', 'ALGORITHM_NAME' from DM_USER_MODELS; NAME FUNCTION_NAME ALGORITHM_NAME ------------------------------------------------------------------- ABN_SH_CLAS_SAMPLE CLASSIFICATION ADAPTIVE_BAYES_NETWORK AI_SH_SAMPLE ATTRIBUTE_IMPORTANCE MINIMUM_DESCRIPTION_LENGTH AR_SH_SAMPLE ASSOCIATION_RULES APRIORI_ASSOCIATION_RULES DT_SH_CLAS_SAMPLE CLASSIFICATION DECISION_TREE KM_SH_CLUS_SAMPLE CLUSTERING KMEANS NB_SH_CLAS_SAMPLE CLASSIFICATION NAIVE_BAYES NMF_SH_SAMPLE FEATURE_EXTRACTION NONNEGATIVE_MATRIX_FACTOR OC_SH_CLUS_SAMPLE CLUSTERING O_CLUSTER SVMC_SH_CLAS_SAMPLE CLASSIFICATION SUPPORT_VECTOR_MACHINES SVMO_SH_CLAS_SAMPLE CLASSIFICATION SUPPORT_VECTOR_MACHINES SVMR_SH_REGR_SAMPLE REGRESSION SUPPORT_VECTOR_MACHINES T_SVM_CLAS_SAMPLE CLASSIFICATION SUPPORT_VECTOR_MACHINES OWB SQL Warehouse Builder における予測分析の使用 7
s_cust_high_value number; begin if nvl(high_value_cust,-1) = -1 then execute IMMEDIATE 'select PREDICTION(dt_sh_clas_sample COST MODEL USING cust_marital_status, education, household_size) from CUSTOMER_DETAILS WHERE CUST_ID = :1' INTO s_cust_high_value USING CUST_ID_IN; else is_cust_high_value := HIGH_VALUE_CUST; end if; return is_cust_high_value; end; ETL Warehouse Builder における予測分析の使用 8
新しい変換関数の追加 SQL PREDICTIVE OWB OWB 3 ETL ステップ 1- 名前と説明 ステップ 2-パラメータ Customer ID ステップ 3- 実装 dt_sh_clas_sample PL/SQL Oracle Data Miner SQL PREDICTION OWB SQL 3.SQL PREDICT Warehouse Builder における予測分析の使用 9
Transformation Function 4 SQL PREDICT Oracle Warehouse Builder マッピング Customer ID NULL 5 SQL PREDICT Oracle Warehouse Builder OWB 10g Release 2 Warehouse Builder における予測分析の使用 10
PL/SQL のデータ マイニング モデルの使用 PL/SQL Build Test Apply PL/SQL DM_COORDINATE ETL Build Test Apply Test Apply Apply DM_COORDINATE v_howtorun VARCHAR2(7); --main body BEGIN NULL; --allow compilation v_howtorun := upper(nvl(v_mode, 'CREATE')); IF v_howtorun = 'CREATE' THEN execute immediate 'call dm_score_create()'; execute immediate 'call dm_score_test()'; execute immediate 'call dm_score_apply()'; ELSIF v_howtorun = 'TEST' THEN execute immediate 'call dm_score_test()'; execute immediate 'call dm_score_apply()'; ELSIF v_howtorun = 'APPLY' THEN execute immediate 'call dm_score_apply()'; END IF; EXCEPTION WHEN OTHERS THEN Warehouse Builder における予測分析の使用 11
新しい変換パッケージの追加 OWB Naïve Bayes 6. PL/SQL Naïve Bayes NULL マッピング nb_sh_sample_apply_ranked DBMS_DATA_MINING.RANK_APPLY ( apply_result_table_name => 'nb_sh_sample_apply_result', case_id_column_name => 'customer_id', score_column_name => 'score', score_criterion_column_name => 'chance', ranked_apply_table_name => 'nb_sh_sample_apply_ranked', top_n => 2, cost_matrix_table_name => 'nb_alter_cost'); Table nb_sh_sample_apply_ranked CUSTOMER_ID SCORE CHANCE COST RANK ----------- ---------- --------- --------- --------- 100001 0.9602.0261 1 100001 1.0398.9602 2 100002 0.7188.1847 1 100002 1.2812.7188 2 100003 0.98.0131 1 100003 1.02.98 2 100004 0.9084.0602 1 100004 1.0916.9084 2 100005 1.9936.0064 1 100005 0.0064.6524 2 Warehouse Builder における予測分析の使用 12
Rank =1 Customer ID nb_sh_sample_apply_ranked create test apply 7 PL/SQL Warehouse Builder における予測分析の使用 13
プロセス フローの作成 ETL OWB 10g Release 2 8 9 Warehouse Builder における予測分析の使用 14
9 Process Flow Warehouse Builder における予測分析の使用 15
ETL における予測分析の使用 2006 年 3 月著者 : Keith Laker Oracle Corporation World Headquarters 500 Oracle Parkway Redwood Shores, CA 94065 U.S.A. お問合せ : 電話 : +1.650.506.7000 ファクシミリ : +1.650.506.7200 www.oracle.com Copyright 2004-2006, Oracle. All rights reserved. 本文書は情報提供のみを目的として提供されており ここに記載される内容は予告なく変更されることがあります 本文書は一切間違いがないことを保証するものではなく さらに 口述による明示または法律による黙示を問わず 特定の目的に対する商品性もしくは適合性についての黙示的な保証を含み いかなる他の保証や条件も提供するものではありません オラクルは本文書に関するいかなる法的責任も明確に否認し 本文書によって直接的または間接的に確立される契約義務はないものとします 本文書はオラクルの書面による許可を前もって得ることなく いかなる目的のためにも 電子または印刷を含むいかなる形式や手段によっても再作成または送信することはできません Oracle は オラクルおよびその子会社 関連会社の登録商標です その他の名称はそれぞれの会社の商標です