rxPredict.mlModel: puntuación mediante un modelo de Machine Learning de Microsoft R
Notifica los resultados de puntuación por instancia en una trama de datos o un origen de datos de RevoScaleR con un modelo de Machine Learning de Microsoft R entrenado con un origen de datos 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
Objeto de información del modelo devuelto desde un modelo MicrosoftML. Por ejemplo, un objeto devuelto a partir de rxFastTrees o rxLogisticRegression.
data
Objeto de origen de datos de RevoScaleR, trama de datos o ruta de acceso a un archivo .xdf
.
outData
Texto de salida o nombre de archivo xdf o RxDataSource
con funcionalidades de escritura en las que almacenar las predicciones. Si es NULL
, se devuelve un marco de datos. El valor predeterminado es NULL
.
writeModelVars
Si es TRUE
, las variables del modelo se escriben en el conjunto de datos de salida además de las variables de puntuación. Si las variables del conjunto de datos de entrada se transforman en el modelo, también se incluyen las variables transformadas. El valor predeterminado es FALSE
.
extraVarsToWrite
NULL
o vector de caracteres de nombres de variables adicionales de los datos de entrada que se incluirán en outData
. Si writeModelVars
es TRUE
, también se incluyen las variables del modelo. El valor predeterminado es NULL
.
suffix
Cadena de caracteres que especifica el sufijo que se va a anexar a las variables de puntuación creadas o NULL
si no hay sufijo. El valor predeterminado es NULL
.
overwrite
Si es TRUE
, se sobrescribe un outData
existente; si es FALSE
, no se sobrescribe un outData
existente. El valor predeterminado es FALSE
.
dataThreads
Entero que especifica el grado de paralelismo deseado en la canalización de datos. Si es NULL
, el número de subprocesos que se usa se determina internamente. El valor predeterminado es NULL
.
blocksPerRead
Especifica el número de bloques que se leerán para cada fragmento de datos leídos del origen de datos.
reportProgress
Valor entero que especifica el nivel de notificación del progreso del procesamiento de filas:
0
: no se notifica el progreso.1
: se imprime y actualiza el número de filas procesadas.2
: se notifican las filas procesadas y los intervalos.3
: se notifican las filas procesadas y todos los intervalos.
El valor predeterminado es1
.
verbose
Valor entero que especifica la cantidad de salida deseada. Si es 0
, no se imprime ninguna salida detallada durante los cálculos. Los valores enteros de 1
a 4
proporcionan cantidades crecientes de información. El valor predeterminado es 1
.
computeContext
Establece el contexto en el que se ejecutan los cálculos, especificado con un RxComputeContext válido. Actualmente, se admiten los contextos de proceso local y RxInSqlServer.
...
Argumentos adicionales que se pasarán directamente al motor de proceso de Microsoft.
Detalles
Los siguientes elementos se notifican en la salida de manera predeterminada: puntuación en tres variables para los clasificadores binarios: PredictedLabel, Score y Probability; puntuación para los clasificadores oneClassSvm y de regresión; PredictedLabel para los clasificadores de varias clases, además de una variable para cada categoría antepuesta por la puntuación.
Value
Trama de datos u objeto RxDataSource que representa los datos de salida creados. De forma predeterminada, la salida de la puntuación de los clasificadores binarios incluye tres variables: PredictedLabel
, Score
y Probability
; rxOneClassSvm
y la regresión incluyen una variable: Score
; y los clasificadores de varias clases incluyen PredictedLabel
más una variable para cada categoría antepuesta por Score
. Si se proporciona suffix
, se agrega al final de estos nombres de variable de salida.
Autores
Microsoft Corporation Microsoft Technical Support
Consulte también
rxFastTrees, rxFastForest, rxLogisticRegression, rxNeuralNet, rxOneClassSvm.
Ejemplos
# 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)