E
RREUR DE PRÉDICTIONC
HOIX DE MODÈLES ET MESURE DE PERFORMANCEJulie Scholler - Bureau B246
février 2019
M Éc E n
I. Introduction
Introduction
La performance du modèle issu d’une méthode d’apprentissage s’évalue par sa capacité de prédiction. La mesure de l’erreur de prédiction est très importante.
L’erreur de prédiction
• permet d’opérer une sélection de modèles dans une famille associée à la méthode d’apprentissage
• guide le choix de modèles en comparant chacun des modèles sélectionnés à l’étape précédente
• fournit, tous choix faits, une mesure de la qualité ou de la confiance à accorder à la prévision
Situation
• Y : variable à prédire (ou expliquer)
• X = (X1,X2, . . . ,Xp) : variables explicatives ou prédicteurs
• Y = f(X) +ε : modèle à estimer, avec ε le terme d’erreur (E(ε) = 0, indépendant de X)
Modèle
échantillon de taille n ⇒ un modèle de prédiction bfn Erreur de prédiction
Err = E
1Y6=
bf(X)
ou 1 N
X
ω∈Ωpop
1Y(ω)6=
bfn(X(ω))
Problème : on ne dispose pas de la loi de (Y,X) ou de toute la population.
Comment estimer l’erreur de prédiction ?
II. Erreur de resubstitution
Erreur de resubstitution
Échantillon observé : (xi)i=1,...,n et (y)i=1,...,n
Erreur de resubstitution ou qualité d’ajustement sur l’échantillon observé ou erreur en apprentissage ou erreur apparente
Edrr(appr) = 1 n
n
X
i=1
1yi6=
bfn(xi)
II. Erreur de resubstitution
Erreur de resubstitution
Problèmes
• estimation biaisée : biais d’optimisme
• dépend des caractéristiques du classifieur, complexité, sur-ajustement
• plus un point influe sur sa propre affectation, plus le biais d’optimisme sera élevé (knn-1 : 0% d’erreur de resubstitution)
• ne dépend que de la partie biais de l’erreur de prédiction
II. Erreur de resubstitution
Solutions
Stratégies pour palier ce biais d’optimisme
• pénalisation de l’erreur de resubstitution par la complexité du modèle
• partage de l’échantillon (apprentissage, validation, test) afin de distinguer estimation du modèle et estimations de l’erreur de prédiction
• usage intensif du calcul par la mise en œuvre de simulations Facteurs de choix
• taille de l’échantillon initial
• situation paramétrique ou non
• complexité des algorithmes, volume de calcul admissible
Pénalisation de l’erreur de resubstitution
Idée
• estimer l’optimisme de l’estimateur précédent
• corriger ce biais en ajoutant une pénalité
• pénalité liée à la variance et la complexité du modèle Exemples
• Cp de Mallows
• critère d’information d’Akaike : AIC
• critère bayésien d’information : BIC Inconvénient
• uniquement utilisable en situation paramétrique
III. Partage de l’échantillon
Partage de l’échantillon
Idée
• dissocier les données servant à construire le modèle de celles servant à l’évaluer
• calculer Edrr sur un échantillon indépendant de celui ayant servi à l’estimation du modèle
Découpage des données : D = Dappr ∪ Dtest
• Dappr : utilisé pour estimer bf
• Dtest : utilisé pour estimer l’erreur de prédiction : Edrr(test)
III. Partage de l’échantillon
Remarques
• estimation non biaisée de l’erreur de prédiction du modèle construit
• estimation biaisée de l’erreur de prédiction du modèle construit sur l’ensemble de l’échantillon (modèle testé de moins bonne qualité que le modèle final)
• variance de l’estimateur peut être importante et ne peut être estimée
Compromis biais-variance
• plus l’échantillon de test est grand, plus l’estimation est précise (variance faible)
• plus l’échantillon est grand, plus l’estimation est biaisée
III. Partage de l’échantillon
Modification de la taille de l’échantillon de test avec comme taille de l’échantillon d’apprentissage : 5000
et pour méthode : analyse discriminante linéaire
10 100 1000 5000
0.00.20.40.6
Modification de la taille de l’échantillon de test avec comme taille de l’échantillon d’apprentissage : 5000
et pour méthode 3-plus proches voisins
10 100 1000 5000
0.000.020.040.06
III. Partage de l’échantillon
Modification du ratio de la taille
de l’échantillon d’apprentissage sur la taille de l’échantillon de test pour la méthode 3-plus proches voisins
4900-100 4500-500 4000-1000 2500-2500
0.000.010.020.030.04
III. Partage de l’échantillon
Partage d’échantillon et choix de modèle
Découpage des données : D = Dappr ∪ Dvalid ∪ Dtest
• Dappr : utilisé pour estimer bf
• Dvalid : utilisé pour comparer des modèles au sein d’une famille afin d’en choisir un minimisant cette erreur
• Dtest : utilisé pour comparer entre eux les meilleurs modèles de chacune des méthodes considérées
IV. Simulations d’échantillons
Simulations d’échantillons
Idée
• itérer l’estimation de l’erreur sur plusieurs échantillons construits par rééchantillonnage
• calculer la moyenne des estimations obtenues Gains
• réduction de la variance
• amélioration de la précision lorsque la taille initiale de l’échantillon est trop réduite
Rééchantillonnage
• Méthodes basées sur de nouveaux échantillons construits à partir de l’échantillon initial
• Mise en place
• Création des nouveaux échantillons grâce à des simulations informatiques
• analyse de ces « nouvelles » données pour « raffiner » l’inférence
• Utilisation classiques
• estimation d’un IC sans hypothèse sur la famille de lois
• validation d’un modèle de prédiction
• Différentes méthodes et historique
• Validation croisée : 1948
• Jackknife par Quenouille et Tukey : 1958
• Bootstrap par Efron : 1979
IV. Simulations d’échantillons
Validation croisée
Algorithme
• découper aléatoirement uniformément l’échantillon en K blocs de tailles égales ou proches
• pour chaque k = 1, . . . ,K :
• mettre de côté le ke bloc
• construire le modèle à partir des données des k −1 blocs restants
• calculer l’erreur sur chacune des observations n’ayant pas participé à la construction du modèle
• faire la moyenne des toutes ces erreurs pour aboutir à l’estimation par validation croisée de l’erreur de prédiction
IV. Simulations d’échantillons
Fonction d’indexation (aléatoire)
τ : {1, . . . ,n} → {1, . . . ,K}
telle que, pour tout k dans {1, . . . ,K}, les ensembles τ−1(k) soient de tailles égales ou proches
Estimation de l’erreur de prédiction
Edrr(CV) = 1 n
n
X
i=1
1yi6=
bf(−τ(i))(xi)
avec bf(−k) estimation de f sur les données privées du ke bloc
IV. Simulations d’échantillons
Choix de K
Cas où K = n dit Leave One Out (LOOCV) : Edrr(LOOCV)
• biais très faible : chaque échantillon d’apprentissage est de taille n − 1
• très coûteux en temps de calcul (sauf situation particulière)
• variance très importante car on fait la moyenne d’estimations calculées sur n modèles entraînés sur des échantillons
quasiment identiques Cas où K < n
• plus K est petit, plus le biais est grand
• plus K est petit, plus la variance est faible Compromis biais-variance : K entre 5 et 10
Estimation de l’erreur de prédiction par validation croisée pour différentes valeurs de K
2 3 4 5 6 7 8 9 10 11 12 13 14 15
0.0060.0080.0100.012
IV. Simulations d’échantillons
Utilisation classique de la validation croisée
Choix d’un paramètre optimal au sein d’une famille de modèle bf
bλ = argmin
λ
Edrrλ(CV)
IV. Simulations d’échantillons
Choix du paramètre k pour le modèle des k plus proches voisins par validation croisée
5 10 15 20
0.00700.0085
erreur
5 10 15 20
0.00600.0080
erreur
IV. Simulations d’échantillons
Exemple de mauvaise utilisation
Scénario
• échantillon de taille n = 50
• deux classes de tailles équivalentes
• p = 500 prédicteurs de loi N(0; 1) indépendants entre eux et indépendants des classes à prédire
Procédure
• Étape 1 : choix des prédicteurs les plus corrélés
• Étape 2 : estimation de l’erreur de prédiction par méthode de validation croisée du modèle 1-nearest neighbors
50 simulations de ce procédé : moyenne du taux d’erreur de 3%
Véritable erreur de prédiction : 50%
Exemple de mauvaise utilisation
Problème : les prédicteurs choisis ont un avantage injuste, ils ont été choisis en considérant toutes les données.
Bonne façon de procéder :
• on divise l’échantillon en K sous-groupes aléatoirement
• pour chaque k entre 1 et K
• on choisit un bon sous ensemble de prédicteur en n’utilisant pas le groupe k
• on construit le modèle sans le groupe k
• on effectue les prédictions sur le groupe k
• on calcule l’erreur de prédiction sur le groupe k
• on effectue la moyenne des erreurs calculées
IV. Simulations d’échantillons
De la bonne utilisation de la validation croisée
Quand une procédure nécessite plusieurs étapes de construction, la validation croisée doit s’appliquer à toute la suite d’étapes.
IV. Simulations d’échantillons
Bootstrap
Principe
• création de nouveaux échantillons par tirage aléatoire avec remise parmi l’échantillon initial
• création d’un modèle sur chacun de ces nouveaux échantillons
• utilisation de ces modèles pour estimer l’erreur de prédiction
IV. Simulations d’échantillons
Population complète
échantillon initial de taille n
1 2 3 4 B ... B
échantillons bootstrap
estimations bootstrap de f
→bf1∗
→bf2∗
→bf3∗
→bf4∗
→bfB∗
Bootstrap
Algorithme
répéter B fois (on parle de réplications)
• tirage avec remise d’un échantillon de taille n : Ωb, appelé échantillon bootstrap
• construire le modèle sur l’échantillon bootstrap Ωb
• calculer l’erreur sur l’ensemble des données de départ Estimation de l’erreur de prédiction
Edrr(Boot) = 1 B
B
X
b=1
1 n
n
X
i=1
1yi6=
bf
∗ b (xi)
avec bfb∗ estimation de f sur l’échantillon bootstrap Ωb
• généralement biaisé par optimisme
IV. Simulations d’échantillons
Estimateur bootstrap out-of-bag
Estimation de l’erreur de prédiction
Edrr(Boot −oob) = 1 n
n
X
i=1
1 Bi
X
b∈Ki
1yi6=
bfb∗(xi)
• Ki : ensemble des indices b des échantillons bootstrap ne contenant pas la ie observation à l’issue des B simulations
• Bi = Card(Ki) : nombre d’échantillons bootstrap ne contenant pas la ie observation à l’issue des B simulations
Remarques
• B doit être assez grand pour que toute observation n’ait pas été choisie au moins une fois (ou on enlève le termes tels que Ki = ∅)
• cet estimateur résout le problème du biais d’optimisme mais n’échappe pas au biais introduit par la réduction
IV. Simulations d’échantillons
Estimateur .632-Bootstrap
Probabilité qu’une observation fasse partie d’un échantillon bootstrap
P(xi ∈ Ωb) = 1−
1− 1 n
n
'
n grand 1− 1
e ' 0.632
On compense l’optimisme du taux d’erreur de resubstitution par le pessimisme du bootstrap out-of-bag par une combinaison
Edrr0.632 = 0.368 Edrr(Appr) + 0.632 Edrr(Boot − oob) Il existe un estimateur dit .632-Bootstrap+.
IV. Simulations d’échantillons
Validation croisée ou Bootstrap
• Conceptuellement le bootstrap est plus compliqué et moins utilisé que la validation croisée.
• Le boostrap joue un rôle central dans les algorithmes de combinaisons de modèles.
• La validation croisée est très répandue car simple à implémenter.
À effort de calcul égal : K = B
• Le bootstrap a une variance plus faible.
• La validation croisée est moins biaisée.
Estimation d’une erreur de prédiction
• opération délicate
• conséquences importantes
Recommandations
• en dehors de tout système d’hypothèses probabilistes, se
montrer prudent sur le caractère absolu d’une estimation dans l’objectif d’une certification : le recours à un échantillon test de bonne taille est incontournable dans ce cas
• en situation de choix de modèle au sein d’une même famille, un estimateur plus économique est adapté en supposant que le biais induit est identique d’un modèle à l’autre
• utiliser le même estimateur pour comparer l’efficacité des méthodes
A
RBRES BINAIRES DE DÉCISION Julie Schollerfévrier 2019
M Éc E n
.
Introduction
Méthode
• non paramétrique
• intuitive et populaire
• règles explicites
• supporte les données hétérogènes, manquantes, liens non linéaires
• pour la classification et la régression Idée
• frontière pas un hyperplan
• partitionnement de l’espace par des morceaux d’hyperplans définissant des hyper-rectangles emboîtés
Iris de Fisher
1 2 3 4 5 6 7
0.51.01.52.02.5
Longueur des pétales
Largeurdespétales
.
1 2 3 4 5 6 7
0.51.01.52.02.5
Longueur des pétales
Largeurdespétales
.
1 2 3 4 5 6 7
0.51.01.52.02.5
Longueur des pétales
Largeurdespétales
.
1 2 3 4 5 6 7
0.51.01.52.02.5
Longueur des pétales
Largeurdespétales
setosa
virginica versicolor
1 2 3 4 5 6 7
0.51.01.52.02.5
Longueur des pétales
Largeurdespétales
setosa
virginica versicolor
.
Arbre des Iris de Fisher
Longueur des pétales < 2.6
Largeur des pétales < 1.8 setosa
versicolor virginica
oui non
oui non
.
Situation
• X = (X1,X2, . . . ,Xp) : variables explicatives ou prédicteurs (quantitatives ou qualitatives)
• Y : variable à prédire (ou expliquer) qualitative à m modalités
Construction de l’arbre
• trouver un partitionnement de la population en 2 rectangles les mieux différenciés possibles du point de vue de la variable à expliquer, c’est-à-dire trouver Xi et s ou M
• {Xi < s} et {Xi >s} si Xi quantitative
• {Xi ∈ M} et {Xi ∈/ M} avec M un sous-ensemble des modalités de Xi
• chaque nouveau morceau est à son tour découpé en deux, etc.
jusqu’à une condition d’arrêt
.
Construction de l’arbre
L’algorithme considéré nécessite
1. la définition d’un critère permettant de sélectionner la meilleure division parmi toutes celles admissibles pour les différentes variables
2. une règle permettant de décider qu’un nœud est terminal : il devient alors feuille
3. l’affectation de chaque feuille à l’une des classes ou à une valeur de la variable à expliquer
Le point 2 est le plus délicat
• arbre trop détaillé : sur-apprentissage, instable et donc probablement mauvaises prédictions
• arbre pas assez profond : manque de précision, trop grossier
Stratégie d’optimalité
Breiman, Friedman, Olshen et Stone (Classification and Regression Trees 1984)
• construire l’arbre maximal Amax
• ordonner les sous-arbres selon une séquence emboîtée suivant la décroissance d’un critère pénalisé
• sélectionner le sous-arbre optimal : c’est la procédure d’élagage
.
1. Critère de division 2. Critère d’arrêt 3. Règle d’affectation 4. Méthode d’élagage
.
Critère de division
Une division est dite admissible si aucun des segments descendants n’est vide.
Nombre de divisions binaires admissibles
• variable explicative qualitative non ordinale à m modalités : 2m−1 −1.
• variable explicative qualitative ordinale à m modalités : m− 1
• variable quantitative à m valeurs distinctes : m− 1
.
Fonction d’hétérogénéité ou de désordre
Caractéristiques 1. positive
2. concave : assure la diminution de l’hétérogénéité
3. symétrique (ne dépend que de la proportion dans laquelle est présente chaque classe dans chaque nœud)
4. minimale et nulle quand le nœud est homogène
5. maximale quand toutes les classes sont présentes dans la même proportion
Notion de désordre
• Fonction de pureté élémentaire ou taux de mal classés 1− max
i=1,...,mpi
• Indice de Gini
m
X
i=1
pi(1− pi)
• Entropie
−
m
X
i=1
pi ln (pi) avec la convention « 0 ln(0) = 0 »
.
Fonction de désordre
0.0 0.2 0.4 0.6 0.8 1.0
0.00.10.20.30.40.5
entropie
indice de Gini renormalisé taux de mal classés
.
Désordre d’un nœud
• Fonction de pureté élémentaire ou taux de mal classés : Dm(N) = nN
1− max
i=1,...,mpi,N
• Indice de Gini : DG(N) = nN
m
X
i=1
pi,N(1 −pi,N)
• Entropie : DE(N) = −nN
m
X
i=1
pi,N ln (pi,N)
Division optimale
celle qui maximise la baisse de désordre
{divisions admissibles demax N}D(N)− D(Nfils−a)− D(Nfils−b)
.
Exemple
Population 1000 individus
avec 500 de type A et 500 de type B : (500,500) Faut-il préférer un découpage {(400,100),(100,400)} ou un découpage {(300,0),(200,500)}?
Pureté Gini Entropie
(400,100) 0.2 0.32 0.5
(100,400) 0.2 0.32 0.5
D(N1) +D(N2) 200 320 500
Pureté Gini Entropie
(300,0) 0 0 0
(200,500) 0.29 0.41 0.60
D(N1) +D(N2) 200 286 419
Exemple
Population 1000 individus
avec 500 de type A et 500 de type B : (500,500)
Quel découpage préférer ?
Pureté Gini Entropie D(400,100) +D(100,400) 200 320 500
D(325,0) +D(175,500) 175 259 386 D(300,0) +D(200,500) 200 286 419 D(275,0) +D(225,500) 225 310 449 D(250,0) +D(250,500) 250 333 477
.
Règle d’arrêt
La croissance de l’arbre s’arrête à un nœud qui devient donc feuille
• s’il est homogène
• si le nombre d’observations qu’il contient est inférieur à un seuil fixé par l’utilisateur dmin (en général 1 6 dmin 6 5)
• si le nombre de nœuds est supérieur à nmax, nombre fixé par l’utilisateur
.
Affectation
Chaque feuille est affectée à la modalité de Y la plus représentée dans la feuille.
Autres solutions pour le choix de la modalité à affecter
• la modalité la moins coûteuse si des coûts de mauvais classements sont donnés
• la classe a posteriori la plus probable au sens bayésien si des probabilités a priori sont connues
.
Arbre complet - défaut de paiement
Errappr = 0.127 et Errtest = 0.121
Élagage
Recherche du meilleur compromis entre
• un arbre très détaillé, fortement dépendant des observations ayant permis son estimation : modèle de prévision très instable
• un arbre très robuste mais grossier qui donne des prédictions trop approximatives
Principe
• construire une suite emboîtée de sous-arbres de l’arbre maximum par élagage successif
• choisir, parmi cette suite, l’arbre optimal au sens d’un critère
Remarque
Solution obtenue non nécessairement globalement optimale mais méthode efficace et fiable
.
Désordre ou qualité de discrimination d’un arbre A
D(A) =
|A|
X
k=1
D(Fk)
avec |A| le nombre de feuille de A et Fk la ke feuille de A Complexité d’un arbre A
Cγ(A) = D(A) +γ|A|
Pour γ = 0, Amax = A0 minimise C0(A).
.
Soit N un nœud fixé.
• BN : branche à partir de N
• A0 : sous-arbre de A privé de la branche BN.
C(A0) = C(A) +C(N)− C(BN) Donc
Cγ(A0) 6 Cγ(A) ⇔ γ > D(N)− D(BN)
|BN| −1 = α
.
Construction de la suite d’arbres emboîtés
Algorithme
• on part de γ = 0 et A0 = Amax
• on augmente γ jusqu’à ce que l’arbre minimisant Cγ ne soit plus l’arbre précédent : on obtient A1 et γ1
• puis on recommence l’étape précédente jusqu’à n’avoir que la racine
Résultat
• suite de complexité : 0 = γ0 < γ1 < · · · < γm
• suite d’arbres emboîtés :
Amax = A0 ⊂ A1 ⊂ · · · ⊂ Am = {racine}
Arbre optimal : sous-arbre dont l’erreur de prédiction est la plus faible
Sélection du paramètre γ par validation croisée
1. Construire l’arbre complet à partir de toutes les données, puis la suite des arbres emboîtés et la suite des paramètres
0 = γ0 < γ1 < · · · < γm
on pose β0 = γ0 = 0, pour i = 1, . . . ,m− 1 βi = √
γi−1γi et
βm = +∞
2. Division des données en K groupes G1, . . . ,GK de taille similaire, puis pour chaque groupe :
2. construire le modèle complet sur les autres groupes et déterminer les arbres Aβi
2. calculer l’estimation de l’erreur de prédiction pour chaque arbre 3. Pour chaque βi, faire la moyenne de l’erreur de prédiction des
arbres correspondants
4. Pour le paramètre β choisi, calculer l’arbre correspondant sur les données de départ : c’est l’arbre choisi
.
Défaut de paiement - Sélection du paramètre
Paramètre β
Estimationdel’erreur
0.7 0.8 0.9 1.0 1.1 1.2
Inf 0.034 0.0047 0.0033 0.0028 0.0023 0.0019 0.0017 0.0015 0.0012 0.00099 0.00085 0.00074 0.00057 4e-04 0.00029 2e-04 0 1 2 6 7 13 17 19 26 31 45 63 90 99 148 151 174 180 184
Nombre de découpes
.
Arbre élagué - Défaut de paiement
PAY_0 >= 2
PAY_3 >= 1
PAY_5 >= 1
BILL_AMT3 < 8006
BILL_AMT4 >= 27e+3
PAY_AMT3 >= 727 ok 1441 5225 def
456 215 ok
985 5010 ok
222 335 def
95 87 def
15 1 ok
80 86 def
57 41 def
48 25
ok 9 16
ok 23 45
ok 127 248
ok 763 4675
yes no
.
Défaut de paiement - Performance
Inf 0.9
0.70.60.4 0.2
0.2
0.1
0.1
0
Inf 0.7 0.7 0.7 0.7 0.7 0.7 0.7 0.7
0.2
0.9Inf 0.7 0.70.70.40.4
0.30.3
0.1
0.00 0.25 0.50 0.75 1.00
0.00 0.25 0.50 0.75 1.00
false_positive_fraction
true_positive_fraction
methode
base pruned1 pruned6
Choix dans la méthode
• mesure de désordre pour la construction de l’arbre initial et le calcul de complexité
• règle d’arrêt
• règle d’affectation : pas forcément majoritaire
• association d’un coût à la mesure de désordre : modifie la construction de l’arbre
.
Avantages
• règles explicites pour l’interprétation
• supporte les données hétérogènes, manquantes (surrogate variables), liens non linéaires
• pour la classification et la régression
• efficace quand absence d’hypothèse et taille d’échantillon importante
• pratique quand variables nombreuses car sélection des variables intégrées à la méthode
Inconvénients
• algorithme étant basé sur une stratégie pas à pas hiérarchisée, il peut passer à côté d’un optimum global
• pas aussi précis que d’autres modèles classiques : amélioration possible de la précision au détriment de l’interprétation
.
Linéaire vs arbre
−2 −1 0 1 2
−2−1012
X1 X2
−2 −1 0 1 2
−2−1012
X1 X2
−2 −1 0 1 2
−2−1012
X1 X2
−2 −1 0 1 2
−2−1012
X1 X2
Julie Scholler
mars 2019
M Éc E n
I. Introduction
Stratégies d’amélioration des modèles et algorithmes classiques
Idée
• construire une collection de prédicteurs de base en parallèle
• agréger l’ensemble de leurs prédicitons
Autre idée
• construire une collection de prédicteurs de base en série
• repose sur une construction adaptative du modèle
→ cours suivant
Méthodes générales s’appliquant à toute méthode de prédiction mais intérêt surtout pour les méthodes instables
I. Introduction
Situation
• X = (X1,X2, . . . ,Xp) : variables explicatives ou prédicteurs (quantitatives ou qualitatives)
• Y : variable à prédire (ou expliquer) qualitative à m modalités
• f : Y = f (X) +ε
I. Introduction
Arbre élagué - Jus de fruit
LoyalCH >= 0.48
LoyalCH >= 0.71
PriceDif >= 0.26
PriceDif >= -0.16
LoyalCH < 0.68
LoyalCH >= 0.28
SalePric >= 2
PriceMM < 2.2 CH
444 269
CH 382 73
CH
257 14 CH
125 59
CH
64 7 CH
61 52
CH 54 34
CH 52 26
MM 2 8
MM 7 18
MM 62 196
MM 47 68
CH 28 18
CH 26 12
MM 2 6
MM 19 50
MM 15 128
yes no
BAGGING
Idée
• créer plein de modèles sur des échantillons différents et les agréger
Mise en œuvre
• B échantillons indépendants de n observations :
z(b) = nx(b)1 ,y1(b), . . . ,x(bn ),yn(b)o, b = 1, . . . ,B
• Estimation du modèle : fb(x0) = argmax
k
n
Cardnb ; bf(b)(x0) = koo avec fb(b) : estimation du modèle sur l’échantillon b
II. BAGGING
Gain : diminution de la variance
Problème : irréaliste de considérer B échantillons indépendants (nécessite trop de données)
Idée : utiliser B échantillons bootstrap
Bootstrap AGGregatING BAGGING
II. BAGGING
Algorithme de BAGGING
1. Soit x0 à prévoir
2. Soit z = {(x1,y1), . . . ,(xn,yn)} un échantillon 3. Pour b allant de 1 à B
• tirer un échantillon bootstrap z∗b
• construire à partir de z∗b : bf∗b
• calculer bf∗b(x0)
4. Calculer bfBAG (x0) = argmax
k
n
Cardnb ; fb∗b (x0) = koo
II. BAGGING
Estimation de l’erreur de prédiction
Possibilités
• découpage apprentissage/validation
• validation croisée : très coûteux en temps de calculs
• erreur Out Of Bag : OOB Rappel
• chaque échantillon bootstrap contient environ 1/3 des données
• le tiers restant constitue les données OOB Dans l’algorithme de BAGGING,
• chaque observation n’a pas été choisie environ B/3 fois
• pour chaque observation, on peut faire des prédiction avec les modèles provenant d’échantillon ne la contenant pas
On obtient l’erreur OOB associée au processus de BAGGING.
BAGGING avec CART
Stratégies pour la construction des arbres 1. construction complète avec élagage
• validation croisée pour la sélection de la complexité : coûteuse
2. limiter le nombre de feuilles
• comment choisir les nombres de feuilles
3. arbres complets ou profonds
• faible biais mais grande variance
• variance réduite par l’agrégation
• arbres profonds moins corrélés entre eux
II. BAGGING
5 10 15 20
0.160.180.20
Erreur selon la profondeur pour du bagging
Profondeur de l’arbre
Erreurentest
II. BAGGING
Erreur selon le nombre d’itérations pour le bagging
0 100 200 300 400 500
0.100.150.200.250.30
nombre d’itérations
erreur
Erreur en test Erreur OOB
II. BAGGING
Avantages et inconvénients
• algorithme simple, se comprend et se programme facilement quelque soit la méthode de base choisie
• temps de calculs éventuellement important
• nécessite de stocker tous les modèles pour les prédictions
• amélioration de la qualité au détriment de l’interprétabilité
→ boîte noire
Forêt aléatoire
Amélioration du BAGGING dans le cas des modèles CART
Idée : ajouter de l’aléa dans le choix des variables afin de rendre moins corrélés les différents arbres de l’agrégation
Algorithme
1. Soit x0 à prévoir
2. Soit z = {(x1,y1), . . . ,(xn,yn)} un échantillon 3. Pour b allant de 1 à B
• tirer un échantillon bootstrap z∗b
• estimer un arbre bf∗b sur cet échantillon avec randomisation des variables : la recherche de chaque nœud optimal est précédé d’un tirage aléatoire d’un sous-ensemble de q prédicteurs autorisés
• construire à partir de z∗b : bf∗b
• calculer bf∗b(x0)
4. Calculer bfFA (x0) = argmax
k
n
Cardnb ; bf∗b (x0) = koo
III. Forêt aléatoire
Choix de q
• q = p : BAGGING
• diminuer q accroît la variabilité des arbres donc augmente la décorrélation des arbres
• valeurs courantes de q : b√
pc, bln(p) + 1c ou q = 1
• petites valeurs de q : bons résultats
• sauf si la proportion de prédicteurs discriminants est faible
<0.5 ou 0.4 Élagage
• choisir moins de prédicteurs décorrèle déjà les arbres
• on peut se limiter à des arbres de faible profondeur (même 2)
III. Forêt aléatoire
5 10 15 20
0.170.180.190.20
Erreur selon la profondeur pour des RF
Profondeur de l’arbre
Erreurentest
III. Forêt aléatoire
Erreur selon le nombre d’itérations pour les RF
0 100 200 300 400 500
0.150.200.250.30
B : nombre d’iterations
Erreur
q=1 q=3 q=4 q=8
Interprétation
Perte de l’aspect interprétation des arbres Solution
• évaluer l’importance d’une variable dans la construction d’une forêt aléatoire
Mesure de l’importance
• fréquence d’apparition : trop rudimentaire
• Mean Decrease Accuracy : méthode générale
• Mean Decrease Gini : typique des arbres
IV. Interprétation des modèles
Measure de l’importance d’une variable
MDA : Mean Decrease Accuracy
• pour chaque arbre k
• mesure l’erreur OOB : Ek
• permutation aléatoire des valeurs de la variable considérée parmi les individus OOB
• nouvelle mesure du taux d’erreur Ek0
• MDA = moyenne des (Ek0 − Ek) normalisé par son écart type MDG : Mean Decrease Gini
• baisses d’impureté des nœuds résultants de la scission de la variable considérée moyennées sur l’ensemble des arbres
IV. Interprétation des modèles
SpecialCH DiscCH PctDiscCH SpecialMM Store7 PriceMM PriceCH PctDiscMM SalePriceCH DiscMM
WeekofPurchase SalePriceMM STORE ListPriceDiff StoreID PriceDiff LoyalCH
20 40 60 80
Random Forest
MeanDecreaseAccuracy
SpecialCH DiscCH PctDiscCH Store7 SpecialMM PriceMM PctDiscMM PriceCH DiscMM SalePriceCH SalePriceMM ListPriceDiff STORE StoreID PriceDiff
WeekofPurchase LoyalCH
0 40 80 120
Random Forest
MeanDecreaseGini
Julie Scholler
mars 2019
M Éc E n
I. Introduction
Boosting
Idée
concentrer ses efforts sur les observations les plus difficiles à ajuster
Méthode
• appliquer de façon successive le même algorithme à des versions de l’échantillon initial d’apprentissage qui sont modifiées à chaque étape pour tenir compte des erreurs de classement éventuelles
• combiner les modèles (éventuellement faiblement prédictifs)
Remarque
Risque de surapprentissage à contrôler
II. Boosting pour la classification
Adaboost - Algorithme
1. Initialisation des poids des individus : wi(1) = 1 2. Répéter pour m de 1 à M n
2. ajuster un modèle bfm à valeurs dans {−1 ; 1} sur l’échantillon pondéré
2. calculs de l’erreur et du coefficient du modèle
• taux d’erreur : εm = Pn
i=1wi(m)1{ˆfm(xi)6=yi} Pn
i=1wi(m)
• coefficient du modèle : αm = ln
1−εm εm
2. mise à jour des poids : si εm < 0.5 (sinon on réinitialise), on pose ˜wi(m+1) = wi(m) ×eαm1{ˆfm(xi)6=yi}
puis on obtient wi(m+1) en normalisant pour que la somme des poids fasse 1
3. Agrégation pondérée des modèles :
Fb(x) = sign
M
X
m=1
αmfbm(x)
!
II. Boosting pour la classification
Application
+ +
+
+ +
−
− −
−
−
5
8
1
2 3 6
7
10 4
9
Ét1
x
x x
+
+
−
− −
−
−
5
8
1
2 3 6
7
10 4
9
+ + +
Ét2
x
x x
− −
−
+
+ +
+
+
−
− 5
8
1
2 3 6
7
10 4
9
x
Ét3x
x
+ +
+
+ +
−
− −
−
−
5
8
1
2 3 6
7
10 4
9
+ − + −
− +
Boosting avec arbres complets
0 200 400 600 800 1000
0.050.100.150.200.25
Iteration 1 to 1000
Error
1000
1 1 1 1 1
2 2 2 2 2
1 2
Train Test1
II. Boosting pour la classification
Boosting avec arbres complets
0 50 100 150 200
0.050.100.150.200.25
Iteration 1 to 200
Error
200
1
1 1 1 1
2
2 2
2 2
1 2
Train Test1
II. Boosting pour la classification
Boosting avec stumps
0 1000 2000 3000 4000 5000
0.120.140.160.180.200.220.240.26
Iteration 1 to 5000
Error
5000
1
1
1 1 1
2
2 2 2 2
1 2
Train Test1
II. Boosting pour la classification
Variantes
Amélioration
Introduction d’un paramètre de pénalisation ou d’apprentissage λ (λ < 1)
˜
αm = λαm
diminue l’intensité du mécanisme d’apprentissage
Méthode Arcing
Remplacer les pondérations des individus par une modification de la constitution des échantillons d’apprentissage
Boosting avec arbres complet et pénalisation à 0.1
0 500 1000 1500 2000
0.050.100.150.200.25
Iteration 1 to 2000
Error
2000
1
1 1 1 1
2 2 2 2 2
1 2
Train Test1
II. Boosting pour la classification
Boosting avec arbres complet et pénalisation à 0.1
0 100 200 300 400 500
0.050.100.150.20
Iteration 1 to 500
Error
500
1
1
1 1
1
2 2 2 2 2
1 2
Train Test1
II. Boosting pour la classification
Boosting avec arbres complet et pénalisation à 0.01
0 200 400 600 800 1000
0.100.150.20
Iteration 1 to 1000
Error
1000
1
1 1
1 1
2 2 2 2 2
1 2
Train Test1
II. Boosting pour la classification
Boosting avec arbres complet et pénalisation à 0.01
0 100 200 300 400 500
0.100.150.20
Iteration 1 to 500
Error
500
1
1 1
1 1
2 2
2 2
2
1 2
Train Test1
Boosting avec stumps et pénalisation à 0.1
0 1000 2000 3000 4000 5000
0.140.160.180.200.220.240.260.28
Iteration 1 to 5000
Error
5000
1 1 1 1 1
2 2 2 2 2
1 2
Train Test1
II. Boosting pour la classification
Boosting avec stumps et pénalisation à 0.01
0 2000 4000 6000 8000 10000
0.160.180.200.220.240.260.28
Iteration 1 to 10000
Error
10000
1 1 1 1 1
2
2 2
2 2
1 2
Train Test1
II. Boosting pour la classification
Boosting avec stumps et pénalisation à 0.01
0 10000 20000 30000 40000
0.160.180.200.220.240.260.28
Iteration 1 to 40000
Error
40000
1 1 1 1 1
2 2 2 2 2
1 2
Train Test1
II. Boosting pour la classification
Remarques
• améliore le biais
• ne diminue par forcément la variance
• risque de surapprentissage
• convergence vers une performance optimale assez lente
• éventuellement
• temps de calculs
• taille du modèle en mémoire
Trois paramètres à optimiser
• M : le nombre d’arbres (sensible à l’overfitting)
• λ : pénalisation (entre 0.1 et 0.001)
• profondeur des arbres (complexité du modèle)
Comparaison des caractéristiques
Bagging et forêt aléatoire
• mécanisme aléatoire
• à chaque itération, échantillon bootstrap
• à chaque itération,
apprentissage avec tous les prédicteurs/une partie aléatoire
• à chaque itération, le
modèle doit être performant sur toutes les observations
• dans l’agrégation finale, tous les modèles ont le même poids
Boosting - Adaboost
• mécanisme adaptatif
• à chaque itération,
échantillon initial complet
• à chaque itération,
apprentissage avec tous les prédicteurs
• à chaque itération, le
modèle doit être performant sur certaines observations
• dans l’agrégation finale, les modèles sont pondérés par leur qualité
III. Comparaison des modèles d’agrégation
Points forts et points faibles
Bagging /forêt aléatoire
• réduction de la variance /encore plus
• perte de lisibilité
• peu efficace sur les stumps /efficace
• convergence rapide
• peut être parallélisé
• pas de surapprentissage
• moins bon que les autres /supérieur au bagging et au boosting sauf si prédicteurs discriminants rares
Boosting
• diminue le biais, diminue un peu variance sauf si
classifieur très stable
• perte de lisibilité
• très efficace sur les stumps
• convergence lente
• ne peut pas être parallélisé
• risque de surapprentissage
• plus efficace que le bagging sauf sur les données bruitées, similaire aux forêts
aléatoires
IV. Régression
Arbre de régression - Y quantitatif
Critère de désordre
X
i∈N
(yi − yN)2
Règle d’affectation
valeur moyenne des observations de la feuille
IV. Régression
Arbre de régression - MSE ' 1.912
genre = Act,Cmd
year >= 1970
length < 92
length < 104
year < 2004
4.5 n=68
5.6 n=88
5.9 n=69
5.9 n=281
7.3 n=13
6.6 n=147
yes no
IV. Régression
Forêt aléatoire en régression
• Même principe
• Nombre de variables choisies par défaut : p 3
• Règle de prédiction : moyenne des prévisions des arbres
IV. Régression
Arbre de régression - MSE ' 1.912 pour q = 1
0 50 100 150 200
2.02.53.03.5
nombre d'itérations
erreur
Bagging : q=3 F.A. : q=2 F.A. : q=1
IV. Régression
Importance des variables
year length genre
20 22 24 26 28 30
%IncMSE
genre year length
0 50 100 200 300
IncNodePurity