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 |