31.3 モデルの設定の指定

データ・マイニング・モデルの作成時の構成方法について理解します。

データ・マイニング・モデルは、作成時に多数の構成設定を使用して構成できます。設定を指定するには、次の表に示す列を持つ設定表を作成し、その表をCREATE_MODELに渡します。

表31-4 設定表に必要な列

列名 データ型

setting_name

VARCHAR2(30)

setting_value

VARCHAR2(4000)

例31-1では、サポート・ベクター・マシン(SVM)分類モデルの設定表を作成します。SVMはデフォルトの分類機能ではないため、ALGO_NAME設定を使用してこのアルゴリズムを指定します。SVMS_KERNEL_FUNCTIONSVMS_LINEARに設定することにより、モデルは線形カーネルを使用して作成されます。カーネル関数を指定しない場合、アルゴリズムがデータの属性の数に基づいてカーネルを選択します。

通常はモデルに適用される設定と、アルゴリズムに固有の設定があります。モデル設定については、表31-5および表31-6に示しています。

表31-5 一般的なモデルの設定

設定 説明

マイニング機能の設定

『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』マイニング機能の設定に関する説明を参照

アルゴリズム名

『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』アルゴリズム名に関する説明を参照

グローバルなモデルの特性

『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』グローバルな設定に関する説明を参照

自動データ準備

『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』自動データ準備に関する説明を参照

表31-6 アルゴリズム固有のモデルの設定

アルゴリズム 説明

CUR行列分解

『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』DBMS_DATA_MINING — アルゴリズムの設定: CUR行列分解に関する項を参照

ディシジョン・ツリー

『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』DBMS_DATA_MINING — アルゴリズムの設定: ディシジョン・ツリーに関する項を参照

期待値最大化

『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』DBMS_DATA_MINING — アルゴリズムの設定: 期待値最大化に関する項を参照

明示的セマンティック分析

『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』DBMS_DATA_MINING — アルゴリズムの設定: 明示的セマンティック分析に関する項を参照

指数平滑法

『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』DBMS_DATA_MINING — アルゴリズムの設定: 指数平滑法モデルに関する項を参照

一般化線形モデル

『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』DBMS_DATA_MINING — アルゴリズムの設定: 一般化線形モデルに関する項を参照

k-Means

『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』DBMS_DATA_MINING — アルゴリズムの設定: k-Meansに関する項を参照

Naive Bayes

『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』アルゴリズムの設定: Naive Bayesに関する説明を参照

ニューラル・ネットワーク

『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』DBMS_DATA_MINING — アルゴリズムの設定: ニューラル・ネットワークに関する項を参照

Non-Negative Matrix Factorization

『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』DBMS_DATA_MINING — アルゴリズムの設定: Non-Negative Matrix Factorizationに関する項を参照

O-Cluster

『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』アルゴリズムの設定: O-Clusterに関する項を参照

ランダム・フォレスト

『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』DBMS_DATA_MINING — アルゴリズムの設定: ランダム・フォレストに関する項を参照

特異値分解

『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』DBMS_DATA_MINING — アルゴリズムの設定: 特異値分解に関する項を参照

サポート・ベクター・マシン

『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』DBMS_DATA_MINING — アルゴリズムの設定: サポート・ベクター・マシンに関する項を参照

例31-1 SVM分類モデルの設定表の作成

CREATE TABLE svmc_sh_sample_settings (
  setting_name VARCHAR2(30),
  setting_value VARCHAR2(4000));

BEGIN 
  INSERT INTO svmc_sh_sample_settings (setting_name, setting_value) VALUES
    (dbms_data_mining.algo_name, dbms_data_mining.algo_support_vector_machines);
  INSERT INTO svmc_sh_sample_settings (setting_name, setting_value) VALUES
    (dbms_data_mining.svms_kernel_function, dbms_data_mining.svms_linear);
  COMMIT;
END;
/

31.3.1 コストの指定

ディシジョン・ツリー・モデルを作成するためのコスト・マトリックスを指定します。

CLAS_COST_TABLE_NAME設定は、ディシジョン・ツリー・モデルの作成に使用するコスト・マトリックス表の名前を指定します。コスト・マトリックスは、分類モデルにバイアスをかけて、コストのかかる分類ミスを最小化します。コスト・マトリックス表には、次の表に示す列が必要です。

表31-7 コスト・マトリックス表に必要な列

