Gradient boosted trees: voorspellen
Zodra je model getraind is, is de volgende stap er voorspellingen mee maken. In tegenstelling tot base-R, dat de functie predict() gebruikt, gebruikt sparklyr de functie ml_predict(). ml_predict() neemt twee argumenten: een model en testdata.
ml_predict(a_model, testing_data)
Een veelvoorkomend gebruik is om de voorspelde waarden te vergelijken met de werkelijke waarden, waar je in R grafieken van kunt maken. Het patroon voor het voorbereiden van deze data is als volgt. Let op: momenteel moet je het toevoegen van een predictiekolom lokaal doen, dus je moet de resultaten eerst collecteren.
predicted_vs_actual <- testing_data %>%
select(actual) %>%
collect() %>%
mutate(predicted)
Deze oefening maakt deel uit van de cursus
Introductie tot Spark met sparklyr in R
Oefeninstructies
Er is al een Spark-verbinding voor je aangemaakt als spark_conn. Tibbles die verwijzen naar de trainings- en testgegevenssets die in Spark zijn opgeslagen, zijn respectievelijk vooraf gedefinieerd als track_data_to_model_tbl en track_data_to_predict_tbl. Het gradient boosted trees-model is vooraf gedefinieerd als gradient_boosted_trees_model.
- Definieer een variabele
predicteddie de voorspellingen van het model voor onze testdata bevat.- Roep
ml_predict()aan met het model en de testdata als argumenten. Deze functie genereert voorspellingen voor de testgegevensset en voegt die toe als een nieuwe kolom met de naamprediction. - Met
pull()kunnen we deze kolom extraheren en toewijzen aanpredicted.
- Roep
- Definieer de variabele
responsesom de data voor te bereiden om voorspelde waarden met werkelijke waarden te vergelijken:- Selecteer de responsekolom
year. - Collecteer de resultaten.
- Gebruik
mutate()om de voorspellingen uitpredictedtoe te voegen.
- Selecteer de responsekolom
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
# 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(___)