LoslegenKostenlos loslegen

Underfitte ich?

Du erstellst ein Random-Forest-Modell, um vorherzusagen, ob du ein zukünftiges Tic-Tac-Toe-Spiel gewinnen wirst. Mit dem Datensatz tic_tac_toe hast du Trainings- und Testdatensätze erstellt: X_train, X_test, y_train und y_test.

Du hast beschlossen, mehrere Random-Forest-Modelle mit unterschiedlich vielen Bäumen (1, 2, 3, 4, 5, 10, 20 und 50) zu erstellen. Je mehr Bäume du verwendest, desto länger braucht dein Random-Forest-Modell zur Ausführung. Wenn du jedoch zu wenige Bäume verwendest, riskierst du Underfitting. Du hast eine for-Schleife erstellt, um dein Modell mit den verschiedenen Anzahlen an Bäumen zu testen.

Diese Übung ist Teil des Kurses

Modellvalidierung in Python

Kurs anzeigen

Anleitung zur Übung

  • Sage in jeder Schleife Werte sowohl für die Datensätze X_train als auch X_test voraus.
  • Hänge in jeder Schleife den accuracy_score() des Datensatzes y_train und der entsprechenden Vorhersagen an train_scores an.
  • Hänge in jeder Schleife den accuracy_score() des Datensatzes y_test und der entsprechenden Vorhersagen an test_scores an.
  • Gib die Trainings- und Testwerte mit den print-Anweisungen aus.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

from sklearn.metrics import accuracy_score

test_scores, train_scores = [], []
for i in [1, 2, 3, 4, 5, 10, 20, 50]:
    rfc = RandomForestClassifier(n_estimators=i, random_state=1111)
    rfc.fit(X_train, y_train)
    # Create predictions for the X_train and X_test datasets.
    train_predictions = rfc.predict(____)
    test_predictions = rfc.predict(____)
    # Append the accuracy score for the test and train predictions.
    train_scores.append(round(____(____, ____), 2))
    test_scores.append(round(____(____, ____), 2))
# Print the train and test scores.
print("The training scores were: {}".format(____))
print("The testing scores were: {}".format(____))
Code bearbeiten und ausführen