列名 データ型

actual_target_value

有効なターゲット・データ型

predicted_target_value

有効なターゲット・データ型

cost

NUMBER

ディシジョン・ツリーは、作成時にコスト・マトリックスを指定できる唯一のアルゴリズムです。ただし、スコアリングの際には、どの分類モデルにもコスト・マトリックスを作成して関連付けることができます。

スコアリングにコストを使用する場合は、表31-7に示す列を持つ表を作成し、DBMS_DATA_MINING.ADD_COST_MATRIXプロシージャを使用してコスト・マトリックス表をモデルに追加します。PREDICTION関数を呼び出すときに、コスト・マトリックスをインラインで指定することもできます。表29-1で、有効なターゲット・データ型の詳細を示しています。

関連トピック

31.3.2 事前確率の指定

事前確率は、作成データと実際の母集団の間の分布の差を埋めるために使用されます。

CLAS_PRIORS_TABLE_NAME設定は、Naive Bayesモデルの作成に使用する事前確率表の名前を指定します。事前表には、次の表に示す列が必要です。

表31-8 事前確率表に必要な列

列名 データ型

target_value

有効なターゲット・データ型

prior_probability

NUMBER

31.3.3 クラスの重みの指定

より高い重み付けのクラスを優先するには、ロジスティック回帰またはサポート・ベクター・マシン(SVM)分類でクラス重み表設定を指定します。

CLAS_WEIGHTS_TABLE_NAME設定は、より高い重み付けのクラスを優先するようにロジスティック回帰(一般化線形モデル分類)またはSVM分類のモデルにバイアスをかけるために使用する、クラスの重み表の名前を指定します。重み表には、次の表に示す列が必要です。

表31-9 クラスの重みの表に必要な列

列名 データ型

target_value

有効なターゲット・データ型

class_weight

NUMBER

31.3.4 データ・ディクショナリにおけるモデルの設定

データ・ディクショナリ・ビューのALL/USER/DBA_MINING_MODEL_SETTINGSについて説明します。

マイニング・モデルの設定に関する情報は、データ・ディクショナリ・ビューALL/USER/DBA_MINING_MODEL_SETTINGSから取得できます。ALL接頭辞を使用した場合、このビューは、現在のユーザーがアクセスできるモデルの設定に関する情報を戻します。USER接頭辞を使用した場合は、ユーザー・スキーマ内のモデルの設定に関する情報を戻します。DBA接頭辞を使用できるのはDBAのみです。

ALL_MINING_MODEL_SETTINGSの列は次のとおりです。各列の説明は、次の表を参照してください

SQL> describe all_mining_model_settings
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 OWNER                                     NOT NULL VARCHAR2(30)
 MODEL_NAME                                NOT NULL VARCHAR2(30)
 SETTING_NAME                              NOT NULL VARCHAR2(30)
 SETTING_VALUE                                      VARCHAR2(4000)
 SETTING_TYPE                                       VARCHAR2(7)

表31-10 ALL_MINING_MODEL_SETTINGS

説明

owner

マイニング・モデルの所有者。

model_name

マイニング・モデルの名前。

setting_name

設定の名前。

setting_value

設定の値。

setting_type

INPUT: 値がユーザーによって指定される場合。DEFAULT: 値がシステムによって生成される場合。

次の問合せは、サポート・ベクター・マシン(SVM)の分類モデルSVMC_SH_CLAS_SAMPLEの設定をリストします。ALGO_NAMECLAS_WEIGHTS_TABLE_NAMEおよびSVMS_KERNEL_FUNCTIONの設定はユーザーが指定しています。これらの設定は、モデルの設定表で指定されています。

例31-2 ALL_MINING_MODEL_SETTINGS

SQL> COLUMN setting_value FORMAT A35
SQL> SELECT setting_name, setting_value, setting_type
            FROM all_mining_model_settings
            WHERE model_name in 'SVMC_SH_CLAS_SAMPLE';
 
SETTING_NAME                   SETTING_VALUE                       SETTING
------------------------------ ----------------------------------- -------
SVMS_ACTIVE_LEARNING           SVMS_AL_ENABLE                      DEFAULT
PREP_AUTO                      OFF                                 DEFAULT
SVMS_COMPLEXITY_FACTOR         0.244212                            DEFAULT
SVMS_KERNEL_FUNCTION           SVMS_LINEAR                         INPUT
CLAS_WEIGHTS_TABLE_NAME        svmc_sh_sample_class_wt             INPUT
SVMS_CONV_TOLERANCE            .001                                DEFAULT
ALGO_NAME                      ALGO_SUPPORT_VECTOR_MACHINES        INPUT

