Une forêt aléatoire entraîne en parallèle de nombreux arbres profonds sur des échantillons bootstrap avec des sous-ensembles aléatoires de variables, puis fait la moyenne, ce qui réduit surtout la variance. Le gradient boosting entraîne des arbres peu profonds en séquence, chacun ajustant les erreurs résiduelles de l'ensemble constitué jusque-là, ce qui réduit surtout le biais. Le boosting l'emporte en général sur la performance pour les données tabulaires mais demande un réglage soigneux ; les forêts sont beaucoup plus tolérantes sans réglage.
Pourquoi les recruteurs posent cette question
C'est le point de contrôle standard pour savoir si vous comprenez les ensembles de façon mécanique plutôt que comme des appels de bibliothèque. Le discriminant clé est parallèle et réducteur de variance contre séquentiel et réducteur de biais, plus la conséquence : les forêts surapprennent rarement quand on ajoute des arbres, le boosting le peut tout à fait. Les recruteurs enchaînent souvent sur le taux d'apprentissage et l'arrêt anticipé, donc soyez prêt à expliquer pourquoi un taux d'apprentissage faible avec beaucoup d'itérations bat l'inverse.
Comment structurer votre réponse
- Opposez le bagging parallèle à l'ajustement séquentiel des résidus.
- Dites quelle composante d'erreur chacun attaque.
- Notez qu'ajouter des arbres est sans risque dans une forêt et pas dans le boosting.
- Donnez votre choix par défaut et les paramètres de réglage qui comptent.
Exemple de réponse
Une forêt fait pousser beaucoup d'arbres profonds indépendamment, chacun sur un échantillon bootstrap et chacun considérant un sous-ensemble aléatoire de variables à chaque coupure, puis les moyenne. Les arbres surapprennent individuellement et sont décorrélés, donc la moyenne tue la variance. Le boosting a la forme inverse : des arbres peu profonds, construits un par un, chaque nouvel arbre ajusté aux erreurs que l'ensemble commet encore, donc il grignote le biais. La conséquence qu'on rate, c'est ce qui se passe quand on ajoute des arbres. Dans une forêt, plus d'arbres ne fait jamais vraiment de mal, ça converge. Dans le boosting, plus d'arbres finit par surapprendre, et c'est pour ça que le taux d'apprentissage et l'arrêt anticipé comptent autant. Mon choix par défaut sur des données tabulaires reste le gradient boosting, en général LightGBM ou XGBoost, avec un faible taux d'apprentissage et un arrêt anticipé sur un jeu de validation, parce que cette combinaison a battu tout le reste que j'ai essayé sur des problèmes structurés. Je prends une forêt quand je veux une base solide en dix minutes avec presque aucun réglage, ou quand je veux des estimations out of bag sans découper un jeu de validation séparé.
Vous passez cet entretien bientôt ? GhostPilot écoute votre appel en direct, repère la question dès qu'elle est posée et affiche une réponse structurée à l'écran en temps réel. Essayez-le lors de votre prochain entretien blanc, ou prenez un Session Pass à $29, sans abonnement, pour le jour J.
Voir comment ça marcheQuestions de relance à prévoir
- Pourquoi un taux d'apprentissage plus faible avec plus d'itérations généralise-t-il en général mieux ?
- Que fait le paramètre subsample dans le gradient boosting ?
- Quand un simple modèle linéaire battrait-il encore ces deux approches ?
Autres questions pour Data Scientist
Votre recruteur posera sa propre version de celle-ci. Collez votre véritable fiche de poste dans le Question Predictor gratuit et obtenez les 20 questions que ce poste a le plus de chances de poser, avec ce que chacune cherche vraiment à sonder.
Prédire mes questions