Vous êtes sur la page 1sur 11

TOUR DE PAROLE

1. Valisoa [page 1 – 5] du PowerPoint


 Page 1

Bonjour mes dames et messieurs !

C’est un honneur et avec plaisir pour nous de vous présenter, ici présent, le fruit de notre
résumé concernant le livre MACHINE LEARNING avec SCIKIT-LEARN.

Parlant plus précisément l’ APPRENTISSAGE D’ENSEMBLE et FORËTS ALEATOIRES qui se


trouve dans le chapitre numéro 7.

 Page 2

Cette exposition est présentée par le GROUPE 8, dont,

Hosana, Onja, Valisoa, Ariela, Mendrika, Lalaina et Tsiory .

 Page 3

Entrons maintenant dans le vif du sujet.

Cette présentation se divisera en 4 parties :

En premier lieu, nous aurons la partie Résumé

Puis la partie Exercices ,

Suivi de la partie Réalisation et Démonstration,

Et on terminera avec la conclusion.

 Page 4

Le résumé

 Page 5

En résumant le chapitre numéro 7, nous avons 6 autres sous parties dont :

o Les Classificateurs par vote

o Le Bagging et le Pasting

o Les parcelles aléatoires et Sous-espaces aléatoires

o Forêts aléatoires

o Le Boosting

o Le Stacking

On va donc commencer par les Classificateurs par vote


2. Lalaina [page 6 – 9] du PowerPoint
 Page 6

Sans plus tardé, on entame avec les classificateurs par vote

Les classificateurs par vote sont quoi ?????

Supposons que vous ayez entraîné quelques classificateurs, chacun d’entre eux atteignant
une exactitude de 80 % environ.

Voyons la photo !!

Pour y mettre plus de précision, pour savoir lequel des classificateurs est meilleur, la
classification se divise en deux.

 Page 7

Du coup nous avons 2 types de classificateurs :

o Le classificateur à vote rigide

o Le classificateur à vote souple

 Page 8

Alors les classificateurs à vote rigide c’est quoi ? Quel est son principe d’entrainement ?

Il consiste à agréger les prédictions de chacun des classificateurs et de prédire la classe qui
obtient le plus grand nombre de votes.

Comme nous pouvons le voir sur l’image.

 Page 9

Continuons avec les classificateurs à vote souple. Qu’est ce que c’est ?

Ce type de classificateur permet de prédire la plus grande moyenne des probabilités sur l’ensemble
des classificateurs.

Comme la figure nous montres, c’est la loi du plus grands nombre qui s’applique.

Compte tenu de ces 2 classificateurs par vote :

Le vote souple est meilleur que le vote rigide, parce qu’il accorde plus de poids aux votes dont
l’indice de confiance est élevé
3. Onja [page 10 – 16] du PowerPoint
 Page 10

Continuons avec le Bagging et Pasting

Comme nous l’avons vu précédemment, l’un des moyens d’obtenir un ensemble de classificateurs
diversifiés consiste à utiliser des algorithmes d’entraînement très différents.

 Page 11

● Le bagging (tirage avec remise) sur-ajuste les données d’apprentissage. Par contre, il fournit
souvent de simple (moins complexe) et meilleur modèle et un biais élevé.

● Le pasting tirage sans remise.

Quelques définitions utiles pour bien comprendre le Bagging et Pasting

• Sur-ajustement : overfitting, le modèle fonctionne bien sur les données d’apprentissage, mais
qu’il ne se généralise pas bien (ex : chauffeur de taxi).

• Biais : erreur de généralisation due à de mauvaises hypothèses, comme par exemple de supposer
que les données sont linéaires lorsqu’elles sont quadratiques. Un modèle à haut biais a plus de
chances de sous-ajuster les données d’entraînement. [chap 4]

