Gradient boosted trees: visualisatie
Nu je je modelvoorspellingen hebt, vraag je je misschien af: "zijn ze goed genoeg?". Er zijn veel grafieken die je kunt maken om de nauwkeurigheid van je voorspellingen te beoordelen; hier bekijk je twee veelgebruikte grafieken. Ten eerste is het handig om een spreidingsplot te maken van de voorspelde respons tegen de werkelijke respons, om te zien hoe ze zich tot elkaar verhouden. Ten tweede zouden de residuals min of meer normaal verdeeld moeten zijn, dus is het nuttig om een dichtheidsplot van de residuals te tekenen. De grafieken zien er ongeveer zo uit.

In deze oefening leer je de residuals zelf te berekenen (voorspelde respons min werkelijke respons) voor je modelvoorspellingen.
Deze oefening maakt deel uit van de cursus
Introductie tot Spark met sparklyr in R
Oefeninstructies
Een lokale tibble responses, met voorspelde en werkelijke jaren, is al voor je gedefinieerd.
- Teken een spreidingsplot van voorspelde vs. werkelijke respons.
- Roep
ggplot()aan. - Het eerste argument is de gegevensset,
responses. - Het tweede argument bevat de ongenoteerde kolomnamen voor de x- en y-as (respectievelijk
actualenpredicted), verpakt inaes(). - Voeg punten toe door
geom_point()toe te voegen. - Maak de punten gedeeltelijk transparant met
alpha = 0.1. - Voeg een referentielijn toe met
geom_abline()metintercept = 0enslope = 1.
- Roep
- Maak een tibble met residuals, genaamd
residuals.- Roep
transmute()aan opresponses. - De nieuwe kolom moet
residualheten. residualis gelijk aan de voorspelde respons min de werkelijke respons.
- Roep
- Teken een dichtheidsplot van de residuals.
- Pipe de getransmuteerde tibble naar
ggplot(). ggplot()heeft één aesthetic nodig:residual, verpakt inaes().- Voeg een kansdichtheidskromme toe met
geom_density(). - Voeg een verticale referentielijn door nul toe met
geom_vline()metxintercept = 0.
- Pipe de getransmuteerde tibble naar
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
# responses has been pre-defined
responses
# Draw a scatterplot of predicted vs. actual
ggplot(___, aes(___, ___)) +
# Add the points
___ +
# Add a line at actual = predicted
___
residuals <- responses %>%
# Transmute response data to residuals
___
# Draw a density plot of residuals
ggplot(___, aes(___)) +
# Add a density curve
___ +
# Add a vertical line through zero
___