Condividi tramite


rxPredict.mlModel: assegnare punteggi usando un modello di Microsoft R Machine Learning

Segnala i risultati del punteggio per ogni singola istanza in un frame di dati o in un'origine dati RevoScaleR usando un modello di Microsoft R Machine Learning sottoposto a training con origine dati RevoScaleR.

Utilizzo

 ## 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"), ...)

Arguments

modelObject

Oggetto informazioni modello restituito da un modello MicrosoftML. Ad esempio, un oggetto restituito da rxFastTrees o rxLogisticRegression.

data

Oggetto origine dati RevoScaleR, frame di dati o percorso di un file .xdf.

outData

Testo di output o nome file xdf o RxDataSource con funzionalità di scrittura in cui archiviare le previsioni. Se NULL, viene restituito un frame di dati. Il valore predefinito è NULL.

writeModelVars

Se TRUE, le variabili presenti nel modello vengono scritte nel set di dati di output in aggiunta alle variabili di assegnazione dei punteggi. Se le variabili del set di dati di input vengono trasformate nel modello, vengono incluse anche le variabili trasformate. Il valore predefinito è FALSE.

extraVarsToWrite

NULL o vettore di caratteri di variabili aggiuntive dai dati di input da includere in outData. Se writeModelVars è TRUE, sono incluse anche le variabili di modello. Il valore predefinito è NULL.

suffix

Stringa di caratteri che specifica il suffisso da aggiungere alle variabili di assegnazione dei punteggi create o NULL se non è presente alcun suffisso. Il valore predefinito è NULL.

overwrite

Se TRUE, un valore di outData già esistente viene sovrascritto; se FALSE, un valore outData già esistente non viene sovrascritto. Il valore predefinito è FALSE.

dataThreads

Numero intero che specifica il grado di parallelismo desiderato nella pipeline di dati. Se NULL, il numero di thread usati viene determinato internamente. Il valore predefinito è NULL.

blocksPerRead

Specifica il numero di blocchi da leggere per ogni blocco di dati letto dall'origine dati.

reportProgress

Valore intero che specifica il livello di creazione di report sullo stato di elaborazione delle righe:

  • 0: non viene segnalato alcun avanzamento.
  • 1: il numero di righe elaborate viene stampato e aggiornato.
  • 2: vengono segnalate le righe elaborate e le tempistiche.
  • 3: vengono segnalate le righe elaborate e tutte le tempistiche.
    Il valore predefinito è 1.

verbose

Valore intero che specifica la quantità di output desiderata. Se 0, non viene stampato alcun output dettagliato durante i calcoli. Valori interi da 1 a 4 per fornire quantità crescenti di informazioni. Il valore predefinito è 1.

computeContext

Imposta il contesto in cui vengono eseguiti i calcoli, specificato con un RxComputeContext valido. Sono attualmente supportati contesti di calcolo locali e RxInSqlServer.

...

Argomenti aggiuntivi da passare direttamente al motore di calcolo Microsoft.

Dettagli

Gli elementi seguenti vengono segnalati nell'output per impostazione predefinita: assegnazione di punteggi sulle tre variabili PredictedLabel, Score e Probability per classificatori binari; Score per classificatori oneClassSvm e di regressione; PredictedLabel per classificatori multiclasse, più una variabile per ogni categoria preceduta da Score.

Valore

Frame di dati o oggetto RxDataSource rappresentativo dei dati di output creati. Per impostazione predefinita, l'output dei classificatori binari di assegnazione dei punteggi include tre variabili, PredictedLabel, Score e Probability; per rxOneClassSvm e la regressione è inclusa un'unica variabile, Score; per i classificatori multiclasse vengono incluse PredictedLabel più una variabile per ogni categoria preceduta da Score. Se viene specificato un suffix, viene aggiunto alla fine di questi nomi di variabili di output.

Autore/i

Microsoft Corporation Microsoft Technical Support

Vedi anche

rxFastTrees, rxFastForest, rxLogisticRegression, rxNeuralNet, rxOneClassSvm.

Esempi



 # 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)