• Aucun résultat trouvé

7.2.1 Généralités et principe

Les forêts aléatoires développées par Breiman (2001)[9] sont une collection d’arbres binaires de

régres-sion ou de décirégres-sions Ak, k = 1, ..., K. Chaque arbre Akest construit sur un des K échantillons bootstrap

de l’échantillon d’apprentissage initial. Chaque arbre est construit selon les mêmes règles que celles de la méthode CART. L’ensemble des K arbres ainsi obtenus sont agrégés pour former une forêt aléatoire. Le modèle agrégé de prévision optimale est obtenu par le calcul de la moyenne des prévisions de la variable dépendante sur les K arbres des échantillons bootstrap (cas de régression). Les forêts aléatoires présentent quelques spécificités dont les plus importantes sont :

• Dans la procédure de construction des arbres, à chaque nœud, un faible nombre de variables est tiré aléatoirement et la recherche de la division optimale est basée uniquement sur ce sous-ensemble de variables.

7.2. FORÊTS ALÉATOIRES (FA) 103 • Les arbres construits sur les échantillons bootstrap ne sont pas optimisés, en effet, ils ne sont pas

élagués, donc maximaux.

• Pour chaque arbre, une partie de l’échantillon est mise de côté. Elle est appelée « Out-Of-Bag sample » notée OOB. Cette partie de l’échantillon d’apprentissage (il s’agit de l’échantillon bootstrap) non uti-lisée pour la construction de l’arbre sert en effet, à l’évaluation de l’importance des variables utiuti-lisées sur cet arbre.

• L’introduction du tirage aléatoire sur l’ensemble des variables explicatives permet d’éviter de voir ap-paraître toujours les mêmes variables. Il s’agit d’une double randomisation et on parle alors de forêts aléatoires.

Selon la règle de décision, il existe deux versions des forêts aléatoires : Le « Random Input » où la règle de décision porte sur une seule des variables explicatives tirées au hasard, et l’autre connu sous « Random Features » qui utilise une combinaison linéaire des variables sélectionnées à chaque nœud, avec des coeffi-cients tirés aussi aléatoirement.

Les procédures mises en œuvre dans la modélisation par les forêts aléatoires présentent un certain nombre d’avantages. Elles nécessitent peu de paramètres à régler et utilisent les variables explicatives conti-nues et discrètes pour des problèmes de classification et de régression. Les arbres obtenus ne sont pas instables comme ceux fournis par la méthode CART. La procédure de choix aléatoire des variables expli-catives à tester lors de la division en chaque nœud de l’arbre bootstrap permet de donner aux variables importantes cachées dans la méthode CART, des rôles plus actifs dans la construction des arbres individuels issus des échantillons bootstrap. Par ailleurs, deux propriétés essentielles expliquent les performances des forêts aléatoires :

• La bonne performance des arbres individuels qui ont un faible biais mais une forte variance, et la faible corrélation entre les arbres de la forêt. La corrélation entre arbres est définie comme celle de leurs prévisions sur les échantillons tests OOB.

• Le fait qu’un faible nombre de variables soit utilisé à chaque nœud des arbres construits, permet de réduire la complexité algorithmique.

Les forêts aléatoires présentent en revanche, un certain nombre d’inconvénients : Le temps de calcul est important pour évaluer un nombre suffisant d’arbres jusqu’à ce que l’erreur de prévision OOB ou sur un échantillon de validation se stabilise et la procédure s’arrête si elle tend à augmenter. Il est nécessaire de sto-cker tous les modèles de la combinaison afin de pouvoir utiliser cet outil de prévision pour la généralisation. L’amélioration de la qualité de prévision se fait au détriment de l’interprétabilité, ainsi le modèle finalement obtenu devient une « boite noire ».

7.2.2 Quelques caractéristiques des FA

Les forêts aléatoires dépendent de trois principaux paramètres :

• Le nombre d’arbres générés à partir des échantillons bootstrap que nous notons ntree.

• Le nombre de variables testées à chaque nœud d’un arbre pour la recherche de la division optimale que nous notons mtry.

• Enfin, le nombre minimal d’observations dans un nœud terminal.

