rxPredict.mlModel: Microsoft R 機械学習モデルを使用してスコア付けする
RevoScaleR データ ソースを含むトレーニング済みの Microsoft R 機械学習モデルを使用して、インスタンスごとのスコアリング結果をデータ フレームまたは RevoScaleR データ ソースでレポートします。
使用方法
## S3 method for class `mlModel':
rxPredict (modelObject, data, outData = NULL,
writeModelVars = FALSE, extraVarsToWrite = NULL, suffix = NULL,
overwrite = FALSE, dataThreads = NULL,
blocksPerRead = rxGetOption("blocksPerRead"),
reportProgress = rxGetOption("reportProgress"), verbose = 1,
computeContext = rxGetOption("computeContext"), ...)
引数
modelObject
MicrosoftML モデルから返されるモデル情報オブジェクト。 たとえば、rxFastTrees または rxLogisticRegression から返されるオブジェクト。
data
RevoScaleR データ ソース オブジェクト、データ フレーム、または .xdf
ファイルへのパス。
outData
出力テキストまたは xdf ファイル名、または予測を格納する書き込み機能がある RxDataSource
。 NULL
の場合、データ フレームが返されます。 既定値は NULL
です。
writeModelVars
TRUE
の場合、モデル内の変数は、スコアリング変数に加えて出力データ セットに書き込まれます。 入力データ セットの変数がモデルで変換される場合は、変換された変数も含まれます。 既定値は FALSE
です。
extraVarsToWrite
NULL
または、入力データから outData
に含める追加の変数名の文字ベクトル。 writeModelVars
が TRUE
の場合、モデル変数も含まれます。 既定値は NULL
です。
suffix
作成されたスコアリング変数に追加するサフィックスを指定する文字列。または、サフィックスがない場合は NULL
。 既定値は NULL
です。
overwrite
TRUE
にすると既存の outData
が上書きされます。FALSE
にすると、既存の outData
は上書きされません。 既定値は FALSE
です。
dataThreads
データ パイプラインで必要な並列処理の次数を指定する整数。 NULL
の場合、使用されるスレッドの数は内部的に決定されます。 既定値は NULL
です。
blocksPerRead
データ ソースから読み取るデータのチャンクごとに、読み取るブロックの数を指定します。
reportProgress
行処理の進行状況に関するレポートのレベルを指定する整数値。
0
: 進行状況はレポートされません。1
: 処理された行の数が出力され、更新されます。2
: 処理された行とタイミングがレポートされます。3
: 処理された行とすべてのタイミングがレポートされます。
既定値は1
です。
verbose
必要な出力の量を指定する整数値。 0
の場合、計算中に詳細は出力されません。 1
から 4
の整数値を指定すると、情報の量が増えます。 既定値は 1
です。
computeContext
有効な RxComputeContext で指定されている、計算が実行されるコンテキストを設定します。 現在は、ローカルと RxInSqlServer コンピューティング コンテキストがサポートされています。
...
Microsoft コンピューティング エンジンに直接渡される追加の引数。
説明
既定では、出力に次の項目がレポートされます。2 項分類子の 3 つの変数に対するスコアリング: PredictedLabel、Score、Probability。oneClassSvm と回帰分類子のスコア。多クラス分類子の PredictedLabel と、前にスコアが付加された各カテゴリの変数。
値
データ フレームまたは作成された出力データを表す RxDataSource オブジェクト。 既定では、スコアリング バイナリ分類子からの出力には、PredictedLabel
、Score
、および Probability
の 3 つの変数が含まれます。rxOneClassSvm
と回帰には、1 つの変数 Score
が含まれます。多クラス分類子には、PredictedLabel
と、前に Score
が付加された各カテゴリの変数が含まれます。 suffix
が指定されている場合は、これらの出力変数名の末尾に追加されます。
作成者
Microsoft Corporation Microsoft Technical Support
こちらもご覧ください
rxFastTrees、rxFastForest、rxLogisticRegression、rxNeuralNet、rxOneClassSvm。
使用例
# Estimate a logistic regression model
infert1 <- infert
infert1$isCase <- (infert1$case == 1)
myModelInfo <- rxLogisticRegression(formula = isCase ~ age + parity + education + spontaneous + induced,
data = infert1)
# Create an xdf file with per-instance results using rxPredict
xdfOut <- tempfile(pattern = "scoreOut", fileext = ".xdf")
scoreDS <- rxPredict(myModelInfo, data = infert1,
outData = xdfOut, overwrite = TRUE,
extraVarsToWrite = c("isCase", "Probability"))
# Summarize results with an ROC curve
rxRocCurve(actualVarName = "isCase", predVarNames = "Probability", data = scoreDS)
# Use the built-in data set 'airquality' to create test and train data
DF <- airquality[!is.na(airquality$Ozone), ]
DF$Ozone <- as.numeric(DF$Ozone)
set.seed(12)
randomSplit <- rnorm(nrow(DF))
trainAir <- DF[randomSplit >= 0,]
testAir <- DF[randomSplit < 0,]
airFormula <- Ozone ~ Solar.R + Wind + Temp
# Regression Fast Tree for train data
fastTreeReg <- rxFastTrees(airFormula, type = "regression",
data = trainAir)
# Put score and model variables in data frame, including the model variables
# Add the suffix "Pred" to the new variable
fastTreeScoreDF <- rxPredict(fastTreeReg, data = testAir,
writeModelVars = TRUE, suffix = "Pred")
rxGetVarInfo(fastTreeScoreDF)
# Clean-up
file.remove(xdfOut)