• Variance : erreur due à la sensibilité excessive du modèle à de petites variations dans le jeu
d’entraînement. Un modèle ayant beaucoup de degrés de liberté (comme par exemple un
modèle polynomial de degré élevé) aura vraisemblablement une variance élevée, et par
conséquent sur-ajustera les données d’entraînements. [chap 4]

• Erreur irréductibles : elle est due au bruit présent dans les données. Le seul moyen de réduire
cette composante de l’erreur consiste à nettoyer les données. [chap 4]

 Page 12

Cette figure présente le principe fonctionnement du Bagging.

On constate que à chaque échantillonnage aléatoire, la dispersion des données ne sont pas égaux.

 Page 13

L’évaluation hors sélection c’est quoi ?????

Ceci concerne plus le bagging que le pasting. Car la liste des observations hors sélection peut
augmenter durant le jeu d’entrainement.

L’évaluation hors sélection permet d’évaluer l’ensemble (des observations) sans avoir besoin de
recourir à une validation séparée ou une validation croisée.

Quelques définitions utiles pour bien comprendre l’ Evaluation hors sélection

• Validation croisée : est une technique qui permet de comparer des modèles (pour en faire la
sélection et pour ajuster des hyperparamètres) pour savoir et sélectionner la méthode qui
fonctionne le mieux, sans nécessiter un ensemble de validation séparée. Ceci préserve de
précieuses données d’entrainement. [chap 1]
• Un modèle : est une version simplifiée des observations comme par exemple linéaire,
polynomial. [chap 1]

 Page 14

Parcelles aléatoires et sous-espaces aléatoires sont quoi ????

Expliquons les principes d’entrainement des Parcelles aléatoires et sous-espaces aléatoires

● Sont utiles pour des données d’entrée de grande dimension comme les images.

● Pour se faire, on procède par l’échantillonnage qui constitue la méthode d’ensemble des
parcelles aléatoires ; il consiste à conjoindre des observations et des variables. Elle augmente
aussi le biais.

● Mais tirer au sort certaines variables constitue la méthode des sous-espaces aléatoires.

 Page 15

FORÊTS ALEATOIRES

● Est un ensemble d’arbres de décision, entrainés en général en utilisant une méthode de


bagging.

● Cet algorithme cherche la meilleure variable au sein d’un sous-ensemble de variables


choisies au hasard, il en résulte une plus grande diversité des arbres avec le compromis d’un
biais plus élevé.

Elles se divisent en 2

 Les arbres extrêmement aléatoires

 Importance des variables

 Page 16

Arbres extrêmement aléatoires

Une fois encore le compromis consiste à accepter un peu plus de biais en échange d’une diminution
de la variance. Cela rend aussi ces extra-arbres bien plus rapides à entraîner que les forêts aléatoires
ordinaires.

Importance des variables

● Une variable importante aura tendance en moyenne à réduire davantage l’impureté Gini.

● Impureté Gini n’est d’autre qu’un algorithme qui cherche à savoir si les données sont
identiques ou variés. Sa valeur est nulle lorsque les données sont identiques.

● Pour se faire, il faut calculer la réduction moyenne d’impureté sur l’ensemble des nœuds où
cette variable intervient au travers de l’ensemble des arbres de la forêt aléatoire. Cette
moyenne est pondérée par l’importance de chaque nœud et le résultat est normalisé pour
que la somme des importances des variables soit égale à 1.
4. Hosana [page 17 – 25] du PowerPoint
 Page 17

L’idée générale de la plupart des méthodes de boosting est d’entrainer des prédicteurs l’un après
l’autre, chacun s’efforçant de corriger son prédécesseur.

Il y a 2 types de boosting:

- Adaboost

- Boosting de gradient

 Page 18

Pour l’adaboost, l’un des moyens de corriger son prédécesseur consiste à prêter plus d’attention aux
observations d’entrainement que ce prédécesseur a sous-ajustées.