Dans les forêts aléatoires, un nœud est déclaré terminal si le nombre d’observations qu’il contient est inférieur à un nombre minimal fixé. Breiman (2001) suggère qu’en classification, le nombre de variables testées pour chaque nœud d’un arbre est égal à √p, où p est le nombre initial de variables explicatives. Cette

valeur proposée par Breiman a été confirmée par d’autres travaux. Liaw et al. (2002) [45], Diaz-Uriarte et al.

(2006) [24] ont montré l’optimalité de cette valeur en terme de performance des forêts sur les échantillons

tests OOB. Pour la régression, ce nombre est approximativement p

3. Une forte diminution de ce paramètre

réduit les chances que des variables importantes soient sélectionnées dans les arbres individuels, et peut

ainsi dégrader les performances des forêts. Ghattas et al. (2008)[5] ont observé en étudiant les données de

Biopuces que l’importance des variables dans les forêts aléatoires est :

• Insensible à la nature du réechantillonnage utilisé, l’échantillon bootstrap avec ou sans remise, • Stable en présence de variables explicatives corrélées,

• Invariante vis-à-vis de la normalisation (par exemple : division par l’écart-type), • Stable vis-à-vis de faibles perturbabtions des données.

Les forêts aléatoires fournissent alors un moyen original de calcul d’un indice d’importance pour la hiérar-chisation des variables explicatives.

7.2.3 Représentativité d’un échantillon bootstrap par rapport à l’échantillon initial

Dans une procédure d’échantillonnage bootstrap, il n’est pas certain que chaque observation de l’échan-tillon initial appartienne à l’échanl’échan-tillon bootstrap. En effet, une observation de l’échanl’échan-tillon initial de taille

n appartient à un échantillon bootstrap avec une probabilité estimée à0.633 :

En effet, à chaque tirage (avec remise), chaque observation a la probabilité 1

n d’être sélectionnée. Ainsi,



1−n1

n

est la probabilité pour qu’une observation soit sélectionnée zéro fois à l’issue de n tirages aléa-toires. Quand n est suffisamment grand, une observation (obs.i) appartient à l’échantillon bootstrap avec la probabilité P(obs.i) définie par :

P(obs.i) = 1−



1−n1

n

7.2. FORÊTS ALÉATOIRES (FA) 105

7.2.4 Algorithme

Pour un échantillon d’apprentissage donné, cet algorithme a pour but de construire par agrégation de plu-sieurs arbres de régression, une estimation de la variable dépendante en fonction des variables explicatives. Il se présente comme suit :

Considérons un échantillon initial Z = (X,Y) = ((Xi,Yi),...,(Xp,Yp)), mo est la valeur de la variable

dépendante Y à estimer à partir de Z par la méthode des forêts aléatoires. bθZ(mo) est l’estimation de mosur

l’échantillon Z. Pour k = 1, ..., K ; bθZk(mo) est l’estimation de mosur l’échantillon Zk, Ak est l’arbre de

régression de Zktel que Ak= (Fkj)(1≤j≤Jk). Les Fkjsont des nœuds terminaux de Aket Jkest le nombre

de classes de la partition formée par ces nœuds.

Pour k=1,. . . ,K, Tirer : un échantillon bootstrap Zkde l’échantillon Z,

Estimer : un arbre de régression sur cet échantillon par la méthode CART,

Initialiser le nombre de nœuds : Nk= 1,

Tirer : q variables explicatives avec q ≤ p,

Chercher : la division optimale d∗

Nkpour ce nœud à partir des q variables,

S’il existe un nœud fils qui admet une division admissible :

Nk= Nk+ 1,

Tirer à nouveau q variables et chercher la division optimale sur ce nœud fils à partir de ces q variables, Sinon l’arbre est estimé et s’écrit :

Ak= (Fkj)(1≤j≤Jk)tel que Fkj⊂ Rq,

Calculer bθZk(mo) sur les nœuds terminaux de l’arbre Ak:

Comme dans la méthode CART, déterminer les coefficients mokjsur l’arbre Akpar la régression :

b mokj=Card(F1 kj) P yi∈Fkjyi, b θZk(mo) = bmokj (1≤j≤Jk),

Calculer le modèle de régression pour l’arbre Ak,

Mk(X) =PJk

j=1mbokj1{X∈Fkj},

Calculer l’estimation moyenne de mosur les K arbres :

b θZ(mo) = 1 K PK k=1θbZk(mo), Fin pour.