31.3.5 Rモデルのマイニング・モデル設定の指定

Rモデルのマイニング・モデル設定によって、モデルの特性が決定されます。mining_model_tableでマイニング・モデル設定を指定できます。

ODMS_PARTITION_COLUMNSODMS_SAMPLINGなど、アルゴリズムを必要としない一般的な設定を組み合せることで、マイニング・モデル設定を使用してRモデルを作成できます。次の設定は、Rマイニング・モデルに対して排他的であり、Rマイニング・モデルの指定を可能にします。

関連トピック

31.3.5.1 ALGO_EXTENSIBLE_LANG

拡張可能アルゴリズムによりOracle Data Miningフレームワークを指定するには、ALGO_EXTENSIBLE_LANG設定を使用します。

現在、RのみがALGO_EXTENSIBLE_LANGの有効値です。ALGO_EXTENSIBLE_LANGの値がRに設定されている場合、マイニング・モデルは、R言語を使用して作成されます。model_setting_tableの次の設定を使用して、Rモデルの作成、スコアおよび表示を指定できます。

関連トピック

31.3.5.2 RALG_BUILD_FUNCTION

Rアルゴリズムのマイニング・モデル作成に対する、既存の登録済Rスクリプトの名前を指定するには、RALG_BUILD_FUNCTIONを使用します。

model_setting_tableRALG_BUILD_FUNCTIONALGO_EXTENSIBLE_LANGの両方を指定する必要があります。Rスクリプトにより、トレーニング・データに対するdata.frameの最初の入力引数を含むR関数が定義され、Rモデル・オブジェクトが戻されます。最初のデータ引数は必須です。RALG_BUILD_FUNCTIONは、追加のモデル作成パラメータを受け入れることができます。

ノート:

入力パラメータの有効な入力は、数値および文字列のスカラー・データ型です。

例31-3 RALG_BUILD_FUNCTIONの例

この例は、model_setting_tableでのモデルの作成に使用されるRスクリプトMY_LM_BUILD_SCRIPTの名前の指定方法を示しています。

Begin
insert into model_setting_table values
(dbms_data_mining.ralg_build_function,'MY_LM_BUILD_SCRIPT');
End;
/ 

RスクリプトMY_LM_BUILD_SCRIPTにより、LMモデルを作成するR関数が定義されます。既存のOREセキュリティ制限を使用するRスクリプト・リポジトリにスクリプトMY_LM_BUILD_SCRIPTを登録する必要があります。Oracle R Enterprise API sys.rqScriptCreateを使用して、スクリプトを登録できます。Oracle R EnterpriseでRスクリプトを登録するにはRQADMINロールが必要です。

たとえば、次のようになります。

Begin
sys.rqScriptCreate('MY_LM_BUILD_SCRIPT', 'function(data, formula, model.frame) {lm(formula = formula, data=data, model = as.logical(model.frame)}');
End;
/

クラスタリングと特徴抽出のマイニング機能のモデル作成では、戻りRモデルでR属性のdm$nclusおよびdm$nfeatを設定して、クラスタと特徴の数をそれぞれ指定する必要があります。

RスクリプトMY_KM_BUILD_SCRIPTにより、クラスタリング用のk-Meansモデルを作成するR関数が定義されます。R属性dm$nclusは、戻りクラスタリング・モデル用のクラスタ数で設定されます。

'function(dat) {dat.scaled <- scale(dat)
     set.seed(6543); mod <- list()
     fit <- kmeans(dat.scaled, centers = 3L)
     mod[[1L]] <- fit
     mod[[2L]] <- attr(dat.scaled, "scaled:center")
     mod[[3L]] <- attr(dat.scaled, "scaled:scale")
     attr(mod, "dm$nclus") <- nrow(fit$centers)
     mod}'

RスクリプトMY_PCA_BUILD_SCRIPTにより、PCAモデルを作成するR関数が定義されます。R属性dm$nfeatは、戻り特徴抽出モデル用の特徴数で設定されます。

'function(dat) {
     mod <- prcomp(dat, retx = FALSE)
     attr(mod, "dm$nfeat") <- ncol(mod$rotation)
     mod}'