Pour ce type de classificateur, il nécessite un classificateur de base tel qu’un arbre de décision pour
effectuer des prédictions ; et un second classificateur utilisant les poids modifiés est alors entrainé
puis effectue des prédictions et ainsi de suite.

Ce qui engendre la progression du résultat à chaque itération sur un classificateur.

 Page 19

Examinons de plus près l’algorithme AdaBoost. Chaque poids d’observation w(i) vaut initialement
1/m .

Un premier prédicteur est entraîné et son taux d’erreur pondéré r1 est calculé sur le jeu
d’entraînement.

Voici la formule pour calculer LE TAUX D’ERREUR PONDEREE.

 Page 20

Le poids αj du prédicteur est alors calculé en utilisant l’équation , où η est l’hyperparamètre de taux
d’apprentissage (dont la valeur par défaut est 1). Plus le prédicteur est exact, plus son poids sera
élevé. S’il ne fait que deviner au hasard, alors son poids sera proche de zéro. Mais s’il se trompe le
plus souvent (c.-à-d. si son exactitude est moindre qu’en choisissant au hasard), son poids sera
négatif.

La figure là nous montre comment calculer le POIDS d’un prédicteur.

 Page 21

Les poids des observations sont ensuite mis à jour en utilisant l’équation : les observations mal
classées sont « boostées ».

À partir de cette équation nous obtiendrons une nouvelle pondération à partir des POIDS pour
entrainer les prédicteurs qui vont améliorer les POIDS suivant.
 Page 22

Pour effectuer des prédictions, AdaBoost calcule simplement les prédictions de tous les prédicteurs
et les pondère à l’aide des poids αj des prédicteurs. La classe prédite est celle qui reçoit la majorité
des votes pondérés.

Vous pouvez voir la formule sur la figure.

 Page 23

Gradient Boosted Regression Trees (GBRT).

Le boosting gradient travaille par ajout séquentiel de prédicteur à un ensemble, chacun d’eux
corrigeant son prédécesseur. Cependant, au lieu de modifier légèrement les poids des observations à
chaque itération comme le fait AdaBoost elle tente d’ajuster un nouveau prédicteur aux erreurs
résiduelles du prédicteur précédent.

Ces figurent illustres l’ évolution d’une prédiction à traves 3 couches de prédicteur utilisant la
méthode GBRT.

 Page 24

Cette figure nous montre une technique de régularisation appelée rétrécissement

celui de gauche n’a pas suffisamment d’arbres pour ajuster convenablement le jeu d’entraînement,
tandis que celui de droite en a trop et surajuste.

Alors une question se pose comment faire pour obtenir le nombre de prédicteur exacte ??

 Page 25

Répondons la dernière à la question !

Pour obtenir le nombre d’arbre optimal, il nous faut un arrêt précoce du jeu d’entrainement; ce
dernier nous donne 2 méthodes

● Le premier est, un moyen simple de l’implémenter consiste à utiliser la méthode


staged_predict() du [chap 4]. Ici un hyperparamètres de nombres d’arbres est
indispensables.

● Le second est, il est aussi possible d’implémenter l’arrêt précoce en interrompant


effectivement précocement l’entraînement (au lieu d’entraîner d’abord un grand nombre
d’arbres, puis de les examiner pour trouver le nombre optimal) en spécifiant dans le code
warm_start=True.
5. Tsiory [page 26 – 32] du PowerPoint
 Page 26

Le stacking, l’idée est simple, c’est à peu près le dérivé des fonctions triviales (tel que le vote
majoritaire), car on entraine un modèle pour agréger les prédictions des prédicteurs précédents ; ce
modèle est nommé BLENDER.

 Page 27

Ce qui différencie le blender par rapport aux fonctions triviales sont :

● Le jeu d’entrainement est partagé en deux sous-ensembles

● On entraine les prédicteurs avec le premier sous-ensemble

