mercredi 4 mai 2016

Gradient boosting avec R et Python

Ce tutoriel fait suite au support de cours consacré au « Gradient Boosting ». Il vient également en complément des supports et tutoriels pour les techniques de bagging, random forest et boosting mis en ligne précédemment (novembre 2015).

La trame sera très classique : après avoir importé les données préalablement scindées en deux fichiers (apprentissage et test), nous construisons les modèles prédictifs et nous les évaluons. Le critère taux d’erreur en test est privilégié pour comparer les performances.

La question du paramétrage, particulièrement délicate dans le cadre du gradient boosting, est étudiée. En effet, ils sont nombreux, et leur influence est considérable. Malheureusement, si l’on devine à peu près les pistes à explorer pour améliorer la qualité des modèles (plus ou moins "coller" à l’échantillon d’apprentissage c.-à-d. plus ou moins régulariser), identifier avec exactitude les paramètres à manipuler et fixer les bonnes valeurs relèvent un peu de la boule de cristal, surtout lorsqu’ils interagissent entre eux. Ici, plus que pour d’autres méthodes de machine learning, la stratégie essai-erreur prend beaucoup d'importance.

Nous utiliserons R et Python, avec les packages dédiés, dans ce tutoriel.

Mots clés : logiciel R, programmation R, arbre de décision, adabag package, rpart package, Python, scikit-learn package, boosting, random forest
Lien : Gradient boosting
Fichier : gradient_boosting.zip
Références :
R. Rakotomalala, "Gradient boosting - Diapos", avril 2016.
R. Rakotomalala, "Bagging, Random Forest, Boosting - Diapos", novembre 2015.