Machine Learning avanc´ e Ensemble Learning ` a base d’arbres
Maxime Jumelle ESLSCA Big Data - MBA 2
2019 - 2020
Arbres de d´ ecision
Parmi les mod`eles populaires enMachine Learning, les arbres de d´ecision forment une classe de mod`eles non-param´etrique pouvant d´etecter des relations non-lin´eaires entre les variables explicatives et la variable r´eponse. Les travaux des chercheurs sur les deux derni`eres d´ecennies ont montr´e qu’empiriquement, les arbres de d´ecision ´etaient bien adapt´es aux m´ethodes d’ensemble learning pour obtenir de bonnes performance sans augmenter significativement la variance.
D´ efinition
Un arbre (de d´ecision) est un syst`eme qui permet d’aboutir `a un r´esultat par une succession de r`egles math´ematiques. En fonction des possibilit´es de ces r`egles math´ematiques, les r`egles ont donc une d´ependance r´ecursive. Il est souvent commode de repr´esenter un arbre par un graphe :
D´ efinition
Un arbre (de d´ecision)binaire est un arbre qui, `a l’issue de chaque r`egle, ne peut avoir soit0 possibilit´e, soit exactement2possibilit´es.
Noeuds
On appelle chaque r`egle math´ematique unnoeud. Un noeud I est dit enfants’il est pr´ec´ed´e par un noeud ;
I est dit parents’il poss`ede deux enfants ; I est dit terminals’il ne poss`ede pas d’enfants.
Ainsi, pour chaque noeud parent, en fonction de l’issue de la r`egle math´ematique, ”on se dirige” vers un des deux enfants.
R` egle
Chaque r`egle doit ˆetred´eterministe: on doit ˆetre capable de connaˆıtre exactement l’issue en fonction d’une entr´ee xfournie. Dans le cas contraire (c’est-`a-dire probabiliste), on ne parle plus d’arbre de d´ecision mais d’arbre de probabilit´e, voir des processus de Markov discrets dans certains cas.
Dans le cas d’un arbre de d´ecision, pour un noeud non terminal, la r`egle math´ematique est une fonctionφ`a valeurs dans{0,1}. En fonction de l’issue, le prochain noeud s´electionn´e est (visuellement) celui de droite ou celui de gauche.
Si le noeud est terminal, alors on renvoie une information, tr`es souvent une valeur num´erique.
R` egle
Dans le domaine du Machine Learning, on souhaite souvent obtenir des r`egles simples, c’est-`a-dire dont le calcul est imm´ediat pour un algorithme. Le choix s’est naturellement port´e sur descoupures(ou split) selon la valeur d’une entr´eeunivari´eex. Ainsi, une r`egle se mat´erialise g´en´eralement par
φ= (x≥α)
avecα∈Rlesplit. Cette condition est ensuite tr`es facilement calculable : sixest effectivement sup´erieur `aα, l’issue de la r`egle est Vrai, sinon, l’issue estFaux.
Sommaire
Cadre math´ematique
CART
Interpr´etation des arbres
Bagging : Random Forest
Boosting : GBM
Boosting : XGBoost
CART
Unarbre de d´ecision binaireest une structure qui, par l’interm´ediaire d’une succession de r`egles binaires (`a issue positive ou n´egative) appliqu´ees `a une observation, permet d’aboutir `a une pr´ediction. Ces r`egles form´es sont des in´egalit´esX ≤α, α∈R, ce qui permet de segmenter l’espace des variables afin d’approximer la distribution
th´eorique g´en´erant les observations. La classe de fonctions des CART est FCART=
x7→wq(x)|q:Rd→T, w∈RT , o`uqrepr´esente la structure de l’arbre etT le nombre de feuilles. `A chaque nœud, l’arbre de d´ecision s´epare l’espace en deux (une partie gaucheet une partie droite) sur une variable seulement.
Apprentissage
L’optimisation des arbres de d´ecisions r´eside dans trois points : I D´eterminer sur quelle variable effectuer la coupure.
I Trouver la valeur optimale dusplit α.
I D´eterminer l’´elagage de l’arbre, c’est-`a-dire la profondeur optimale.
Cas des arbres de r´ egression
SoientRjG={x:x(j)≤α} la r´egion des observations dont la valeur de laj-`eme variable est inf´erieure `aαetRjD={x:x(j)> α}l’autre r´egion.
Pour un arbre de r´egression, la m´etrique principalement utilis´ee est la perte quadratique : dans ce contexte, le crit`ere de minimisation `a chaque nœud s’exprime par
minα∈R n
X
i=1
(yi−y)ˆ2
Cas des arbres de r´ egression
Seulement,αn’apparaˆıt pas dans la fonction de perte. Il faut donc jouer sur les indices en consid´erant d’une part les points dansRjG, et d’autre part les points dansRjD.
De plus, puisque l’on souhaite attribuer un poids `a chaque noeud, qui ici d´efinira la valeur pr´editey, nous devons introduireˆ cG etcD, que l’on interpr`ete comme ceci :
I Tous les pointsxqui appartiennent `a RjG (soit inf´erieurs `a α) auront pour valeur pr´editecG.
I Tous les pointsxqui appartiennent `a RjD (soit strictement sup´erieurs `aα) auront pour valeur pr´editecD.
Cas des arbres de r´ egression
Mais ces poids doivent aussi ˆetre optimis´es afin d’ˆetre calibr´e selon nos donn´ees. D`es lors, nous obtenons une formule beaucoup plus applicable num´eriquement
minα
min
cG∈R
1
|RjG| X
xi∈RjG
(yi−cG)2+ min
cD∈R
1
|RjD| X
xi∈RjD
(yi−cD)2
Or, pour une fonction de perte quadratique,cG etcD peuvent s’estimer directement :
ˆ
cG=E[Y|X ∈RjG] cˆD=E[Y|X∈RjD] Et donc le probl`eme se simplifie en
min
t1∈R
1
|RjG| X
xi∈RjG
(yi−cˆG)2+ 1
|RjD| X
xi∈RjD
(yi−cˆD)2
Cas des arbres de r´ egression
Preuve
On cherche `a r´esoudre le probl`eme suivant (E1) : min
c∈R
X
xi∈R
(yi−c)2
Consid´erons tout d’abord le probl`eme(E2) (E2) : min
c∈R n
X
i=1
(yi−c)2= min
c∈Rf(c)
f est convexe et d´erivable surR(car somme de fonctions carr´es), il existe donc une unique solutionc∗ au probl`eme(E2).
f0(c∗) =−2
n
X
i=1
(yi−c∗) = 0⇒ −2
n
X
i=1
yi+ 2nc∗= 0
Cas des arbres de r´ egression
Preuve
d’o`u
c∗ = 1 n
n
X
i=1
yi=E(Y)
Revenons au probl`eme(E1). La seule diff´erence est que l’on limite les observations `a la r´egionR. La solutionc˜du probl`eme(E1)s’´ecrit
˜ c= 1
n X
xi∈R
yi= 1 n
n
X
i=1
yi1{xi∈R}=E(Y|X∈R)
Cas des arbres de r´ egression
Finalement, en minimisant ´egalement parmi toutes les variables, le probl`eme d’optimisation d’un CART dans le cas d’une r´egression s’´ecrit
1≤j≤pmin min
α
1
|RGj| X
xi∈RjG
(yi−ˆcG)2+ 1
|RjD| X
xi∈RjD
(yi−cˆD)2
Classification : exemple pas-` a-pas
D´etaillons un exemple de classification binaire pas-`a-pas. On dispose :
I de nobservations (Xi1, Xi2)1≤i≤n∈R2 I des labels
(Yi)1≤i≤n∈ {Rouge,Bleu}
Pour d´ecider de la valeur de sortie du nœud, on utilise unmajority vote pour les probl`emes de classification.
Classification : exemple pas-` a-pas
X•1≤2 Bleu Bleu
L’arbre n’est pas assez pr´ecis avec une profondeur de1.
Classification : exemple pas-` a-pas
X•1≤2 X•2≤3
Bleu Rouge
X•2≤2 Rouge Bleu
La pr´ecision devient satisfaisante d`es lors que la profondeur vaut2.
Cas des arbres de classification
Pour un probl`eme de classification, il n’est plus possible d’utiliser la perte quadratique, car celle-ci n’a plus de sens. Consid´erons un probl`eme de classification multiple `aK classes. Deux m´etriques sont alors
principalement utilis´ees.
I L’impuret´e de Gini, utilis´e par l’algorithme CART.
K
X
k=1
pk(1−pk)avecpk= 1 n
n
X
i=1
1{yi=k}
I Le gain d’information, utilis´e par les algorithmes ID3, C4.5 et C5.0.
−
K
X
k=1
pklogpk
Cas des arbres de classification
De mani`ere analogue au probl`eme de r´egression, le probl`eme de minimisation pour la classification suit le mˆeme principe.
1≤j≤pmin min
α K
X
k=1
ˆ
pGk(1−pˆGk) +
K
X
k=1
ˆ
pDk(1−pˆDk)
!
avec pˆGk = 1
|RGj| X
xi∈RjG
1{yi=k} etpˆDk = 1
|RjD| X
xi∈RjD
1{yi=k}
Le probl`eme de minimisation vise `a minimiser conjointement l’impuret´e de Gini de la r´egion de gauche et de droite. Une fois calibr´e, il est facile de calculer la pr´ediction d’une nouvelle observation en ´evaluant
successivement les r`egles construites automatiquement.
´ Elagage de l’arbre
Le probl`eme d’un arbre profond est qu’il peut mener `a un ´eventuel sur-apprentissage. Ainsi, il est souvent recommand´e de p´enaliser les arbres profonds qui ne r´ealisent pas de gains importants par rapport aux arbres moins profonds. Le probl`eme de minimisation voit s’ajouter un terme de p´enalisation
1≤j≤pmin min
α
1
|RjG| X
xi∈RjG
(yi−ˆcG)2+ 1
|RjD| X
xi∈RjD
(yi−cˆD)2
+γ|T|
o`uγest un param`etre positif et|T|repr´esente le nombre de nœuds terminaux.
Valeur optimale du split
En pratique, trouver la valeur optimale du split n’est pas facile : il conviendrait de tester exactement toutes les valeurs possibles pour split et d’en
Lecture d’un arbre
Consid´erons l’arbre de r´egression dont la repr´esentation de la d´ecision est affich´ee en bleue.
Lecture d’un arbre
Importance des variables
Afin de d´eterminer quelles sont les variables ayant le plus d’impact sur la d´ecision, il convient de regarder le crit`ere de minimisation employ´e lors du split, en particulier l’impuret´e des noeuds. Pour tout noeud knon terminal, l’importance de ce noeud correspond au gain d’impuret´e gagn´e lors du split pond´er´e par les populations contenus dans les noeuds enfants.
ImportanceNoeudk =wkImpuret´ek−wleft(k)Impuret´eleft(k)−wright(k)Impuret´eright(k) o`uwk, wleft(k) etwright(k)repr´esentent la proportion d’observations
respectivement contenue dans le noeud parent, et les noeuds enfants gauche et droite.
Importance des variables
Une fois calcul´e l’importance pour chaque noeud, l’importance d’une variablejest calcul´e sur la base de tous les noeuds o`u le split est effectu´e sur laj-`eme variable.
Importancej= P
k:ksplit enjImportanceNoeudk P
kImportanceNoeudk
S’en suit une normalisation fournissant ainsi, pour chaque variable, une importance entre0 et1, facilement interpr´etable.
fj = Importancej P
mImportancem
Importance des variables
Sommaire
Cadre math´ematique
CART
Interpr´etation des arbres
Bagging : Random Forest
Boosting : GBM
Boosting : XGBoost
Notions de biais et variance
Pour un mod`elef, l’erreur commise sur une observationxi sous une fonction de perte quadratique peut se d´ecomposer en deux termes :
E[l(yi, f(xi))] = (E[f(xi)]−yi)2
| {z }
Biais(f(xi))2
+E[f(xi)−E[f(xi)]]2
| {z }
Var(f(xi))
L’´equation est appel´eed´ecomposition biais-variance.
I Lebiaisd´esigne l’´ecart moyen constat´e entre les pr´edictions du mod`ele et la variable r´eponse. Un biais ´elev´e indique que le mod`ele n’est pas apte `a pr´edire la variable r´eponse de mani`ere efficace.
Lorsque le biais tend vers0, le biais minimise les sources d’erreurs en moyenne.
I La varianceindique la dispersion du mod`ele autour de la moyenne des pr´edictions. Une variance ´elev´ee indique que le mod`ele est sensible aux petites fluctuations pr´esentes dans l’´echantillon d’apprentissage.
Biais et variance
Dilemme biais-variance
Exemple d’un biais fort et d’une variance faible.
Dilemme biais-variance
Exemple d’un biais faible et d’une variance forte.
Biais et variance
Lorsque le biais est ´elev´e, le mod`ele est ensous-apprentissage: il n’est pas robuste dans sa pr´ediction puisqu’il ne parvient pas `a pr´edire la variable r´eponse sur les observations de l’´echantillon d’entraˆınement. Le sous-apprentissage intervient lorsque les hypoth`eses sur le mod`ele (lin´earit´e, hyper-param`etres, ...) ne sont pas coh´erentes avec la population dont l’´echantillon est issu. `A l’inverse, une variance forte signifie que le mod`ele est ensur-apprentissage: le mod`ele cherche `a pr´edire le plus fid`element possible la variable r´eponse, au point d’ˆetre calibr´e de mani`ere trop forte sur l’´echantillon d’observation en apprenant les bruits. Ainsi, le mod`ele n’est plus capable de g´en´eraliser `a de nouvelles observations puisque les bruits ont un comportement par d´efinition al´eatoire.
Biais et variance
Face `a ces difficult´es, les chercheurs ont ´elabor´e de nouvelles techniques d’agr´egation afin de pouvoir contrˆoler simultan´ement les deux sources d’erreurs, le biais et la variance. Ces mod`eles forment la famille des algorithmes d’ensemble learning, o`u l’objectif est de construire une mod`ele agr´eg´e de plusieurs sous-mod`eles `a faibles pouvoir pr´edictif.
I Lebagging(contraction de bootstrap aggregating) [?,?], o`u plusieurs mod`eles `a faible pouvoir pr´edictif sont construits de mani`ereind´ependantesur des sous-´echantillons al´eatoires de l’´echantillon d’entraˆınement. Les algorithmes debagging permettent de r´eduire la variance grˆace `a l’agr´egation finale des mod`eles.
I Leboosting[?,?,?] construit r´ecursivement des mod`eles `a faible pouvoir pr´edictifs, o`u chacun ont pour objectif de corriger les erreurs commises par les mod`eles pr´ec´edents. Leboosting est aujourd’hui tr`es populaire et permet de r´eduire le biais, tout en essayant de maintenir une variance acceptable par l’interm´ediaire de termes de r´egularisation.
Sommaire
Cadre math´ematique
CART
Interpr´etation des arbres
Bagging : Random Forest
Boosting : GBM
Boosting : XGBoost
Id´ ee g´ en´ erale du boosting
Leboostingest une m´ethode d’apprentissage supervis´e qui vise `a construire un pr´edicteur (un m´eta-mod`ele)f complexe `a partir de pr´edicteursfk ditsfaibles(weak learners). Cette construction est effectu´ee par r´ecurrence, c’est-`a-dire que le pr´edicteurfk d´epends du pr´ec´edentfk−1. Un mod`ele de boosting prends la forme d’unmod`ele additif g´en´eralis´e(GAM), dont la classe de fonctions est repr´esent´e par l’ensemble
F=
f :f(x) =f0(x) +
T
X
k=1
ηkfk(x),
η1
... ηT
∈RT,
f0
... fT
∈ FWeak
Ici,FWeakrepr´esente la classe de fonctions des pr´edicteurs faibles.
Lorsque la classeFWeakrepr´esente les arbres de d´ecisions introduits pr´ec´edemment, le mod`ele de boosting est appel´etree boosting.
Id´ ee g´ en´ erale du boosting
Une des premi`eres m´ethodes fonctionnelles deboosting est apparue en 1996 avecAdaBoost[?], contraction deAdaptive Boosting. Par la suite, leGradient Boosting[?] a ´et´e propos´e en tant qu’algorithme de boosting qui g´en´eralise AdaBoost `a des fonctions de perte diff´erentiables quelconques. Enfin, initialement d´evelopp´e en C++ puis formalis´e en 2016, XGBoost [?] pour eXtreme Gradient Boosting, propose un formalisme l´eg`erement diff´erent au Gradient Boosting. Il est aujourd’hui l’un des mod`eles les plus populaires et est r´eguli`erement utilis´e par la communaut´e scientifique enMachine Learning.
Bien qu’en th´eorie, il n’y ait aucune restriction sur la nature des classifieurs faibles, les r´esultats empiriques tendent `a montrer que l’utilisation d’arbres de d´ecision `a faibles profondeurs s’accorde bien avec le boosting.
Id´ ee g´ en´ erale du boosting
Chaque pr´edicteur faiblefk poss`ede un biais ´elev´e. N´eanmoins, la m´ethode de construction du m´eta-mod`ele agr`ege les pr´edicteurs faibles sur des parties de l’espace des caract´eristiques de sorte `a aboutir `a un mod`ele ayant une performance accrue, tout en r´eduisant son biais et sa variance.
Initialement, le premier pr´edicteur faiblef0 est calibr´e sur les donn´ees d’apprentissage(xi, yi)1≤i≤n. Ensuite, chaque pr´edicteur faiblefk a pour objectif decorrigerles erreurs des pr´edicteurs faibles pr´ec´edents : cela permet d’adapter la valeur pr´edite pour les observations dont l’erreur n’a pas ´et´e minimis´ee (au sens d’une fonction de perte) par les
pr´ec´edents pr´edicteurs faibles.
Id´ ee g´ en´ erale du boosting
Cette correction s’op`ere en entraˆınant les futurs pr´edicteurs faibles non pas sur la base initiale(xi, yi)1≤i≤n, mais en consid´erant lesr´esidus h(xi) =yi−Fk−1(xi),∀1≤i≤ncomme variable r´eponse `a pr´edire.
Ainsi, les observations qui ont ´et´e correctement pr´edites jusqu’ici, auront un r´esidu nul, alors que celles qui n’ont pas ´et´e correctement pr´edites auront un r´esidu plus ou moins ´elev´e en fonction de l’erreur commise par les pr´ec´edents pr´edicteurs faibles. L’algorithme pseudo-code d´etaille le processus d’entrainement d’un m´eta-mod`ele de boosting.
Id´ ee g´ en´ erale du boosting
Algorithme 1Entraˆınement g´en´erique par boosting
1: Entr´ee :Donn´ees d’apprentissage (xi, yi)1≤i≤n, nombre d’it´erations K
2: Entraˆınement du pr´edicteur faible initial F0 =∆ f0 sur la base (xi, yi)1≤i≤n
3: fork←1to Kdo
4: Calcul des r´esidush(xi) =yi−Fk−1(xi)pour tout1≤i≤n
5: Entraˆınement du pr´edicteur faiblefk sur la base(xi, h(xi))1≤i≤n
6: Mise `a jour du m´eta-mod`ele :Fk =Fk−1+fk 7: end for
8: returnFK
La descente de gradient
Dans ses travaux, Leo Breiman [?] mentionna que leboosting peut ˆetre vu comme un algorithme d’optimisation sur une fonction de perte bien choisie. Par la suite, Jerome H. Friedman [?] proposa l’algorithme de Gradient Boosting appliqu´e `a une fonction de pertel diff´erentiable. Le termegradient fait r´ef´erence au processus d’optimisation utilis´e dans le boosting pour le calcul des r´esidus, ladescente de gradient(ou gradient descent en anglais).
La descente de gradient est un algorithme d’optimisation it´eratif du premier ordre, particuli`erement efficace pour trouver les minimums globaux sur des fonctions convexes et diff´erentiables. Soitf une fonction convexe, diff´erentiable1. L’algorithme de la descente de gradient a pour objectif de r´esoudre le probl`eme d’optimisation suivant
(E) : min
x∈R
f(x)
1. Il n’est pas obligatoire quef soit convexe, et une modification de l’algorithme permet d’´etendre au cas des fonctions sous-diff´erentiables avec les op´erateurs proximal. En revanche, sifn’est pas convexe, la descente de gradient peut converger vers un minimum local et non global.
La descente de gradient
Puisquef est convexe et diff´erentiable, il existe une unique solutionx∗ au probl`eme d’optimisation(E)v´erifiant∇f(x∗) = 0. L’objectif de la descente de gradient est de construire une suite it´erative(xk)k≥0 tel que (xk)converge versx∗.
La descente de gradient
Algorithme 2Descente de gradient
1: Entr´ee :Fonction convexe diff´erentiable f, point initial x0, nombre d’it´erations maximalimax, seuil de tol´eranceε.
2: i←1
3: whilei < imax andk∇f(x)k> εdo
4: Calcul du pas optimalηi
5: Mise `a jour de la solution approch´ee xi=xi−1−ηk∇f(xi−1)
6: i←i+ 1
7: end while
8: returnxi−1
Algorithme 3Entraˆınement par Gradient Boosting `a base d’arbres
1: Entr´ee :Donn´ees d’apprentissage (xi, yi)1≤i≤n, nombre d’it´erations K.
2: Entraˆınement du pr´edicteur faible initial F0 =∆ f0 sur la base (xi, yi)1≤i≤n
3: fork←1to Kdo
4: Calcul des pseudo-r´esidus h(xi) =−∂l(yi, g(xi))
∂g(xi) g=F
k−1
1≤i≤n
5: Entraˆınement d’un CARTfk sur la base(xi, h(xi))1≤i≤n
6: Calcul du pas d’apprentissage ηk= argmin
η n
X
i=1
l(yi, Fk−1(xi) +ηfk(xi))
7: Mise `a jour du m´eta-mod`ele :Fk =Fk−1+ηkfk
8: end for
9: returnFK
Visualisation du mod` ele additif
Visualisation du mod` ele additif
Sommaire
Cadre math´ematique
CART
Interpr´etation des arbres
Bagging : Random Forest
Boosting : GBM
Boosting : XGBoost
XGBoost
Le mod`eleXGBoost(poureXtreme Gradient Boosting) `a base d’arbres ressemble au Gradient Boosting dans sa forme, mais la construction des arbres est diff´erente. La classe de fonction candidate devient
F= (
f :f(x) =f0(x) +
T
X
k=1
ηfk(x), η∈]0,1],(f0, . . . , fT)∈ FWeak
) .
Chaque arbre construit par XGBoost est une fonction de la classeFCART. La fonction de perte du mod`ele de boosting estr´egularis´ee, c’est-`a-dire qu’une p´enalisation est ajout´ee afin de limiter le sur-apprentissage des arbres.
L=
n
X
i=1
l(yi, Fk(xi)) +
k
X
l=1
Ω(fl)avec Ω(f) =γT+1 2λkwk2
Apprentissage du XGBoost
Notons que siΩ(f) = 0, le mod`ele XGBoost est ´equivalent au Gradient Boosting dans le cadre du processus d’entraˆınement. L’utilisation du terme de r´egularisationΩvise `a s´electionner des classifieurs simples et performants. En pratique, il n’est pas possible d’optimiser la fonction objectif puisque le termeΩn´ecessite les pr´edicteurs faibles pr´ec´edents en param`etre. `A l’instar du Gradient Boosting, l’entraˆınement d’un XGBoost est r´ealis´ee de mani`ereadditive.
Notonsyˆi(t)=∆Ft(xi)la pr´ediction de l’observationxi`a lat-`eme it´eration. La fonction objectif `a minimiserL(t)adapt´ee deLs’´ecrit
L(t)=
n
X
i=1
l(yi,yˆi(t−1)+ft(xi)) + Ω(ft)
Apprentissage du XGBoost
Les termes enΩ(fl)pourl < tne d´ependent pas detet peuvent ˆetre retir´es de la fonction objectif. Sans perte de g´en´eralit´es, en supposant y7→l(·, y)de classeC2, par la formule de Taylor-Young, une
approximation du second ordre de la fonction de perte permet d’optimiser plus facilement la fonction objectif.
l(yi,yˆ(t−1)i +ft(xi)) = l(yi,yˆ(t−1)i ) + ∂
∂yˆi(t−1)
l(yi,yˆi(t−1))ft(xi) + 1
2
∂2
∂(ˆy(t−1)i )2
l(yi,yˆi(t−1))ft(xi)2+o((ft(xt)3)
Apprentissage du XGBoost
En posantgi= ∂
∂ˆy(t−1)i l(yi,yˆ(t−1)i ),hi= ∂2
∂(ˆyi(t−1))2l(yi,yˆi(t−1)), et en retirant les termes constants,L(t)se r´e´ecrit par
L(t)=
n
X
i=1
gift(xi) +1
2hift(xi)2
+1 2λ
T
X
j=1
wj2+γT.
Pour optimiser le termeΩ(fl), d´efinissonsIj ={i:q(xi) =j}l’ensemble des observations appartenant `a la feuillej. L’´equation pr´ec´edente devient
L(t)=
T
X
j=1
X
i∈Ij
gi
wj+1 2
X
i∈Ij
hi+λ
w2j
+γT.
Apprentissage du XGBoost
Tous les termes de la fonction objectif ´etant diff´erentiables
∇L(t)=
T
X
j=1
X
i∈Ij
gi
+
X
i∈Ij
hi+λ
wj
+γT,
et pour tout1≤j≤T, il existe une unique solution w∗j =−
P
i∈Ijgi P
i∈Ijhi+λ. En r´einjectant ces solutions dans la fonction objectif,
L(t)=−1 2
T
X
j=1
P
i∈Ijgi
2 P
i∈Ijhi+λ+γT.
Apprentissage du XGBoost
En th´eorie, l’´equation pr´ec´edente permettrait d’´evaluer la qualit´e de la structure d’arbre construite. Mais cette m´ethode n´ecessite des temps de calcul bien trop ´elev´es : `a l’instar de l’algorithme CART, les branches des arbres (les classifieurs faibles) sont construites de mani`ere it´erative. En notantRG etRD les observations situ´ees respectivement `a gauche et `a droite dusplit d’un nœud, la fonction objectif permettant de d´eterminer lesplit optimal est
Lsplit =1 2
" P
i∈RGgi2 P
i∈RGhi+λ+ P
i∈RDgi2 P
i∈RDhi+λ− P
i∈Rgi
2
P
i∈Rhi+λ
#
−γ,
avecR=RG∪RDl’ensemble des observations du nœud o`u effectuer le split.