A. Cornuéjols IAA (basé sur Rob Schapires IJCAI99 talk) Combiner des apprenants: le boosting
Boosting 2 Prédiction de courses hippiques
Boosting 3 Comment gagner aux courses ? On interroge des parieurs professionnels Supposons: –Que les professionnels ne puissent pas fournir une règle de pari simple et performante –Mais que face à des cas de courses, ils puissent toujours produire des règles un peu meilleures que le hasard Pouvons-nous devenir riche?
Boosting 4 Idée Demander à lexpert des heuristiques Recueillir un ensemble de cas pour lesquels ces heuristiques échouent (cas difficiles) Ré-interroger lexpert pour quil fournisse des heuristiques pour les cas difficiles Et ainsi de suite… Combiner toutes ces heuristiques Un expert peut aussi bien être un algorithme dapprentissage peu performant (weak learner)
Boosting 5 Questions Comment choisir les courses à chaque étape? å Se concentrer sur les courses les plus difficiles (celles sur lesquelles les heuristiques précédentes sont les moins performantes) Comment combiner les heuristiques (règles de prédiction) en une seule règle de prédiction ? å Prendre une vote (pondéré) majoritaire de ces règles
Boosting 6 Boosting boosting boosting = méthode générale pour convertir des règles de prédiction peu performantes en une règle de prédiction (très) performante Plus précisément : –Étant donné un algorithme dapprentissage faible qui peut toujours retourner une hypothèse de taux derreur 1/2- –Un algorithme de boosting peut construire (de manière prouvée) une règle de décision (hypothèse) de taux derreur
Boosting 7 Soit X un espace dentrée à 10 dimensions Les attributs sont indépendants et de distribution gaussienne Létiquette est définie par : 2000 exemples dapprentissages (1000+;1000-) exemples de test Apprentissage darbres de décision Illustration avec :
Boosting 8 Illustration (cont.) 0,5 0,4 0,3 0,2 0,1 0, Arbre à un noeud Arbre à 400 noeuds Arbres à un nœud avec boosting
Boosting 9 Plan Introduction au boosting (AdaBoost) Expériences Conclusion Analyse de lerreur en apprentissage Analyse de lerreur en généralisation basée sur la théorie des marges Extensions Bibliographie
Boosting 10 Étant donné léchantillon dapprentissage S = {(x 1,y 1 ),…,(x m,y m )} y i { } étiquette de lexemple x i S Pour t = 1,…,T : Construire la distribution D t sur {1,…,m} Trouver lhypothese faible (heuristique) h t : S { } avec erreur petite t sur D t : Retourner lhypothèse finale h final Boosting : vue formelle
Boosting 11 Le principe général X h0h0 D0D0 X h1h1 D1D1 X h2h2 D2D2 X hThT DTDT Comment passer de D t à D t+1 ? Comment calculer la pondération t ?
Boosting 12 AdaBoost [Freund&Schapire 97] construire D t : Étant donnée D t et h t : où: Z t = constante de normalisation Hypothèse finale :
Boosting 13 AdaBoost en plus gros
Boosting 14 Exemple jouet
Boosting 15 Étape 1
Boosting 16 Étape 2
Boosting 17 Étape 3
Boosting 18 Hypothèse finale
Boosting 19 Une Applet Boosting
Boosting 20 Avantages pratiques de AdaBoost (très) rapide simple + facile à programmer Une seul paramètre à régler : le nombre détapes de boosting (T) Applicable à de nombreux domaines par un bon choix de classifieur faible (neuro net, C4.5, …) Pas de sur-spécialisation par la maximisation des marges Peut être adapté au cas où h t : X R ; la classe est définie par le signe de h t (x) ; la confiance est donnée par | h t (x) | Peut être adapté aux problèmes multi-classes où y i {1,..,c} et aux problèmes multi-étiquettes Permet de trouver les exemples aberrants (outliers)