● On entraine les prédicteurs avec le deuxième sous-ensemble mise en réserve, ceci garantit
que les prédictions seront « propres » ; car les prédicteurs n’ont jamais vu ces observations
durant l’entrainement.

 Page 28

Nous pouvons créer un nouveau jeu d’entraînement en utilisant les valeurs prédites comme variables
d’entrée (ce nouveau jeu d’entraînement est donc tridimensionnel) et en conservant les valeurs
cibles. Le blender est entraîné sur ce nouveau jeu d’entraînement, et par conséquent il apprend à
prédire la valeur cible à partir des prédictions de la première couche

 Page 29

Il est en fait possible d’entraîner plusieurs blenders différents de cette façon (p. ex. l’un avec une
régression linéaire, l’autre avec une régression par forêt aléatoire, et ainsi de suite) : nous obtenons
une couche complète de blenders. L’astuce consiste à partager le jeu d’entraînement en trois sous-
ensembles : le premier sert à entraîner la première couche, le second est utilisé pour créer le jeu
d’entraînement utilisé pour entraîner la deuxième couche (en utilisant les prédictions faites par les
prédicteurs de la première couche) et le troisième est utilisé pour créer le jeu d’entraînement pour
entraîner la troisième couche (en utilisant les prédictions faites par les prédicteurs de la deuxième
couche). Une fois cela fait, il est possible d’effectuer une prédiction sur une nouvelle instance en
parcourant tour à tour toutes les couches, , comme illustré sur la figure

 Page 30

Passons maintenant par les exercices que ce livre nous offres


 Page 31

Première question :

Si vous avez entraîné cinq modèles différents sur les mêmes données d’entraînement et s’ils ont tous
atteint une précision de 95  %, y a-t-il un moyen de combiner ces modèles pour obtenir de meilleurs
résultats ? Si oui, comment ? Sinon, pourquoi ?

Réponse :

Si vous avez entraîné cinq modèles différents et qu’ils ont tous atteint une précision de 95 %, vous
pouvez essayer de les combiner en un ensemble à vote qui donnera souvent des résultats encore
meilleurs. Ceci fonctionne mieux si les modèles sont très différents (p. ex. SVM, arbre de décision,
régression logistique, etc.). Il est même préférable de les entraîner sur des observations
d’entraînement différentes (c’est tout l’intérêt des ensembles de type bagging ou pasting), mais si ce
n’est pas le cas, cette solution fonctionnera quand même à condition que les modèles soient très
différents.

 Page 32

Seconde question :

Quelle est la différence entre les classificateurs à vote rigide et à vote souple ?

Réponse :

Un classificateur à vote rigide compte simplement les votes de chacun des classificateurs de
l’ensemble et choisit la classe qui a obtenu le plus de votes. Un classificateur à vote souple calcule
pour chaque classe la moyenne des estimations des probabilités d’obtenir cette classe et choisit la
classe ayant la plus forte probabilité moyenne. Ceci donne plus de poids aux votes dont l’indice de
confiance est élevé et donne souvent de meilleurs résultats, mais ce n’est possible que si le
classificateur peut calculer les probabilités des classes (pour les classificateurs SVM de Scikit-Learn
par exemple, vous devez définir probability=True).
6. Mendrika [page 33 – 38] du PowerPoint
 Page 33

Troisième question :

Est-il possible d’accélérer l’entraînement d’un ensemble de bagging en le distribuant entre plusieurs
serveurs ? Même question pour des ensembles de type pasting, boosting, forêt aléatoire ou
stacking ?

Réponse:

