41.1 OML4SQLの例について
OML4SQLの例では、データの準備、アルゴリズムの選択、アルゴリズムのチューニング、テストおよびスコアリングを行うための一般的な方法を示します。
OML4SQLの例からは、OML4SQLアプリケーション・プログラミング・インタフェースについての詳しい知識が得られます。例は単純です。プログラムには、コードの理解に役立つインライン・コメントが多数含まれています。すべての一時オブジェクトが終了時に削除されるため、これらの例はセットアップやクリーン・アップなしで繰り返し実行できます。
OML4SQLの例は、GitHub (https://github.com/oracle/oracle-db-examples/tree/master/machine-learning/sql/)から入手できます。データベース・リリース(たとえば23c)を選択して例を表示します。
OML4SQLの例は、ユーザーのスキーマに機械学習モデルのセットを作成します。次の表に、この例のファイル名と、この例で使用するmining_function
値およびアルゴリズムを示します。
表41-1 各例で作成するモデル
ファイル名 | MINING_FUNCTION | アルゴリズム |
---|---|---|
oml4sql-anomaly-detection-1class-svm.sql |
CLASSIFICATION |
ALGO_SUPPORT_VECTOR_MACHINE |
oml4sql-anomaly-detection-em.sql |
CLASSIFICATION |
ALGO_EXPECTATION_MAXIMIZATION |
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-classification-regression-xgboost.sql |
CLASSIFICATION |
ALGO_XGBOOST |
oml4sql-classification-svm.sql |
CLASSIFICATION |
ALGO_SUPPORT_VECTOR_MACHINES |
oml4sql-classification-text-analysis-svm.sql |
CLASSIFICATION |
ALGO_SUPPORT_VECTOR_MACHINES |
oml4sql-clustering-expectation-maximization.sql |
CLUSTERING |
ALGO_EXPECTATION_MAXIMIZATION |
oml4sql-clustering-kmeanms-star-schema.sql |
CLUSTERING |
ALGO_KMEANS |
oml4sql-clustering-kmeans.sql |
CLUSTERING |
ALGO_KMEANS |
oml4sql-clustering-o-cluster.sql |
CLUSTERING |
ALGO_O_CLUSTER |
oml4sql-partitioned-models-svm.sql |
CLASSIFICATION |
ALGO_SUPPORT_VECTOR_MACHINES |
oml4sql-classification-regression-xgboost.sql |
CLASSIFICATION |
ALGO_XGBOOST |
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-feature-extraction-svd.sql |
FEATURE_EXTRACTION |
ALGO_SINGULAR_VALUE_DECOMP |
oml4sql-feature-extraction-text-mining-esa.sql |
FEATURE_EXTRACTION |
ALGO_EXPLICIT_SEMANTIC_ANALYSIS |
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-singular-value-decomposition.sql |
REGRESSION |
ALGO_SINGULAR_VALUE_DECOMPOSITION |
oml4sql-survival-analysis-xgboost.sql |
REGRESSION |
ALGO_XGBOOST |
oml4sql-time-series-esm-auto-model-search.sql |
TIME_SERIES |
ALGO_EXPONENTIAL_SMOOTHING |
oml4sql-time-series-exponential-smoothing.sql |
TIME_SERIES |
ALGO_EXPONENTIAL_SMOOTHING |
oml4sql-time-series-regression-dataset.sql |
- | これは時系列回帰モデルを構築するためのデータセットです。 |
oml4sql-time-series-regression.sql |
TIME_SERIES およびREGRESSION |
ALGO_EXPONENTIAL_SMOOTHING 、ALGO_GENERALIZED_MODEL およびALGO_XGBOOST を使用します |
前述の表以外のいくつかの例として、oml4sql-attribute-importance.sql
ではDBMS_PREDICTIVE_ANALYTICS.EXPLAIN
プロシージャを使用して、ターゲット属性に独立して影響を与える属性の重要性を検出します。oml4sql-feature-extraction-text-term-extraction.sql
の例では、テキスト抽出にCTX.DDL
パッケージを使用します。
その他の例のセットでは、R言語の関数の登録およびRモデルの作成のために、ALGO_EXTENSIBLE_LANG
アルゴリズムを使用する例を示します。次の表に、R拡張性の例を示します。この例のファイル名と、MINING_FUNCTION値および使用するR関数が示されています。
ファイル名 | MINING_FUNCTION | R関数 |
---|---|---|
oml4sql-r-extensible-algorithm-registration.sql |
CLASSIFICATION |
glm |
oml4sql-r-extensible-association-rules.sql |
ASSOCIATION |
apriori |
oml4sql-r-extensible-attribute-importance-via-rf.sql |
REGRESSION |
randomForest |
oml4sql-r-extensible-glm.sql |
REGRESSION |
glm |
oml4sql-r-extensible-kmeans.sql |
CLUSTERING |
kmeans |
oml4sql-r-extensible-principal-components.sql |
FEATURE_EXTRACTION |
prcomp |
oml4sql-r-extensible-regression-tree.sql |
REGRESSION |
rpart |
oml4sql-r-extensible-regression-neural-networks.sql |
REGRESSION |
nnet |