• Aucun résultat trouvé

Machine Learning avanc´e Ensemble Learning `a base d’arbres

N/A
N/A
Protected

Academic year: 2022

Partager "Machine Learning avanc´e Ensemble Learning `a base d’arbres"

Copied!
54
0
0

Texte intégral

(1)

Machine Learning avanc´ e Ensemble Learning ` a base d’arbres

Maxime Jumelle ESLSCA Big Data - MBA 2

2019 - 2020

(2)

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.

(3)

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 :

(4)

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.

(5)

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.

(6)

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.

(7)

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.

(8)

Sommaire

Cadre math´ematique

CART

Interpr´etation des arbres

Bagging : Random Forest

Boosting : GBM

Boosting : XGBoost

(9)

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.

(10)

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.

(11)

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

(12)

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.

(13)

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

(14)

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

(15)

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)

(16)

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

(17)

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.

(18)

Classification : exemple pas-` a-pas

X•1≤2 Bleu Bleu

L’arbre n’est pas assez pr´ecis avec une profondeur de1.

(19)

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.

(20)

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

(21)

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.

(22)

´ 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.

(23)

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

(24)

Lecture d’un arbre

Consid´erons l’arbre de r´egression dont la repr´esentation de la d´ecision est affich´ee en bleue.

(25)

Lecture d’un arbre

(26)

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.

(27)

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

(28)

Importance des variables

(29)

Sommaire

Cadre math´ematique

CART

Interpr´etation des arbres

Bagging : Random Forest

Boosting : GBM

Boosting : XGBoost

(30)

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.

(31)

Biais et variance

(32)

Dilemme biais-variance

Exemple d’un biais fort et d’une variance faible.

(33)

Dilemme biais-variance

Exemple d’un biais faible et d’une variance forte.

(34)

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.

(35)

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.

(36)

Sommaire

Cadre math´ematique

CART

Interpr´etation des arbres

Bagging : Random Forest

Boosting : GBM

Boosting : XGBoost

(37)

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.

(38)

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.

(39)

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.

(40)

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.

(41)

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

(42)

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.

(43)

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.

(44)

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

(45)

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−1kfk

8: end for

9: returnFK

(46)

Visualisation du mod` ele additif

(47)

Visualisation du mod` ele additif

(48)

Sommaire

Cadre math´ematique

CART

Interpr´etation des arbres

Bagging : Random Forest

Boosting : GBM

Boosting : XGBoost

(49)

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

(50)

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)

(51)

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)

(52)

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.

(53)

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 wj =−

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.

(54)

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.

Références

Documents relatifs

compter et associer une quantité à une main de comptage (1à4) consigne: compte les tigres et colle la bonne compte les tigres et colle la bonne compte les tigres et colle la bonne

[r]

consigne: trouve les cases trouve les cases trouve les cases trouve les cases ooooù ù ù ù Sambo et le tigre porte la m Sambo et le tigre porte la m Sambo et le tigre porte

consigne: donne autant de cr donne autant de cr donne autant de cr donne autant de crêêêêpes aux trois personnages de l'histoire pes aux trois personnages de l'histoire pes

consigne: repasse le titre puis essaie de l' repasse le titre puis essaie de l' repasse le titre puis essaie de l' repasse le titre puis essaie de l'éééécrire tout seul dans le

boucle d'or fait des rencontres dans la for boucle d'or fait des rencontres dans la for t, retrouve dans quel ordre.. t, retrouve dans

consigne: relie chaque couronne relie chaque couronne relie chaque couronne relie chaque couronne à à à à son ombre (avec le doigt puis avec un feutre) son ombre (avec

[r]