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
Anleitung zur Übung
- Sage in jeder Schleife Werte sowohl für die Datensätze
X_trainals auchX_testvoraus. - Hänge in jeder Schleife den
accuracy_score()des Datensatzesy_trainund der entsprechenden Vorhersagen antrain_scoresan. - Hänge in jeder Schleife den
accuracy_score()des Datensatzesy_testund der entsprechenden Vorhersagen antest_scoresan. - 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(____))