Aan de slagBegin gratis

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.

Scatterplot van voorspelde respons vs. werkelijke respons en dichtheidsplot van de verdeling van residuals naast elkaar.

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

Bekijk cursus

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 actual en predicted), verpakt in aes().
    • 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() met intercept = 0 en slope = 1.
  • Maak een tibble met residuals, genaamd residuals.
    • Roep transmute() aan op responses.
    • De nieuwe kolom moet residual heten.
    • residual is gelijk aan de voorspelde respons min de werkelijke respons.
  • Teken een dichtheidsplot van de residuals.
    • Pipe de getransmuteerde tibble naar ggplot().
    • ggplot() heeft één aesthetic nodig: residual, verpakt in aes().
    • Voeg een kansdichtheidskromme toe met geom_density().
    • Voeg een verticale referentielijn door nul toe met geom_vline() met xintercept = 0.

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
    ___
Code bewerken en uitvoeren