CommencerCommencez gratuitement

Essayez différentes profondeurs maximales

Nous voulons toujours optimiser nos modèles de Machine Learning pour obtenir les meilleures prédictions possible. Nous pouvons le faire en ajustant les hyperparamètres, c'est-à-dire les réglages de nos modèles. Nous verrons plus en détail leur utilité dans les chapitres suivants, mais pour l'instant, considérez-les comme des curseurs que l'on peut déplacer pour améliorer au maximum nos prédictions.

Pour les arbres de décision classiques, l'hyperparamètre probablement le plus important est max_depth. Il limite le nombre de divisions dans un arbre de décision. Cherchons la meilleure valeur de max_depth en nous basant sur le score R\(^2\) de notre modèle sur l'ensemble de test, que l'on peut obtenir grâce à la méthode score() de nos modèles d'arbres de décision.

Cet exercice fait partie du cours

<cours>Machine Learning pour la finance en Python</cours>
Voir le cours

Instructions de l’exercice

  • Itérez sur les valeurs 3, 5 et 10 à utiliser comme paramètre max_depth dans notre modèle d'arbre de décision.
  • Définissez le paramètre max_depth de notre DecisionTreeRegressor égal à d à chaque itération de la boucle.
  • Affichez le score du modèle sur train_features et train_targets.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# 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')
Modifier et exécuter le code