31.3.5.2.1 RALG_BUILD_PARAMETER

RALG_BUILD_FUNCTION入力パラメータは、SQL SELECT問合せ文フォーマットの数値および文字列スカラー値のリストを指定します。

例31-4 RALG_BUILD_PARAMETERの例

RALG_BUILD_FUNCTION入力パラメータは、数値および文字列のスカラー値のリストである必要があります。入力パラメータはオプションです。

パラメータの構文は次のとおりです。
'SELECT value parameter name ...FROM dual'
この例は、RALG_BUILD_PARAMETERを使用して、入力引数'formula'の式、および入力引数'model.frame'の数値ゼロを指定する方法を示しています。これらの入力引数は、RALG_BUILD_FUNCTIONパラメータで使用されるRスクリプトの関数シグネチャと一致する必要があります。
Begin
insert into model_setting_table values
(dbms_data_mining.ralg_build_parameter, 'select ''AGE ~ .'' as "formula", 0 as "model.frame" from dual');
End;
/

関連トピック

31.3.5.3 RALG_DETAILS_FUNCTION

RALG_DETAILS_FUNCTIONは、data.frameで戻されるRモデル・メタデータを指定します。

モデル情報を生成する、既存の登録済Rスクリプトの名前を指定するには、RALG_DETAILS_FUNCTIONを使用します。指定されたRスクリプトにより、Rモデル・オブジェクトの最初の入力引数を含むR関数が定義されます。R関数の出力はdata.frameとなる必要があります。data.frameの列は、RALG_DETAILS_FORMATによって定義され、数値または文字列スカラー型のみを含むことができます。

例31-5 RALG_DETAILS_FUNCTIONの例

この例は、model_setting_tableのRスクリプトMY_LM_DETAILS_SCRIPTの名前の指定方法を示しています。このスクリプトにより、モデル情報の提供に使用されるR関数が定義されます。
Begin
insert into model_setting_table values
(dbms_data_mining.ralg_details_function, 'MY_LM_DETAILS_SCRIPT');
End;
/
Rスクリプト・リポジトリでは、スクリプトMY_LM_DETAILS_SCRIPTは次のように登録されます。
 'function(mod) data.frame(name=names(mod$coefficients),
    coef=mod$coefficients)'
31.3.5.3.1 RALG_DETAILS_FORMAT

モデル・ビュー内の名前および列タイプを指定するには、RALG_DETAILS_FORMATパラメータを使用します。これは、モデル・ビュー列の名前およびタイプの数値および文字列スカラー・データ型のリストを指定するSELECT問合せを含む文字列です。

RALG_DETAILS_FORMATRALG_DETAILS_FUNCTIONの両方が指定されている場合、名前DM$VD <model_name>によるモデル・ビューが、Rモデルとともに現在のスキーマに作成されます。モデル・ビューの最初の列はPARTITION_NAMEです。パーティション化されていないモデルの場合NULL値となります。モデル・ビューの他の列は、RALG_DETATLS_FORMATによって定義されます。

例31-6 RALG_DETAILS_FORMATの例

この例は、生成されたモデル・ビューの列の名前およびタイプを指定する方法を示しています。モデル・ビューには、最初の列partition_nameの後にvarchar2列のattr_nameおよび数値列coef_valueが含まれます。
Begin
insert into model_setting_table values
(dbms_data_mining.ralg_details_format, 'select cast(''a'' as varchar2(20)) as attr_name, 0 as coef_value from dual');
End;
/

関連トピック

31.3.5.4 RALG_SCORE_FUNCTION

mining_model_tableのRアルゴリズム・マイニング・モデル・スコアの既存の登録済Rスクリプトを指定するには、RALG_SCORE_FUNCTIONを使用します。

指定したRスクリプトによりR関数が定義されます。最初の入力引数は、モデル・オブジェクトを定義します。2番目の入力引数は、データのスコアリングに使用されるdata.frameを定義します。

例31-7 RALG_SCORE_FUNCTIONの例

この例は、関数がRモデルを取得し、data.frameでデータをスコアリングする方法を示します。引数オブジェクトは、R線形モデルです。引数newdataには、data.frame内のスコアリング・データが含まれます。
function(object, newdata) {res <- predict.lm(object, newdata = newdata, se.fit = TRUE); data.frame(fit=res$fit, se=res$se.fit, df=summary(object)$df[1L])}

