rxPredict.mlModel: pontuar usando um modelo de Machine Learning do Microsoft R
A pontuação por instância de relatório resulta em uma estrutura ou fonte de dados RevoScaleR usando um modelo de Machine Learning do Microsoft R com uma fonte RevoScaleR.
Uso
## 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"), ...)
Argumentos
modelObject
Um objeto de informações de modelo retornado de um modelo do MicrosoftML. Por exemplo, um objeto retornado de rxFastTrees ou rxLogisticRegression.
data
Um objeto de fonte de dados RevoScaleR, uma estrutura de dados ou o caminho para um arquivo .xdf
.
outData
O nome do arquivo de saída ou xdf ou um RxDataSource
com funcionalidades de gravação em que as previsões serão armazenadas. Se for definido como NULL
, um dataframe será retornado. O valor padrão é NULL
.
writeModelVars
Se for definido como TRUE
, as variáveis no modelo serão gravadas no conjunto de dados de saída além das variáveis de pontuação. Se as variáveis do conjunto de dados de entrada forem transformadas no modelo, as variáveis transformadas também serão incluídas. O valor padrão é FALSE
.
extraVarsToWrite
NULL
ou o vetor de caracteres de nomes de variáveis adicionais dos dados de entrada a serem incluídos no outData
. Se writeModelVars
for TRUE
, as variáveis do modelo também serão incluídas. O valor padrão é NULL
.
suffix
Uma cadeia de caracteres que especifica o sufixo a ser acrescentado às variáveis de pontuação criadas ou NULL
quando não há sufixo. O valor padrão é NULL
.
overwrite
Se for definido como TRUE
, um outData
existente será substituído. Se for definido como FALSE
, um outData
existente não será substituído. O valor padrão é FALSE
.
dataThreads
Um inteiro que especifica o grau desejado de paralelismo no pipeline de dados. Se for definido como NULL
, o número de threads usados será determinado internamente. O valor padrão é NULL
.
blocksPerRead
Especifica o número de blocos a serem lidos em cada parte dos dados lidos da fonte de dados.
reportProgress
Um valor inteiro que especifica o nível de relatório sobre o progresso do processamento de linha:
0
: não é relatado nenhum progresso.1
: o número de linhas processadas é impresso e atualizado.2
: as linhas processadas e os tempos são relatados.3
: as linhas processadas e todos os tempos são relatados.
O valor padrão é1
.
verbose
Um valor inteiro que especifica a quantidade de saída desejada. Se definido como 0
, não será impressa nenhuma saída detalhada durante os cálculos. Valores inteiros de 1
a 4
fornecem quantidades crescentes de informações. O valor padrão é 1
.
computeContext
Define o contexto no qual as computações são executadas, especificado com um RxComputeContext válido. No momento, há suporte para os contextos de computação local e RxInSqlServer.
...
Argumentos adicionais a serem passados diretamente para o Microsoft Compute Engine.
Detalhes
Os seguintes itens são relatados na saída por padrão: pontuação em três variáveis dos classificadores binários: PredictedLabel, Score e Probability; Score de oneClassSvm e classificadores de regressão; e PredictedLabel para classificadores multiclasse, mais uma variável para cada categoria precedida pela Score.
Valor
Uma estrutura de dados ou um objeto RxDataSource que representa os dados de saída criados. Por padrão, a saída dos classificadores binários de pontuação inclui três variáveis: PredictedLabel
, Score
e Probability
; rxOneClassSvm
e a regressão incluem uma variável: Score
; e os classificadores multiclasse incluem PredictedLabel
mais uma variável para cada categoria precedida por Score
. Se um suffix
for fornecido, ele será adicionado ao final desses nomes de variáveis de saída.
Autor(es)
Microsoft Corporation Microsoft Technical Support
Confira também
rxFastTrees, rxFastForest, rxLogisticRegression, rxNeuralNet, rxOneClassSvm.
Exemplos
# 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)