Probiere verschiedene maximale Tiefen aus
Wir wollen unsere Machine-Learning-Modelle immer so optimieren, dass sie möglichst gute Vorhersagen machen. Das gelingt durch das Tuning von Hyperparametern, also Einstellungen unserer Modelle. Im weiteren Kursverlauf sehen wir genauer, wie nützlich sie sind; fürs Erste kannst du sie dir als Regler vorstellen, mit denen wir unsere Vorhersagen so gut wie möglich abstimmen.
Bei klassischen Entscheidungsbäumen ist der wohl wichtigste Hyperparameter max_depth. Er begrenzt die Anzahl der Splits in einem Entscheidungsbaum. Finde den besten Wert für max_depth basierend auf dem R\(^2\)-Score unseres Modells auf dem Test-Set. Den erhalten wir mit der Methode score() unserer Entscheidungsbaum-Modelle.
Diese Übung ist Teil des Kurses
<Kurs>Maschinelles Lernen für Finanzen in Python</Kurs>Übungsanweisungen
- Iteriere über die Werte 3, 5 und 10 und nutze sie als
max_depth-Parameter für unser Entscheidungsbaum-Modell. - Setze in jeder Schleifeniteration den Parameter
max_depthin unserem DecisionTreeRegressor gleichd. - Gib den Score des Modells auf
train_featuresundtrain_targetsaus.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# Loop through a few different max depths and check the performance
for d in [____]:
# Create the tree and fit it
decision_tree = DecisionTreeRegressor(____)
decision_tree.fit(train_features, train_targets)
# Print out the scores on train and test
print('max_depth=', str(d))
print(decision_tree.score(____))
print(decision_tree.score(test_features, test_targets), '\n')