この例では、次のようになります。

  • objectは、LMモデルを示します

  • newdataは、スコアリングdata.frameを示します

指定したR関数の出力はdata.frameとなる必要があります。各行は、入力data.frameの対応するスコアリング・データの予測を表しています。data.frameの列は、次のようにマイニング機能固有です。

回帰: 予測対象のターゲット値の単一の数値列であり、モデル適合の標準誤差および自由度の2つのオプション列があります。オプション列は、問合せ関数PREDICTION_BOUNDSが動作するために必要です。

例31-8 回帰用のRALG_SCORE_FUNCTIONの例

この例は、model_setting_tableでのモデルのスコアリングに使用されるRスクリプトMY_LM_PREDICT_SCRIPTの名前の指定方法を示しています。

Begin
insert into model_setting_table values
(dbms_data_mining.ralg_score_function, 'MY_LM_PREDICT_SCRIPT');
End;
/
Rスクリプト・リポジトリでは、スクリプトMY_LM_PREDICT_SCRIPTは次のように登録されます。
function(object, newdata) {data.frame(pre = predict(object, newdata = newdata))}

分類: 各列は、1つのターゲット・クラスの予測確率を表します。列名は、ターゲット・クラス名です。

例31-9 分類用のRALG_SCORE_FUNCTIONの例

この例は、model_setting_tableでのロジット分類モデルのスコアリングに使用されるRスクリプトMY_LOGITGLM_PREDICT_SCRIPTの名前の指定方法を示しています。

Begin
insert into model_setting_table values
(dbms_data_mining.ralg_score_function, 'MY_LOGITGLM_PREDICT_SCRIPT');
End;
/
Rスクリプト・リポジトリでは、MY_LOGITGLM_PREDICT_SCRIPTは次のように登録されます。これは、"0"と "1"の2つのターゲット・クラスを持つロジット分類です。
'function(object, newdata) {
   pred <- predict(object, newdata = newdata, type="response");
   res <- data.frame(1-pred, pred);
   names(res) <- c("0", "1");
   res}'

クラスタリング: 各列は、1つのクラスタの予測確率を表します。列は、クラスタIDの順に並べられます。各クラスタにはクラスタIDが割り当てられ、これは1から始まる連続した値です。RモデルでCLUSTER_DISTANCEをサポートするには、Rスコア・ファンクションの出力は、予測確率の列の後に、クラスタIDの順で各クラスタへの距離の値を含む追加列を戻します。

例31-10 クラスタリング用のRALG_SCORE_FUNCTIONの例

この例は、model_setting_tableでのモデルのスコアリングに使用されるRスクリプトMY_CLUSTER_PREDICT_SCRIPTの名前の指定方法を示しています。

Begin
insert into model_setting_table values
(dbms_data_mining.ralg_score_function, 'MY_CLUSTER_PREDICT_SCRIPT');
End;
/
Rスクリプト・リポジトリでは、スクリプトMY_CLUSTER_PREDICT_SCRIPTは次のように登録されます。
'function(object, dat){
     mod <- object[[1L]]; ce <- object[[2L]]; sc <- object[[3L]];
     newdata = scale(dat, center = ce, scale = sc);
     centers <- mod$centers;
     ss <- sapply(as.data.frame(t(centers)),
     function(v) rowSums(scale(newdata, center=v, scale=FALSE)^2));
     if (!is.matrix(ss)) ss <- matrix(ss, ncol=length(ss));
     disp <- -1 / (2* mod$tot.withinss/length(mod$cluster));
     distr <- exp(disp*ss);
     prob <- distr / rowSums(distr);
     as.data.frame(cbind(prob, sqrt(ss)))}'
この関数は、Rモデルからクラスタの中央値をフェッチし、スコア・データから対応するクラスタの中央値への距離に基づいて、各クラスタに属する確率を計算します。

特徴抽出: 各列は、1つの特徴の係数値を表します。列は、特徴IDの順に並べられます。各特徴には特徴IDが割り当てられ、これは1から始まる連続した値です。

例31-11 特徴抽出用のRALG_SCORE_FUNCTIONの例

この例は、model_setting_tableでのモデルのスコアリングに使用されるRスクリプトMY_FEATURE_EXTRACTION_SCRIPTの名前の指定方法を示しています。

