Skip to content

Commit

Permalink
Amélioration procédure
Browse files Browse the repository at this point in the history
  • Loading branch information
oliviermeslin committed Nov 27, 2024
1 parent 15b4570 commit 2ca54a9
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions chapters/chapter3/2-guide_usage_RF.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -88,11 +88,12 @@ La littérature propose de multiples approches pour optimiser simultanément plu

Voici une procédure simple pour entraîner une forêt aléatoire. Elle ne garantit pas l'obtention d'un modèle optimal, mais elle est lisible et permet d'obtenir rapidement un modèle raisonnablement performant.

- __Commencer par entraîner une forêt aléatoire avec les valeurs des hyperparamètres par défaut__. Ce premier modèle servira de point de comparaison pour la suite.
- __Entraîner une forêt aléatoire avec les valeurs des hyperparamètres par défaut__. Ce premier modèle servira de point de comparaison pour la suite.
- __Ajuster le nombre d’arbres__: entraîner une forêt aléatoire avec les hyperparamètres par défaut en augmentant progressivement le nombre d'arbres, puis déterminer à partir de quel nombre d'arbres la performance se stabilise (en mesurant la performance avec l'erreur OOB avec pour métrique le [score de Brier](https://scikit-learn.org/dev/modules/model_evaluation.html#brier-score-loss)). Fixer le nombre d'arbres à cette valeur par la suite.
- __Ajuster le nombre minimal d'observations dans les noeuds terminaux__: optimiser cet hyperparamètre grâce à une méthode de _grid search_ évaluée par une approche de validation-croisée, ou par une approche reposant sur l'erreur OOB. Ce n'est pas l'hyperparamètre le plus important, mais il est utile de vérifier s'il est possible de le fixer à une valeur plus élevée que la valeur par défaut sans perte de performance, car cela permet d'accélérer le reste de la procédure.
- __Ajuster le nombre de variables candidates et le taux d'échantillonnage__: optimiser ces deux hyperparamètres grâce à une méthode de _grid search_ évaluée par une approche de validation-croisée, ou par une approche reposant sur l'erreur OOB.
- __Evaluation du modèle final__: mesurer la performance du modèle final soit avec l'approche Out-of-Bag (OOB), soit avec un ensemble de test. Il est souvent instructif de comparer les performances du modèle final et du modèle entraîné avec les valeurs des hyperparamètres par défaut (parfois pour se rendre compte que ce dernier était déjà suffisamment performant...).
- __Ajuster le nombre minimal d'observations dans les noeuds terminaux__: optimiser cet hyperparamètre grâce à une méthode de _grid search_ évaluée par une approche de validation-croisée, ou par une approche reposant sur l'erreur OOB. Ce n'est pas l'hyperparamètre le plus important, mais s'il est possible de le fixer à une valeur plus élevée que la valeur par défaut sans perte de performance, cela permet d'accélérer le reste de la procédure.
- __Entraîner du modèle final__: entraîner une forêt aléatoire avec les hyperparamètres optimisés déduits des étapes précédentes.
- __Évaluer du modèle final__: mesurer la performance du modèle final soit avec l'approche _out-of-bag_ (OOB), soit avec un ensemble de test. Il est souvent instructif de comparer les performances du modèle final et du modèle entraîné avec les valeurs des hyperparamètres par défaut (parfois pour se rendre compte que ce dernier était déjà suffisamment performant...).

### Approches plus avancées

Expand Down

0 comments on commit 2ca54a9

Please sign in to comment.