CommencezCommencez gratuitement

Essayer différentes profondeurs maximales

Nous voulons toujours optimiser nos modèles de Machine Learning pour obtenir les meilleures prédictions possibles. Nous pouvons y arriver en ajustant des hyperparamètres, c'est‑à‑dire des réglages de nos modèles. Nous verrons plus en détail leur utilité dans les prochains chapitres, mais pour l'instant, voyez-les comme des boutons que l'on peut tourner pour améliorer la qualité de nos prédictions.

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

Cette activité fait partie du cours

Machine Learning pour la finance en Python

Voir le cours

Instructions de l’exercice

  • Parcourez 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 pour qu'il soit é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