Begin
insert into model_setting_table values
(dbms_data_mining.ralg_score_function, 'MY_FEATURE_EXTRACTION_SCRIPT');
End;
/
Rスクリプト・リポジトリでは、スクリプトMY_FEATURE_EXTRACTION_SCRIPTは次のように登録されます。
 'function(object, dat) { as.data.frame(predict(object, dat)) }'

この関数は、Rモデルから特徴の中央値をフェッチし、スコア・データから対応する特徴の中央値への距離に基づいて、特徴の係数を計算します。

関連トピック

31.3.5.5 RALG_WEIGHT_FUNCTION

スコアリング内の各属性の重みまたは寄与率を計算する、既存の登録済Rスクリプトの名前を指定するには、RALG_WEIGHT_FUNCTIONを使用します。指定したRスクリプトは、問合せ関数PREDICTION_DETAILSで、属性の寄与率を評価するために使用されます。

指定したRスクリプトは、モデル・オブジェクトの最初の入力引数、およびスコアリング・データのdata.frameの2番目の入力引数を含むR関数を定義します。マイニング機能が分類、クラスタリングまたは特徴抽出の場合、ターゲット・クラス名、クラスタIDまたは特徴IDが3番目の入力引数によって渡され、その特定のクラス、クラスタまたは特徴の重みが計算されます。スクリプトにより、各属性の影響を与える重みが行内に含まれるdata.frameが戻されます。各行は、その入力スコアリングdata.frameに対応しています。

例31-12 RALG_WEIGHT_FUNCTIONの例

この例は、model_setting_tableでのRモデル属性の重みまたは寄与率を計算するRスクリプトMY_PREDICT_WEIGHT_SCRIPTの名前の指定方法を示しています。
Begin
insert into model_setting_table values
(dbms_data_mining.ralg_weight_function, 'MY_PREDICT_WEIGHT_SCRIPT');
End;
/
Rスクリプト・リポジトリでは、回帰用のスクリプトMY_PREDICT_WEIGHT_SCRIPTは次のように登録されます。
'function(mod, data) { coef(mod)[-1L]*data }'
Rスクリプト・リポジトリでは、ロジット分類用のスクリプトMY_PREDICT_WEIGHT_SCRIPTは次のように登録されます。
'function(mod, dat, clas) {
   v <- predict(mod, newdata=dat, type = "response");
   v0 <- data.frame(v, 1-v); names(v0) <- c("0", "1");
   res <- data.frame(lapply(seq_along(dat),
   function(x, dat) {
   if(is.numeric(dat[[x]])) dat[,x] <- as.numeric(0)
   else dat[,x] <- as.factor(NA);
   vv <- predict(mod, newdata = dat, type = "response");
   vv = data.frame(vv, 1-vv); names(vv) <- c("0", "1");
   v0[[clas]] / vv[[clas]]}, dat = dat));
   names(res) <- names(dat);
   res}'

関連トピック

31.3.5.6 登録済Rスクリプト

RALG_*_FUNCTIONは、Rスクリプト・リポジトリ内に存在するRスクリプトを指定する必要があります。Rスクリプトは、Oracle R Enterpriseを使用すると登録できます。

RALG_*_FUNCTIONには、次の機能があります。

  • RALG_BUILD_FUNCTION

  • RALG_DETAILS_FUNCTION

  • RALG_SCORE_FUNCTION

  • RALG_WEIGHT_FUNCTION

ノート:

Rモデルが機能するためには、RスクリプトがRスクリプト・リポジトリに存在する必要があります。

Rスクリプトは、Oracle Enterprise R (ORE)を通じて登録できます。Rスクリプトを登録するには、RQADMINロールが必要です。Rモデルを作成したら、この指定したRスクリプトの名前がモデルの設定になります。Rモデルが機能し続けるためには、このRスクリプトがRスクリプト・リポジトリに存在する必要があります。

Rモデルを作成、スコアリングおよび表示するために使用されるRメモリーも、Oracle Enterprise Rで管理できます。

31.3.5.7 Rモデルのデモ・スクリプト

rdbms/demoにあるRモデル・デモ・スクリプトにアクセスできます

dmraidemo.sql  dmrglmdemo.sql dmrpcademo.sql
dmrardemo.sql  dmrkmdemo.sql  dmrrfdemo.sql
dmrdtdemo.sql  dmrnndemo.sql