Académique Documents
Professionnel Documents
Culture Documents
Dr N. F. NGOM
26 avril 2022
Traitement de données 2
Plan
Introduction
Arbres de décision
Conclusion
Traitement de données 2
Introduction
Méthodes à mémoire
I k-plus proches voisins,
I Autres : Classifieur Naif Bayes, Classifieur
Maximisation-Espérance (EM) pour étudier un modèle qui
possède des variables latentes ou cachées.
Machine à vecteurs de support (SVM),
Arbres de décision,
Méthodes d’ensemble
I Forêts aléatoires,
I Bagging and Pasting,
I Boosting (Adaboost, gradient boosting).
Réseaux de neurones (DIC2).
Traitement de données 2
Méthodes à mémoire : K-plus proche voisin
K-NN : Modèle ?
Dis moi qui sont tes amis, et je te dirais qui tu es.
Pas de construction de modèles à partir d’un training set
(Leazy Learning)
I c’est l’échantillon d’apprentissage, associé à une fonction de
une fonction de choix de la classe en fonction des classes des
voisins les plus proches, qui constitue le modèle.
I Le modèle est l’échantillon : espace mémoire important
nécessaire pour stocker les données, et méthodes d’accès
rapides nécessaires pour accélérer les calculs.
Les voisins sont pris depuis un ensemble d’objets pour
lesquels la classe (en classification k-NN) ou la valeur (pour
une régression k-NN) est connue.
I Prédiction
• Régression : c’est la moyenne (ou la médiane) des variables y
des k plus proches observations qui servira pour la prédiction.
• Classification : c’est le mode des variables y des k plus
proches voisins qui servira de modèle.
Traitement de données 2
Méthodes à mémoire : K-plus proche voisin
I Distance de Manhattan d1
k
X
d1 (x, y ) = |xi − yi |
i=1
Traitement de données 2
Méthodes à mémoire : K-plus proche voisin
k-NN : algorithme
Algorithme de classification
I Données en entrée : jeu de données D, distance d, nombre
de voisins k.
I Début algorithme : pour une nouvelle observation x dont
veut prédire sa variable de sortie, Faire
1. Calculer toutes les distances de cette obsevation x avec les
autres observations du jeu de données D.
2. Retenir les k observations du jeu de données D les proches de
x en utilisant la distance d.
3. Prendre les valeurs de y des k observations retenues
3.1 Régression : calculer la moyenne (médiane) de y retenues,
3.2 classification : calculer le mode de y retenues.
4. Retourner la valeur calculée dans l’étape 3 comme étant la
valeur qui a été prédite par k-NN pour l’observation x.
I Fin algorithme
Traitement de données 2
Méthodes à mémoire : K-plus proche voisin
Choisir k
Le choix de la valeur k à utiliser pour effectuer une prédiction
avec k-NN, varie en fonction du jeu de données.
I Valeur de k faible : l’algorithme va retourner comme variable
cible la plus proche observation.
I Valeur de k plus élevée : l’algorithme va atténuer certains
comportements appris à partir de l’ensemble d’apprentissage.
I k = N, N étant le nombre d’observations, on risque d’avoir du
overfitting.
Remarques
I les classes rares doivent être représentées suffisamment, afin
que l’algorithme ne prédise pas uniquement les classes les plus
communes.
I Taille du jeu de données : le k-nn doit garder en mémoire
l’ensemble des observations pour pouvoir effectuer sa
prédicition.
I Le choix de la méthode de calcul de la distance ainsi que le
nombre de voisins k n’est pas évident.
Traitement de données 2
Séparateur à vaste marge (SVM)
Séparation linéaire
(xi , yi ) , i = 1...n, xi ∈ Rd , yi ∈ {−1, 1}
SVM en ligne
Pour les classificateurs SVM linéaires, une des méthodes
consiste à utiliser une descente de gradient pour la
fonction de coût, dérivée du problème primal.
La fonction coût est
m
1 T X
J (w , b) = w .w + C max(0,1−t (i) (w T .x (i) +b))
2
i=1
Astuce du noyau
Supposons que vous vouliez appliquer une transformation φ
polynomial du second degré à un jeu d’entraı̂nement
bidimensionnel, puis entraı̂ner un classificateur SVM linéaire sur
le jeu d’entraı̂nement transformé
√
φ (x) = φ ((x1 , x2 )) = x12 , 2x1 x2 , x22
Arbre de décision
Arbres de décision
I Les arbres de décision sont
• des algorithmes d’apprentissage automatique polyvalents qui
peuvent effectuer tout à la fois des tâches de classification et
de régression et même des tâches à sorties multiples.
• les composants fondamentaux des forêts aléatoires qui
figurent parmi les puissants algorithmes d’apprentissage
automatique disponible.
I Ils fournissent une représentation hiérarchique de la
structure des données sous forme des séquences de
décision (tests) en vue de la prédiction d’un résultat ou d’une
classe.
Avantages : les arbres de décision ne requièrent que très peu
de préparation de données.
Traitement de données 2
Arbres de décision
Apprentissage avec arbres de décision
Représentation
I Chaque noeud interne correspond à un attribut.
I Chaque noeud teste l’attribut correspondant et génére
plusieurs branches.
• Variable catégorielle : une branche par valeur de l’attribut,
• Variable numérique : test sur valeur.
I Les feuilles spécifient les classes.
Principe de la construction
I L’arbre est construit par partition récursive de la base
d’apprentissage en fonction de la valeur de l’attribut testé à
chaque itération (top-down induction),
I Le processus s’arrête quand les éléments d’un noeud ont la
même valeur pour la variable cible (homogénéité).
Traitement de données 2
Arbres de décision
Apprentissage avec arbres de décision
Arbre de décision
L’attribut samples d’un noeud compte le nombre
d’observations d’entraı̂nement passées par ce noeud.
L’attribut value d’un noeud indique combien d’observations
d’entraı̂nement de chaque classe sont passées par là : par
exemple le noeud en bas à droite a été atteint par 0 Iris
Sesota, 1 Iris versicolor et 45 Iris viginica.
L’attribut gini d’un noeud mesure son impureté : un noeud
est pur (gini=0) si toutes les observations qui y aboutissent
appartiennent à la même classe. L’impureté de gini vaut
n
X
Gi = 1 − pik
k=1
Frontière de décision
Algorithme CART
Scikit-Learn utilise l’algorithme d’arbre de classification et
régression (en anglais, Classification and Regression Tree,
CART) pour entraı̂ner (faire pousser) les arbres de décision.
Principe : l’algorithme sépare d’abord le jeu
d’entraı̂nement en deux sous ensembles en utilisant une
seule caractéristique k et un seuil tk .
I CART recherche la paire (k, tk ) qui produit les sous
ensembles les plus purs. La fonction coût de CART pour la
classification est
mgauche mdroite
J (k, tk ) = Ggauche + Gdroite
m m
Algorithme CART
Remarques
I La recherche de l’arbre optimal est un problème NP-complet :
ceci requiert un temps de calcul en O (exp (m)), ce qui rend le
problème insoluble même pour des jeux d’entraı̂nement réduits.
I CART est un algorithme glouton (greedy algortihm)
• s’efforce à faire un partage optimal mais ne vérifie pas s’il
conduit à l’impureté la plus faible possible.
• solution relativement bonne, mais sans garantie que ce soit la
solution optimale.
Autres types de mesure d’impureté : Entropie
I L’entropie d’un jeu de données est nulle lorsque toutes ses
observations appartiennent à la même classe
X
Hi = − pi,k log (pi,k )
k=1;i,k6=0
CART : régression
Bagging et Pasting
Principe : utiliser le même algorithme d’entraı̂nement mais
l’entraı̂ner sur des sous ensembles différents extraits
aléatoirement du jeu d’entraı̂nement.
I Lorsque le tirage s’effectue avec remise, cette méthode
s’appelle bagging (bootstrap aggregating),
I Lorsque le tirage s’effectue sans remise, on l’appelle pasting.
Le bagging et le pasting permettent de prélever plusieurs
fois des observations d’entraı̂nement et de les utiliser
avec plusieurs prédicteurs mais seul le bagging permet de
réutiliser plusieurs fois des observations d’entraı̂nement pour
le même prédicteur.
Une fois que tous les prédicteurs ont été entraı̂nés, l’ensemble
peut effectuer une prédiction pour une nouvelle
observation en aggrégeant les prédictions de tous les
prédicteurs.
I L’aggrégation réduit à la fois le biais et la variance.
Traitement de données 2
Méthodes d’ensemble : apprentissage collective
Forêt aléatoire
Une forêt aéatoire est un ensemble d’arbres de décision,
entraı̂nés en général en utilisant une méthode de bagging
(pasting).
Principe : entraı̂nez un ensemble d’arbre de décision chacun
sur un sous-ensemble aléatoire différent sur un jeu
d’entraı̂nement.
Pour obtenir des prédicteurs, il vous suffit d’obtenir les
prédictions de chacun des arbres puis de choisir la classe
obtenant le plus de vote.
Points forts
I permet de mesurer facilement l’importance relative des
variables
I une variable importante aura tendance, en moyenne, à réduire
l’impureté de Gini qu’une variable moins importante.
Traitement de données 2
Méthodes d’ensemble : apprentissage collective
Boosting
Combine les sorties de plusieurs classifieurs faibles (weak
learners) pour obtenir un résultat plus fort.
Classifieur faible : un comportement de base meilleur que
l’aléatoire (taux d’erreur sous 0.5 pour une classification
binaire).
Idée générale : entraı̂ner des prédicteurs l’un après l’autre,
chacun s’efforçant de corriger son prédecesseur.
Méthodes
I Adaboost (Adaptative boosting) : pour un nouveau
prédicteur, l’un des moyens de corriger son prédécesseur
consiste à préter plus d’attention aux observations que ces
prédecesseurs a sous ajoustées.
I Gradient boosting : ajuste un nouveau predicteur aux erreurs
résiduelles du prédicteur précédent.
Traitement de données 2
Conclusion
Conclusion
Le k-NN est très simple à appréhender principalement grâce
au fait qu’il n’a pas besoin de modèle pour fonctionner mais le
choix de la distance, de la taille du jeu d’entraı̂nement et du
nombre de voisin doit être effectué avec soin.
Un SVM est à la fois puissant et polyvalent pour, capable
d’effectuer jeux de données complexes mais de taille réduite
des classifications , des régressions, des détections de
données aberrantes, reconnaissance de de forme.
Arbres de décision : le résultat est facile à conceptualiser
et à visualiser et nécessitent peu de préparation de
données mais souffrent souvent du surapprentissage.
Apprentissage d’ensemble : si vous aggrégez les prédictions
d’un groupe de prédicteurs (classificateurs, régression), vous
obtiendrez souvent une meilleure prédictions qu’avec le
meilleur des prédicteurs pris endividuellement.
Traitement de données 2
Conclusion
Références