LoslegenKostenlos starten

Erstelle ein Random-Forest-Modell für Fahrradverleihen

In dieser Übung baust du erneut ein Modell, das die stündliche Anzahl ausgeliehener Fahrräder anhand des Wetters, der Art des Tages (Feiertag, Arbeitstag oder Wochenende) und der Tageszeit vorhersagt. Du trainierst das Modell mit Daten aus dem Monat Juli.

Du verwendest das Paket ranger, um das Random-Forest-Modell zu fitten. Für diese Übung sind die wichtigsten Argumente beim Aufruf von ranger() (Docs):

  • formula
  • data
  • num.trees: die Anzahl der Bäume im Forest.
  • respect.unordered.factors : Legt fest, wie ungeordnete Faktor-Variablen behandelt werden. Für Regression empfehlen wir, dies auf "order" zu setzen.
  • seed: da es sich um einen zufälligen Algorithmus handelt, setzt du den Seed, um reproduzierbare Ergebnisse zu erhalten

Da es viele Eingabevariablen gibt, geben wir der Bequemlichkeit halber das Ziel und die Inputs in den Variablen outcome und vars an und verwenden paste() (Docs), um einen String für die Modellformel zusammenzusetzen.

Der Data Frame bikesJuly wurde bereits geladen. Der Beispielcode legt die Namen der Ziel- und Eingabevariablen fest.

Diese Übung ist Teil des Kurses

<Kurs>Überwachtes Lernen in R: Regression</Kurs>
Kurs ansehen

Übungsanweisungen

  • Fülle die Lücken aus, um die Formel fmla zu erstellen, die cnt als Funktion der Inputs ausdrückt. Gib sie aus.
  • Lade das Paket ranger.
  • Verwende ranger, um ein Modell für die Daten bikesJuly zu fitten: bike_model_rf.
    • Das erste Argument von ranger() ist die Formel fmla.
    • Verwende 500 Bäume und respect.unordered.factors = "order".
    • Setze den Seed auf seed, um reproduzierbare Ergebnisse zu erhalten.
    • Gib das Modell aus. Wie hoch ist das R-Quadrat?

Interaktive praktische Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

# bikesJuly is available
str(bikesJuly)

# Random seed to reproduce results
seed

# The outcome column
(outcome <- "cnt")

# The input variables
(vars <- c("hr", "holiday", "workingday", "weathersit", "temp", "atemp", "hum", "windspeed"))

# Create the formula string for bikes rented as a function of the inputs
(fmla <- paste(___, "~", paste(___, collapse = " + ")))

# Load the package ranger
___

# Fit and print the random forest model
(bike_model_rf <- ranger(___, # formula 
                         ___, # data
                         num.trees = ___, 
                         respect.unordered.factors = ___, 
                         seed = ___))
Code bearbeiten und ausführen