Bootstrap aggregating
En intelligence artificielle, plus précisément en apprentissage automatique, le bootstrap aggregating, également appelé bagging (de bootstrap aggregating), est une méthode d'apprentissage introduite par Breiman en 1994. Il repose sur le principe de la sagesse des foules : l'idée est d'apprendre plusieurs classifieurs puis de produire un classifieur final en faisant un vote majoritaire. Par exemple, si on a trois classifieurs et que ils disent "c'est un chat", "ce n'est pas un chat", "c'est un chat", alors le classifieur final répond que "c'est un chat". Vu que le bagging combine les prédictions de plusieurs classifieurs, c'est un cas particulier de l'approche d'apprentissage ensembliste.

Le bagging est généralement appliqué avec un algorithme d'apprentissage d'arbres de décision : cela donne l'algorithme des forêts aléatoires. Mais il peut en fait être utilisé avec n'importe quel algorithme d'apprentissage pour produire les classfieurs intermédiaires : on dit que c'est un meta-algorithme.. 

Le classifieur final est plus précis qu'un classifieur obtenu à partir d'un algorithme d'apprentissage : le bagging améliore la stabilité et la précision. Le bagging réduit la variance et permet d'éviter le surapprentissage.

Description de la méthode 

Considérons un ensemble d'entraînement standard  de taille . La méthode est composée de trois étapes.

 Le bagging commence par générer  nouveaux ensembles d'entraînement , chacun de taille , par échantillonnage uniforme et avec remise à partir de . En échantillonnant avec remplacement, certaines observations peuvent être répétées dans chaque  . Si , alors pour  grand, l'ensemble  tend à avoir la fraction  (≈63,2%) d'exemples uniques de , le reste étant des doublons. Ce type d'échantillon est appelé échantillon de bootstrap.
 Ensuite,  modèles sont entraînés pour chacun des  ensembles d'échantillons de bootstrap.
 Pour finir, la prédiction du meta-modèle est obtenue en faisant la moyenne de la sortie (pour la régression) ou par vote de majorité (pour la classification) des  modèles.

Résultats et applications 
Le bagging conduit à des «améliorations pour les procédures instables» (Breiman, 1996), qui incluent, par exemple, les réseaux de neurones artificiels, les arbres de décision et la sélection de sous-ensembles en régression linéaire (Breiman, 1994). Le bagging peut-être appliqué à la réduction de bruit au cours du pre-processing de données, avec une amélioration de l'apprentissage .

D'un autre côté, le bagging peut légèrement dégrader les performances de méthodes stables telles que les K-plus proches voisins (Breiman, 1996).

Exemple : données sur l'ozone 
L'exemple suivant illustre les principes de base du principe de bagging, sur une analyse de la relation entre l'ozone et la température (données de Rousseeuw et Leroy (1986), analyse effectuée en R).

La relation entre la température et l'ozone dans cet ensemble de données est apparemment non linéaire. Pour décrire mathématiquement cette relation, des lisseurs LOESS (avec une bande passante de 0,5) sont utilisés. Au lieu de créer un seul lissage à partir de l'ensemble de données complet, 100 échantillons bootstrap des données ont été tirés. Chaque échantillon est différent de l'ensemble de données d'origine, mais lui ressemble en termes de distribution et de variabilité. Un lisseur LOESS est ajusté pour chaque échantillon de bootstrap. Des prédictions à partir de ces 100 lisseurs ont ensuite été faites sur l'ensemble des données. Les 10 premiers ajustements lisses prévus apparaissent sous forme de lignes grises dans la figure ci-dessous. On remarque que les lignes grises sont saccadées et sur-apprennent les données.

En prenant la moyenne de 100 lissages, chacun ajusté à un sous-ensemble de l'ensemble de données d'origine, on obtient un meta-estimateur (ligne rouge). Cet estimateur est plus stable et il y a moins de surapprentissage.

Histoire 
Le bagging (bootstrap aggregating) a été proposé par Leo Breiman en 1994 pour améliorer la classification en combinant des classifications d'ensembles d'entraînement générés aléatoirement.

Articles connexes 

 Boosting (méta-algorithme) 
 Bootstrapping (statistiques) 
 Validation croisée (statistiques) 
 Forêt aléatoire 
 Random subspace method (attribute bagging)

Notes et références

Voir aussi 
 .
 .

Apprentissage automatique