40.1 OML4SQLの例について

OML4SQLの例では、データの準備、アルゴリズムの選択、アルゴリズムのチューニング、テストおよびスコアリングを行うための一般的な方法を示します。

OML4SQLの例からは、OML4SQLアプリケーション・プログラミング・インタフェースについての詳しい知識が得られます。この例は簡単に使用できます。プログラムには、コードの理解に役立つインライン・コメントが多数含まれています。すべての一時オブジェクトが終了時に削除されるため、これらの例はセットアップやクリーン・アップなしで繰り返し実行できます。

OML4SQLの例は、GitHub (https://github.com/oracle/oracle-db-examples/tree/master/machine-learning/sql/20c)から入手できます。

OML4SQLの例は、ユーザーのスキーマに機械学習モデルのセットを作成します。次の表に、この例のファイル名と、この例で使用するmining_function値およびアルゴリズムを示します。

表40-1 各例で作成するモデル

ファイル名 MINING_FUNCTION アルゴリズム
oml4sql-association-rules.sql ASSOCIATION ALGO_APRIORI_ASSOCIATION_RULES
oml4sql-feature-extraction-cur.sql ATTRIBUTE_IMPORTANCE ALGO_CUR_DECOMPOSITION
oml4sql-classification-decision-tree.sql CLASSIFICATION ALGO_DECISION_TREE
oml4sql-cross-validation-decision-tree.sql CLASSIFICATION ALGO_DECISION_TREE
oml4sql-classification-glm.sql CLASSIFICATION ALGO_GENERALIZED_LINEAR_MODEL
oml4sql-time-series-mset.sql CLASSIFICATION ALGO_MSET_SPRT
oml4sql-classification-naive-bayes.sql CLASSIFICATION ALGO_NAIVE_BAYES
oml4sql-classification-neural-networks.sql CLASSIFICATION ALGO_NEURAL_NETWORK
oml4sql-classification-random-forest.sql CLASSIFICATION ALGO_RANDOM_FOREST
oml4sql-anomaly-detection-1csvm.sql CLASSIFICATION ALGO_SUPPORT_VECTOR_MACHINES
oml4sql-classification-svm.sql CLASSIFICATION ALGO_SUPPORT_VECTOR_MACHINES
oml4sql-classification-text-analysis-svm.sql CLASSIFICATION ALGO_SUPPORT_VECTOR_MACHINES
oml4sql-partitioned-models-svm.sql CLASSIFICATION ALGO_SUPPORT_VECTOR_MACHINES
oml4sql-classification-regression-xgboost.sql CLASSIFICATION ALGO_XGBOOST
oml4sql-clustering-expectation-maximization.sql CLUSTERING ALGO_EXPECTATION_MAXIMIZATION
oml4sql-clustering-kmeans.sql CLUSTERING ALGO_KMEANS
oml4sql-clustering-kmeans-star-schema.sql CLUSTERING ALGO_KMEANS
oml4sql-clustering-o-cluster.sql CLUSTERING ALGO_O_CLUSTER
oml4sql-feature-extraction-text-analysis-esa.sql FEATURE_EXTRACTION ALGO_EXPLICIT_SEMANTIC_ANALYS
oml4sql-feature-extraction-nmf.sql FEATURE_EXTRACTION ALGO_NONNEGATIVE_MATRIX_FACTOR
oml4sql-feature-extraction-text-analysis-nmf.sql FEATURE_EXTRACTION ALGO_NONNEGATIVE_MATRIX_FACTOR
oml4sql-singular-value-decomposition.sql FEATURE_EXTRACTION ALGO_SINGULAR_VALUE_DECOMP
oml4sql-regression-glm.sql REGRESSION ALGO_GENERALIZED_LINEAR_MODEL
oml4sql-regression-neural-networks.sql REGRESSION ALGO_NEURAL_NETWORK
oml4sql-regression-random-forest.sql REGRESSION ALGO_RANDOM_FOREST
oml4sql-regression-svm.sql REGRESSION ALGO_SUPPORT_VECTOR_MACHINES
oml4sql-classification-regression-xgboost.sql REGRESSION ALGO_XGBOOST
oml4sql-time-series-exponential-smoothing.sql TIME_SERIES ALGO_EXPONENTIAL_SMOOTHING

別の例はoml4sql-attribute-importance.sqlです。DBMS_PREDICTIVE_ANALYTICS.EXPLAINプロシージャを使用して、ターゲット属性に独自に影響を与える属性の重要度を調べます。

その他の例のセットでは、R言語の関数の登録およびRモデルの作成のために、ALGO_EXTENSIBLE_LANGアルゴリズムを使用する例を示します。次の表に、R拡張性の例を示します。この例のファイル名と、MINING_FUNCTION値および使用するR関数が示されています。

ファイル名 MINING_FUNCTION R関数
oml4sql-rextensible-algorithm-registration.sql CLASSIFICATION glm
oml4sql-rextensible-association-rules.sql ASSOCIATION apriori
oml4sql-rextensible-attribute-importance-via-rf.sql REGRESSION randomForest
oml4sql-rextensible-glm.sql REGRESSION glm
oml4sql-rextensible-kmeans.sql CLUSTERING kmeans
oml4sql-rextensible-principal-components.sql FEATURE_EXTRACTION prcomp
oml4sql-rextensible-regression-tree.sql REGRESSION rpart
oml4sql-regression-r-neural-networks.sql REGRESSION nnet