Gradient boosted trees: predizione
Una volta eseguito il tuo modello, il passo successivo è usarlo per fare predizioni. A differenza del base R, che usa la funzione predict() per fare previsioni, sparklyr usa la funzione ml_predict(). ml_predict() accetta due argomenti: un modello e dei dati di test.
ml_predict(a_model, testing_data)
Un caso d’uso comune è confrontare le risposte predette con quelle reali, che puoi poi rappresentare in R. Il pattern di codice per preparare questi dati è il seguente. Nota che al momento l’aggiunta di una colonna di predizione va fatta in locale, quindi devi prima raccogliere i risultati.
predicted_vs_actual <- testing_data %>%
select(actual) %>%
collect() %>%
mutate(predicted)
Questo esercizio fa parte del corso
Introduzione a Spark con sparklyr in R
Istruzioni dell'esercizio
È stata creata per te una connessione Spark come spark_conn. Le tibbles collegate ai dataset di training e di test archiviati in Spark sono già definite rispettivamente come track_data_to_model_tbl e track_data_to_predict_tbl. Il modello di gradient boosted trees è stato predefinito come gradient_boosted_trees_model.
- Definisci una variabile
predictedche contenga le predizioni del modello per i dati di test.- Chiama
ml_predict()passando il modello e i dati di test come argomenti. Questa funzione genererà le predizioni per il dataset di test e le aggiungerà come nuova colonna chiamataprediction. - Usando
pull(), possiamo estrarre questa colonna e assegnarla apredicted.
- Chiama
- Definisci la variabile
responsesper preparare i dati al confronto tra risposte predette e reali:- Seleziona la colonna di risposta
year. - Raccogli i risultati.
- Usa
mutate()per aggiungere le predizioni contenute inpredicted.
- Seleziona la colonna di risposta
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
# Training, testing sets & model are pre-defined
track_data_to_model_tbl
track_data_to_predict_tbl
gradient_boosted_trees_model
# Predict the responses for the testing data
predicted <- ___(
___,
___) %>% pull(prediction)
# Prepare the data for comparing predicted responses with actual responses
responses <- track_data_to_predict_tbl %>%
# Select the response column
___ %>%
# Collect the results
___ %>%
# Add in the predictions
mutate(___)