Il est tout à fait possible d’accélérer l’entraînement d’un ensemble de bagging en le distribuant entre
plusieurs serveurs, étant donné que chaque prédicteur de l’ensemble est indépendant des autres. Il
en est de même pour les ensembles de type pasting et les forêts aléatoires, pour la même raison.
Cependant, chaque prédicteur d’un ensemble de boosting étant construit à partir du prédicteur
précédent, l’entraînement est nécessairement séquentiel  : vous ne gagnerez rien à distribuer
l’entraînement entre plusieurs serveurs. En ce qui concerne les ensembles par empilement (ou
stacking), tous les prédicteurs d’une même couche sont indépendants les uns des autres et peuvent
par conséquent être entraînés en parallèle sur plusieurs serveurs. Cependant, les prédicteurs d’une
couche ne peuvent être entraînés qu’après la fin de l’entraînement des prédicteurs de la couche
précédente.

 Page 34

Quatrième question :

Quel est l’avantage de l’évaluation hors sélection ?

Réponse :

Avec une évaluation hors sélection, chaque prédicteur de l’ensemble de bagging est évalué en
utilisant les observations sur lesquelles il n’a pas été entraîné (et qui ont été mises de côté). Ceci
permet d’obtenir une évaluation assez peu biaisée de l’ensemble sans nécessiter un jeu de validation
supplémentaire. Vous avez donc plus d’observations pour l’entraînement et votre ensemble donne
des résultats légèrement meilleurs.
 Page 35

Cinquième question :

Qu’est-ce qui rend les extra-arbres plus aléatoires que les forêts aléatoires normales  ? En quoi cette
part de hasard supplémentaire peut-elle aider ? Les extra-arbres sont-ils plus lents ou plus rapides
que les forêts aléatoires normales ?

Réponse:

Lors de la construction d’un arbre dans une forêt aléatoire, le partage de chacun des nœuds ne
s’effectue que sur un sous-ensemble aléatoire des variables. C’est vrai également pour les extra-
arbres, mais ils vont encore plus loin : au lieu de rechercher les meilleurs seuils possibles, comme le
font les arbres de décision ordinaires, ils utilisent des seuils aléatoires pour chaque variable. Cette
part de hasard supplémentaire agit comme une forme de régularisation  : si une forêt aléatoire
surajuste les données d’entraînement, des extra-arbres donneront peut-être de meilleurs résultats.
De plus, étant donné que les extras-arbres ne recherchent pas les meilleurs seuils possibles, ils sont
bien plus rapides à entraîner que les forêts aléatoires. Cependant, lorsqu’il s’agit d’effectuer des
prédictions, ils ne sont ni plus rapides ni plus lents que les forêts aléatoires.

 Page 36

Sixième question :

Si votre ensemble AdaBoost sous-ajuste les données d’entraînement, sur quels hyperparamètres
pouvez-vous jouer, et comment ?

Réponse:

Si votre ensemble AdaBoost sous-ajuste les données d’entraînement, vous pouvez tenter d’accroître
le nombre d’estimateurs ou de réduire les hyperparamètres de régularisation de l’estimateur de
base. Vous pouvez aussi essayer d’augmenter légèrement le taux d’apprentissage.

 Page 37

Septième question :

Si votre ensemble à boosting de gradient surajuste le jeu d’entraînement, devez-vous augmenter ou


diminuer le taux d’apprentissage ?

● Réponse :

● Si votre ensemble à boosting de gradient surajuste le jeu d’entraînement, vous devez essayer
de diminuer le taux d’apprentissage. Vous pouvez aussi utiliser l’arrêt anticipé pour trouver
le bon nombre de prédicteurs (vous en avez probablement trop).

 Page 38

Faisons une petite démonstration référençant par rapport à ce que nous avions parlé.
7. Ariela [page 39 – 41] du PowerPoint
 Page 39

Conlusion

 Page 40

Pour conclure, nous avons pu étudier

• L’apprentissage de l’ensemble

• L’ensemble qui a plus de rapidité

• Un ensemble dédié aux certaines données

 Page 41

Ainsi se termine notre présentation, Monsieur, chers collègues merci de votre aimable attention !!!

Si vous avez des remarques ou des questions, alors posez-les, nous sommes disposés à y répondre.

Vous aimerez peut-être aussi