SlideShare una empresa de Scribd logo
1 de 80
Descargar para leer sin conexión
Contenu du chapitre 2
L’apprentissage supervisé
• Définition
• Algorithmes
– Les k plus proches voisins
– Les arbres de décisions
– Régression linéaire
– Régression logistique
– SVM
– Classification naïve bayésienne
– Le perceptron
– Etc.
L’apprentissage supervisé permet de construire des modèles à
partir d’exemples d’apprentissage ou d’entrainement dont on
connait le comportement ou la réponse.
à Un expert est employé pour étiqueter correctement ces
exemples.
1. Définition
63
Formulation :
!= ("1,…,"#) : vecteur de valeurs
N : la taille de jeux de test
U = (u1,…,u#) : valeur supervisée ou réponse supervisée
S = (xi ; ui ) i:1..N : la base d’apprentissage
(xi ; ui ) : un couple / un échantillon
F: Xà U : fonction d’apprentissage
But :
Le but d’un algorithme d’apprentissage supervisé sera donc
d’approcher ce4e fonction F, uniquement à partir des exemples
d’apprentissage et en cherchant une loi de dépendance entre x et
u.
64
1. Définition
Les différentes représentations :
• Si f est une fonction continue on parle alors de régression.
• Si f est une fonction discrète on parle alors de classification.
• Si f est une fonction binaire on parle alors d’apprentissage de
concept.
Les méthodes de classification supervisée peuvent être basées
sur :
-des notions de proximité (cas du k plus proches voisins)
-des hypothèses probabilistes (cas du classifieur naïf bayésien)
-des recherches dans des espaces d'hypothèses (cas des arbres de
décisions).
65
1. Définition
Problème Linéaire et Non-Linéaire
Un problème est linéairement séparable si les exemples de
classes différentes sont complètement séparables par un
hyperplan. Ce genre de problème se résout par des classifieurs
assez simples, qui ont pour but de trouver l'équation de
l'hyperplan séparateur.
àFrontières de décisions linéaires
Mais, le problème peut également être non séparable de manière
linéaire. Dans ce cas, il faut utiliser d'autres types de classifieurs,
souvent plus longs à paramétrer, mais qui obtiennent des
résultats plus précis. 66
1. Définition
Les algorithmes :
– Les k plus proches voisins
– Les arbres de décisions
– Régression linéaire
– Régression logistique
– SVM
– Classification naïve bayésienne
– Le perceptron
– Etc.
2. Les algorithmes
d’apprentissage supervisé
67
• Le classifieur des k plus proches voisins ou k-ppv (k-
Nearest Neighbor ou k-NN) permet de classifier un
exemple en choisissant la classe dominante parmi les k plus
proches "voisins" (par mesure de distance).
• Principe : Un exemple est classifié par vote majoritaire de
ses k "voisins" (par mesure de distance), c'est-à-dire qu'il est
prédit de classe C si la classe la plus représentée parmi ses k
voisins est la classe C.
• Deux choix à faire :
– La distance
– La valeur de k
2.1 Les k plus proches
voisins (KNN)
68
a) Exemples de distances
2.1 Les k plus proches
voisins (KNN)
69
Distance de Manha-an
Distance Euclidienne
Distance dk
Distance du maximum
Pour des variables continues :
a) Exemples de distances
2.1 Les k plus proches
voisins (KNN)
70
Pour des variables discrètes :
Distance de Hamming
b) Choix du k
• Le choix du k est très important pour la classification.
• On s’abstient de choisir des valeurs paires de k, pour éviter
les cas d'égalité
Pour k=1, le résultat est un plus
Pour k=2, le résultat est indéterminé
Pour k=5, le résultat est un moins
71
2.1 Les k plus proches
voisins (KNN)
b) Choix du k
• k n'est pas un paramètre mais un hyperparamètre, c'est à
dire que contrairement aux paramètres classiques, il ne va
pas pouvoir être appris automatiquement par l'algorithme à
partir des données d'entraînement.
• Les hyperparamètres perme>ent de caractériser le modèle
(e.g. complexité, rapidité de convergence etc). Ce ne sont pas
les données d'apprentissage qui vont perme>re de trouver
ces paramètres (en l'occurence ici le nombre de voisins k)
mais bien à nous de l'optimiser, à l'aide du jeu de données
de validation.
72
2.1 Les k plus proches
voisins (KNN)
c) Pseudo-Algorithme !−""#
Déclarations
- M : nombre de classes d’apprentissage $= %1,…,%& ;
- N : nombre d’exemples d’entrainement '= (1,…,() ;
- '*+= (,,%- : ensemble d’apprentissage
- (. : exemple test /*dont on cherche la classe d’appartenance*/
Début
< On cherche à classer (. ? > ;
Pour Chaque exemple (, Є '*+ Faire
< Calculer la distance / entre (, et (. > ;
FPour
< Trier les échantillons (, par ordre croissant des distances > ;
Pour les - plus proches (, de (. (les - premières – ayant les plus petites- / ) Faire
< Compter le nombre d’occurrences de chaque classe > ;
FPour
< AQribuer à (. la classe %0 la plus fréquente > ; /*Celle qui apparait le plus souvent*/
Fin.
73
2.1 Les k plus proches
voisins (KNN)
• KNN pour la classification
– Sélection des k plus proches exemples x1..xk.
– Choix de la classe la plus présente parmi les
u1…uk correspondants.
• KNN pour la régression
– Sélection des k plus proches exemples x1...xk.
– Le résultat :
74
2.1 Les k plus proches
voisins (KNN)
Exemple : Client loyal ou non ?
75
2.1 Les k plus proches
voisins (KNN)
Exemple : Client loyal ou non ?
76
2.1 Les k plus proches
voisins (KNN)
En utilisant la
distance euclidienne
et pour k=3,
déterminer est-ce
que David va être
loyal ou non ?
Prédiction : David est un client loyal
77
2.1 Les k plus proches
voisins (KNN)
Exercice sur l’algorithme des k plus proches voisins
Nous considérons le problème de classification
binaire où l’espace des entrées est X = [0; 1] et
l’espace des sorties est {0; 1}.
La base d’apprentissage est (X1 = 0, 8 ; Y1 = 1),(X2 =
0, 4 ; Y2 = 0),(X3 = 0, 7 ; Y3 = 1).
Donner la valeur prédite pour toute nouvelle entrée
x ∈ X
(a) par l’algorithme des 3-p.p.v.
(b) par l’algorithme du p.p.v
78
2.1 Les k plus proches
voisins (KNN)
Discussion
• La méthode peut s'appliquer dès qu'il est possible de
définir une distance sur les champs
• La méthode permet de traiter des problèmes avec un
grand nombre d'a9ributs.
• Plus le nombre d'a9ributs est important, plus le nombre
d'exemples doit être grand.
• Les performances de la méthode dépendent du choix de
la distance et du nombre k de voisins (une heuristique
fréquemment utilisée est de prendre k égal au nombre
d'a9ributs plus 1).
79
2.1 Les k plus proches
voisins (KNN)
• Les arbres de décision sont un outil d’identification basé
sur la résolution de problèmes à l’aide de
questions/réponses.
• La racine constitue le point de départ de l'arbre et
représente l'ensemble des données d'apprentissage. Puis
ces données sont segmentées en plusieurs sous-groupes,
en fonction d'une variable discriminante (un des
aAributs).
• Chaque nœud de l’arbre correspond à une question
portant sur un aAribut. Chaque feuille de l’arbre
correspond à une classe ou une valeur ( pour
respectivement la classification ou la régression) . 80
2.2 Les arbres de décision
Exemple introductif
La première variable discriminante est la température
corporelle : elle divise la population en deux sous-groupes.
Le processus est ensuite réitéré au deuxième niveau de
l'arbre, ou les sous-populations sont segmentées à leur tour
en fonction d'une autre valeur discriminante (la toux).
Les classes : malade ou sain
81
2.2 Les arbres de décision
Une fois l'arbre construit à partir des données d'apprentissage,
on peut prédire un nouveau cas en le faisant descendre le long
de l'arbre, jusqu'à une feuille.
Comment construire l’arbre ?
Avec quel a4ribut on va commencer ?
• Il faut donc une fonction de choix qui mesure et évalue la
qualité d'une segmentation et sélectionne la meilleure
variable sur chaque sommet.
• Grace à ce>e fonction, l'algorithme de création des arbres de
décision fait automatiquement la sélection d'a>ributs jugés
pertinents, et ce, même sur des volumes de données
importants.
82
2.2 Les arbres de décision
a) La fonction de choix
• Ce#e fonction permet de mesurer le degré de mélange des
exemples de plusieurs classes à chaque nœud de l’arbre.
• Elle doit sélectionner le test minimisant le « désordre » dans
les nouveaux nœuds obtenus après application du test : le test
choisi doit séparer au mieux les exemples de différentes
classes.
• Ce que l'on veut : une formule qui donne une valeur grande si
le test produit des groupes homogènes et une valeur faible s'il
conduit à des groupes hétérogènes.
à Mesure d’entropie ou Critère de Gini
83
2.2 Les arbres de décision
a) La fonction de choix
• Exemples de Fonctions Mélanges
– Fonction d’Entropie
– Fonction de Gini
84
2.2 Les arbres de décision
Avec, c classes, p nœud/variable
P(k/p) proportion des individus appartenant à la classe k parmi ceux de la position !.
b) La fonction de gain d’information
– Pour la fonction d’Entropie
– Pour la fonction de Gini
85
2.2 Les arbres de décision
Choisir l’a>ribut avec le plus grand gain d’information i.e.
minimisant l’entropie croisée
Exemple avec la fonction Entropie
Données : un tableau d'observations
86
2.2 Les arbres de décision
Problème :
Pourquoi certains a4rapent un coup de soleil ? Comment prédire le résultat pour
une nouvelle personne (coup de soleil ou RAS : Rien A Signaler) ?
Exemple avec la fonction Entropie
87
2.2 Les arbres de décision
E = ensemble des 8 exemples
entropie(E) = - 5/8 log2 (5/8) - 3/8 log2 (3/8) = 0.42 + 0.53 = 0.95
Entcroisee(Taille)
= prob(petit)*entropie(E, petit) +
prob(moyen)* entropie(E, moyen) +
prob(grand)* entropie(E, grand)
= 3/8 [ -1/3*log2 (1/3) –2/3*log2 (2/3) ] +
3/8 [ -1/3*log2 (1/3) –2/3*log2 (2/3) ] +
2/8 [ -1*log2 (1) –0*log2 (0) ]
= 0.344 + 0.344 + 0 = 0.69
Exemple avec la fonction Entropie
88
2.2 Les arbres de décision
E = ensemble des 8 exemples
IG(E, Taille) = 0.95 - 0.69;
IG(E, Cheveux) = 0.95 - 0.5;
IG(E, Poids) = 0.95 - 0.94;
IG(E, Lotion) = 0.95 - 0.61
-> Choix de l'aHribut Cheveux
Exemple avec la fonction Entropie
89
2.2 Les arbres de décision
Le choix de l'a,ribut cheveux permet de discriminer
4 exemples (3 pour la valeur Brune et 1 pour la
valeur rousse).
L’étape suivante : chercher l’a,ribut qui va
discriminer les 4 exemples (blonde) non discriminés
par Cheveux.
Exemple avec la fonction Entropie
90
2.2 Les arbres de décision
E = ensemble des 4 personnes
IG(E, Taille) = 0.5;
IG(E, Poids) = 1;
IG(E, Lotion) = 0
-> Choix de l'a?ribut Lotion
Exemple avec la fonction Entropie
91
2.2 Les arbres de décision
Arbre obtenu
Exemple avec la fonction Entropie
92
2.2 Les arbres de décision
Par curiosité : autre arbre possible
Exemple avec la fonction de Gini
Données : ensemble des clients d’une compagnie d’assurance
93
2.2 Les arbres de décision
Problème :
Comment prédire le résultat internet pour un client (le client consulte ses comptes
sur internet ou non ) ?
Exemple avec la fonction de Gini
Avec 8 clients dont : 3 (oui) et 5 (non), le mélange initial
(selon Gini) :
94
2.2 Les arbres de décision
Exemple avec la fonction de Gini
• La construction est descendante : on commence par
tester les candidats à la racine.
• Au début, tous les individus sont regroupés (au
niveau 0, la racine de l’arbre).
• Ainsi, quatre (04) constructions sont possibles,
suivant les variables : Montant (M), âge (A),
résidence (R) et études (E).
95
2.2 Les arbres de décision
Exemple avec la fonction de Gini
• Construction selon la variable M (Montant)
96
2.2 Les arbres de décision
Exemple avec la fonction de Gini
• Construction selon la variable A (âge)
• Construc5on selon la variable R (Résidence)
97
2.2 Les arbres de décision
Exemple avec la fonction de Gini
• Construction selon la variable E (étude)
98
2.2 Les arbres de décision
Exemple avec la fonction de Gini
• Choix de la variable Age :
• Le Premier Niveau de l’Arbre Appris
99
2.2 Les arbres de décision
Exemple avec la fonction de Gini
• L’étape suivante :
– ignorer les valeurs (les supprimer du tableau de valeurs)
pour laquelle Age = jeune et Age = âgé (pour les lignes : 3,
5, 6, 7)
– ne pas prendre en considération la variable Age A (retirer
la colonne Age).
• Puis, continuer la construction des autres niveaux
selon les variables restantes M, R et E.
100
2.2 Les arbres de décision
Exemple avec la fonction de Gini
• Construction du second niveau :
101
2.2 Les arbres de décision
0,5
Exemple avec la fonction de Gini
Construction du second niveau : Ce/e construction est la
dernière et termine l’arbre puisque tous les nœuds ainsi formés sont des
feuilles (oui ou non).
• Arbre Finalement Appris
102
2.2 Les arbres de décision
Dans la pratique…Pour la classification
Dans la pratique…Pour la classification
Évaluation de l’algorithme de l’arbre de décision-
Pour la classification
● Pour les tâches de classification, certaines
métriques couramment utilisées sont la
matrice de confusion, la précision, le rappel et le
F1-score.
Évaluation de l’algorithme de l’arbre de décision- Pour la
classification
● Pour les tâches de classification, certaines métriques
couramment utilisées sont la matrice de confusion, la
précision, le rappel et le F1-score.
Évaluation de l’algorithme de l’arbre de décision- Pour la classification
Faiblesses :
• C’est un algorithme Glouton, sans backtrack (sans
retracer ou trace arrière).
• Apprendre un arbre de décision : NP-complet
• Création d’arbres trop complexes
• Détection difficile des interactions entre aDributs
108
2.2 Les arbres de décision
● Règle de décision bayésienne: associer à chaque nouvel
individu à classer la classe la plus probable.
● Fonction de classement définie par :
f: R->C
X(π)=X-> yj / pour tout y dans C P(yj /X)>= P(y/X)
● P(yj/X) est une probabilité a posteriori qui doit
être estimée.
2.3 l’approche probabiliste
● Ce qui s’écrit encore
-> P(X/yj) = P((X1=V1, X2=V2, ……,Xp=Vp)/yj)
P(X/ yj)P(yj)
P(X)
j
P(y /X) =
P(X/ yj)P(yj)
j C
∑P(X/ yi)P(yi)
• avec l’hypothèse que l’ensemble {y1,y2,...,yC} constitue un système complet d’événements.
• -> le problème revient donc à déterminer P(X/yj) pour chaque
classe yj, j=1,…..,c
P(y /X) =
2.3 l’approche probabiliste
i=1
● Phase d’apprentissage : estimer et mémoriser la matrice des
X, on
C
P(X/ yj)P( yj)
j
∑P(X/ yi)P(yi)
i=1
P(y /X) = C p
probabilités conditionnelles.
● Phase de reconnaissance : pour classer un nouvel individu
applique la règle de Bayes :
p
∑∏P(Xk / yi)P(yi)
P(yj)∏P(Xk / yj)
i=1 k=1
k=1
=
-> Calcul de la probabilité pour chaque classe, affectation à X la classe
de plus forte probabilité.
2.3 l’approche probabiliste
Exercice
Exercice
page 148
• Un algorithme de régression permet de trouver un modèle
(une fonction mathématique) en fonction des données
d’entrainement. Le modèle calculé permettra de donner une
estimation sur une nouvelle donnée non encore vue par
l’algorithme (qui ne faisait pas partie des données
d’entrainement).
• Les algorithmes de régression peuvent prendre plusieurs
formes en fonction du modèle qu’on souhaite construire. La
régression linéaire (cf Introduction ML) est le modèle le plus
simple : Il consiste à trouver la meilleure droite qui
s’approche le plus des données d’apprentissage. La fonction
de prédiction sera donc une droite.
114
2.3 Régression linéaire
• La régression logistique est utilisée pour estimer la
probabilité qu’une observation appartienne à une
classe particulière ➔ Classification.
• Si la probabilité́ estimée est supérieure à 50% alors le
modèle prédit que l’observation appartient à cette
classe (classe positive, étiquette « 1 »), sinon il prédit
qu’elle appartient à l’autre classe (classe négative,
étiquette « 0 »)
• c’est un classificateur binaire
115
2.4 Régression logistique
• Un modèle de régression logistique calcule
une somme pondérée des caractéristiques
d’entrée (+bias), mais au lieu de fournir le
résultat directement comme le fait le modèle
de régression linéaire, il fournit la logistique
du résultat
!
" = $% & = '(%), &)
-> Probabilité estimée par le modèle de
régression logistique 116
2.4 Régression logistique
117
2.4 Régression logistique
La fonction logistique (logit ! ) est une fonction
sigmoïde qui renvoie des valeurs comprises entre
0 et 1.
! " =
1
1 + exp(−")
Prédiction du modèle ,
- = .
0, ̂
2 < 0.5
1, ̂
2 ≥ 0.5
• L’objectif de l’entrainement consiste à définir le
vecteur des paramètres ! afin que le modèle estime
des probabilités élevées pour les observations
positives " = 1 et des probabilités basses pour les
observations négatives " = 0 .
• La fonction de coût suivante traduit cette idée dans
le cas d’une unique observation d’entrainement # :
C(! )= %
−'() (+
,) ./ " = 1
log(1 − 4
,)./ " = 0
118
2.4 Régression logistique
• La fonction de coût sur l’ensemble du jeu
d’entrainement est déterminée par le coût
moyen sur l’ensemble de ses observations
Cette fonction de coût est convexe➔un
algorithme de Descente de Gradient est utilisé
pour trouver le minimum global
119
2.4 Régression logistique
La dérivée partielle de la fonction de cout par
rapport au jième paramètre du modèle ! se
calcule comme suit :
120
2.4 Régression logistique
2.5 SVM
• Une machine à vecteurs de support ou
séparateur à vaste marge (SVM) est un
modèle d’apprentissage automatique
capable d’effectuer des classifications
linéaires ou non linéaires, des régressions.
• 1982: SVM linéaire
• 1992: introduire des noyaux non linéaires
pour étendre le SVM au cas non-linéaire
121
2.5 SVM
• Modèle de classificateur SVM linéaire prédit la
classe d’une nouvelle instance ! en calculant
simplement la fonc8on de décision :
• "#. ! + $ = "%!% + ⋯ + "'!' + $
122
2.5 SVM
• Entrainer un classificateur SVM linéaire
consiste à trouver les valeurs de ! et de "
rendant cette marge aussi large que
possible tout en évitant les empiètements
de marge (marge rigide) ou en les limitant
(marge souple)
123
2.5 SVM à noyau
• Pour surmonter les inconvénients des
cas non linéairement séparable, l’idée
des SVM est de changer l’espace des
données.
• La transformation non linéaire des
données peut permettre une
séparation linéaire des exemples dans
un nouvel espace ➔ un changement
de dimension. 124
2.5 SVM à noyau
• Cette nouvelle dimension est appelé«
espace de re-description »
• Plus la dimension de l’espace de re-
description est grande, plus la
probabilité de pouvoir trouver un
hyperplan séparateur entre les
exemples est élevée.
• Cette transformation non linéaire est
réalisée via une fonction noyau. 125
126
2.5 SVM à noyau
Evaluation des modèles
Une méthode générale pour estimer le risque espéré est celle des
données de test :
1.L’ensemble de données disponibles !" est partitionné en deux
ensembles mutuellement exclusifs par sélection aléatoire :
• les données d’apprentissage # (par ex. env. 70% du nombre
total)
• les données de validation T (par ex. 30% du nombre total).
2.L’apprentissage du modèle est réalisé sur les données de
l’ensemble # .
3.Le risque espéré du modèle résultant est estimé sur les données
de T .
127
Difficultés de cette approche :
• La mise de côté des données de test réduit le nombre de
données utilisée pour l’apprentissage.
• Cet estimateur du risque espéré a une variance élevée
(un autre partitionnement produira d’autres ensemble
d’apprentissage et de test).
Validation croisée (cross-validation) :
Øplusieurs partitionnement apprentissage / test
Øobtenir à chaque fois un modèle sur les données
d’apprentissage et l’évaluer sur les données de test
associées,
Øemployer la moyenne comme estimation du risque
espéré
128
Evaluation des modèles
129
Validation croisée
La séparation d’un jeu de données
en un jeu d’entraînement et un jeu
de test est nécessairement
arbitraire. Nous risquons ainsi
d’avoir, par hasard, créé des jeux
de données qui ne sont pas
représentatifs.
Pour éviter ce problème, il est
souhaitable de reproduire
plusieurs fois la procédure, puis de
moyenner les résultats obtenus
afin de moyenner ces effets
aléatoires.
è C’est le principe de la
validation croisée.
130
Validation croisée
Définition :
Etant donnés un jeu ! de " observations et un nombre
# , on appelle validation croisée la procédure qui
consiste à :
1. Partitionner ! en # parties de tailles
sensiblement similaires, !$, !&, … !(,
2. Pour chaque valeur de ) = 1, … , # :
• Entraîner un modèle sur ⋃-./!- ,
• Évaluer ce modèle sur !/.
Chaque partition de ! en deux ensembles !/ et ⋃-./!-
est appelé un fold de la validation croisée.
131
Validation croisée
Chaque observation étiquetée du jeu ! appartient à
un unique jeu de test, et à (# − 1) jeux
d’entrainement.
Cette procédure génère une prédiction par observation
de !.
Pour conclure sur la performance du modèle, on peut :
• Soit évaluer la qualité des prédictions sur !.
• Soit évaluer la qualité de chacun des '
prédicteurs sur le jeu de test !( correspondant,
et moyenner leurs performances. Cette deuxième
approche permet aussi de rapporter l’écart-type
de ces performances, ce qui permet de se faire
une meilleure idée de la variabilité de la qualité
des prédictions en fonction des données
d’entraînement.
132
Validation croisée Leave-one-out :
Une validation croisée dont le nombre de folds est égal au nombre
d’observations dans le jeu d’entraînement, et dont chaque fold est
donc composé d’un jeu d’entraînement de taille ! − 1 et d’un jeu de
test de taille 1 est appelé leave one out.
Validation croisée
133
Validation croisée
L’évaluation par leave-one-out présente deux inconvénients
:
• Elle requiert un grand temps de calcul : on entraîne n
modèles, chacun sur n−1 observations, au lieu de (dans
le cas K = 10) 10 modèles, chacun sur 90 % des
observations.
• De plus, les jeux d’entraînement ainsi formés sont très
similaires entre eux. Les modèles entraînés seront eux
aussi très similaires, et généralement peu différents
d’un modèle entraîné sur l’intégralité du jeu de
données. Par contre, les jeux de test seront disjoints, et
les performances pourront ainsi avoir une grande
variabilité, ce qui compliquera leur interprétation.
Validation croisée Leave-one-out :
from sklearn.model_selection import Kfold
from sklearn.model_selection import LeaveOneOut
Sélection de modèles
134
Le traitement d’un problème de modélisation décisionnelle à
partir d’un ensemble de données !" nécessite l’évaluation de
plusieurs « procédures » de modélisation :
• la famille de modèles ,
• des paramètres spécifiques à la famille choisie (par ex. K
pour KNN, max_depth pour decision tree, le type et la
variance du noyau pour une SVM),
• Le critère de régularisation etc
Ces paramètres sont appelés « hyperparamètres
».
Comment choisir de « bonnes »
valeurs pour ces hyperparamètres
?
Sélection de modèles
1. Recherche systématique : Grid Search
135
Les meilleures valeurs des hyperparamètres sont identifiées de la
manière suivante :
1.Définition d’ensembles de valeurs pour les éventuels
hyperparamètres nominaux
2.Définition d’intervalles de variation pour les
hyperparamètres numériques et d’une procédure
d’exploration de cet espace.
3.Exploration de l’espace des hyperparamètres suivant la
procédure choisie. Pour chaque tuple de valeurs (une valeur
pour chaque hyperparamètre), apprentissage et évaluation
des modèles résultants par application de la validation
croisée.
4.Comparaison des résultats de validation croisée, sélection
des valeurs des hyperparamètres qui mènent aux
meilleures performances (à l’erreur de généralisation
estimée la plus faible).
136
Sélection de modèles
2. Recherche aléatoire : Randomized parameter
optimization
o Des connaissances à priori permettent de privilégier certains
intervalles de variation pour les hyperparamètres è générer
des valeurs conformes à ces connaissancesè meilleure
efficacité qu’avec une grid search non hiérarchique.
o Pour chaque hyperparamètre :
• une loi de tirage est définie,
• ensuite des tuples de valeurs (une valeur pour chaque
hyperparamètre) sont obtenues,
• et un modèle est appris avec ce tuple de valeurs.
Les échantillons sont générés en considérant les
hyperparamètres indépendants.
è Le coût peut être maîtrisé en fixant le nombre
d’échantillons à générer.
137
Les modalités d’échantillonnage dépendent de la nature des
hyperparamètres considérés :
• Pour les hyperparamètres numériques à valeurs
continues (par ex. la pondération ! de la régularisation),
on précise la loi d’échantillonnage (par ex. loi gamma de
paramètres donnés)
• Pour les hyperparamètres numériques à valeurs discrètes
(par ex. nombre de neurones cachés) on précise la loi
d’échantillonnage, par ex. loi uniforme sur un intervalle
donné ;
• Pour les hyperparamètres variables nominales, on
précise la liste des valeurs (modalités) possibles et on
considère une loi uniforme sur ces valeurs.
Sélection de modèles
2. Recherche aléatoire : Randomized parameter
optimization
Critères de performance
1. Mesure de l ’exactitude à l’aide de la validation
croisée
Utiliser la fonction cross_val_score() pour évaluer votre modèle
à l’aide d’une validation croisée à K passes (k=3 par ex)
Une validation croisée à K passes consiste à partager le jeu
d’entrainement en K blocs, puis à effectuer des prédictions et à
les évaluer sur chaque bloc en utilisant un modèle entrainé sur
le reste des blocs
From sklearn.model_selection import cross_val_score
Cross_val_score(sgd_clf, X_train, y_train_5, cv=3,
scoring=« accuracy»)
138
139
o L’évaluation de base d’un modèle de classement sur un ensemble de
données est réalisée à travers le taux de mauvais classement des
données de l’ensemble de test, qui correspond à l’erreur moyenne (sur
les données de test) obtenue en utilisant la perte 0-1.
o De nombreux problèmes présentent des couts asymétriques , par ex :
• La non détection de la maladie grave d’un patient est
dramatique, alors que la détection erronée d’une telle maladie
pour un patient sain est moins problématique.
• Pour un cargo, la non détection d’un autre navire par le radar
peut mener à une collision, alors qu’une fausse alerte provoque
seulement un ralentissement temporaire.
è Comment examiner les caractéristiques de différents modèles
lorsque les couts sont asymétriques, sans fixer le « degré »
d’asymétrie ?
3. Courbes ROC
140
A partir du contenu d’une matrice de confusion, on définit les
mesures suivantes :
!"#!$%$&$'" ()*+ ," -.)$! /0!$'$1! =
3.)$! 40!$'$1!
(0')& 40!$'$1!
=
34
34 + 67
1 − :/é<$1$<$'é (()*+ ," 1)*+ /0!$'$1!) =
6)*+ 40!$'$1!
(0')& 7é?)'$1!
=
64
37 + 64
= 1 −
37
37 + 64
Idéalement :
• Toutes les détections positives devraient correspondre à
de vrais positifs : pas de faux négatifs (FN=0), ou taux de
vrais positifs =1
• Ce qui n’est pas détecté devrait correspondre aux seuls
vrais négatifs : pas de faux positifs (FP=0), ou taux de
faux positifs=0
3. Courbes ROC
141
Courbe ROC : taux de vrais positifs en fonction du taux
de faux positifs, la variable étant le seuil.
Un outil de comparaison globale est
l’aire sous la courbe ROC ( AUC :
Area Under Curve) è plus sa valeur
est élevée, plus le modèle est
intéressant (performant).
Si deux modèles ont des valeurs AUC
très proches, le choix doit être fait à
partir d’autres critères.
3. Courbes ROC

Más contenido relacionado

La actualidad más candente

Data Mining (Partie 1).pdf
Data Mining (Partie 1).pdfData Mining (Partie 1).pdf
Data Mining (Partie 1).pdfOuailChoukhairi
 
Data mining - Segmentation(k-means, cah)
Data mining - Segmentation(k-means, cah)Data mining - Segmentation(k-means, cah)
Data mining - Segmentation(k-means, cah)Mohamed Heny SELMI
 
AI Apprentissage Automatique, Machine Learnig
AI Apprentissage Automatique, Machine LearnigAI Apprentissage Automatique, Machine Learnig
AI Apprentissage Automatique, Machine LearnigFelipe Sanchez Garzon
 
Techniques du data mining
Techniques du data miningTechniques du data mining
Techniques du data miningDonia Hammami
 
BigData_TP4 : Cassandra
BigData_TP4 : CassandraBigData_TP4 : Cassandra
BigData_TP4 : CassandraLilia Sfaxi
 
Présentation PFE Hachem Selmi et Ahmed Dridi Big data
Présentation PFE Hachem Selmi et Ahmed Dridi Big data Présentation PFE Hachem Selmi et Ahmed Dridi Big data
Présentation PFE Hachem Selmi et Ahmed Dridi Big data HaShem Selmi
 
Les 10 plus populaires algorithmes du machine learning
Les 10 plus populaires algorithmes du machine learningLes 10 plus populaires algorithmes du machine learning
Les 10 plus populaires algorithmes du machine learningHakim Nasaoui
 
Cours Big Data Chap1
Cours Big Data Chap1Cours Big Data Chap1
Cours Big Data Chap1Amal Abid
 
Présentation pfe Big Data Hachem SELMI et Ahmed DRIDI
Présentation pfe Big Data Hachem SELMI et Ahmed DRIDIPrésentation pfe Big Data Hachem SELMI et Ahmed DRIDI
Présentation pfe Big Data Hachem SELMI et Ahmed DRIDIHaShem Selmi
 
Vers une plateforme intelligente pour la prévision des maladies végétales
Vers une plateforme intelligente pour la prévision des maladies végétalesVers une plateforme intelligente pour la prévision des maladies végétales
Vers une plateforme intelligente pour la prévision des maladies végétalesSarra BOUHENNI
 
Cours Big Data Chap2
Cours Big Data Chap2Cours Big Data Chap2
Cours Big Data Chap2Amal Abid
 
Les arbres de décisions
Les arbres de décisionsLes arbres de décisions
Les arbres de décisionsMariem Chaaben
 
Analyse de sentiments dans les médias sociaux
Analyse de sentiments dans les médias sociauxAnalyse de sentiments dans les médias sociaux
Analyse de sentiments dans les médias sociauxYacine Yakoubi
 
Rapport-du-projet CNN.docx
Rapport-du-projet CNN.docxRapport-du-projet CNN.docx
Rapport-du-projet CNN.docxkhalil Ismail
 
Recherche à voisinage variable
Recherche à voisinage variableRecherche à voisinage variable
Recherche à voisinage variableMohammed Mansouri
 
Clustering: Méthode hiérarchique
Clustering: Méthode hiérarchiqueClustering: Méthode hiérarchique
Clustering: Méthode hiérarchiqueYassine Mhadhbi
 

La actualidad más candente (20)

Data Mining (Partie 1).pdf
Data Mining (Partie 1).pdfData Mining (Partie 1).pdf
Data Mining (Partie 1).pdf
 
Data mining - Segmentation(k-means, cah)
Data mining - Segmentation(k-means, cah)Data mining - Segmentation(k-means, cah)
Data mining - Segmentation(k-means, cah)
 
arbres de decision.ppt
arbres de decision.pptarbres de decision.ppt
arbres de decision.ppt
 
AI Apprentissage Automatique, Machine Learnig
AI Apprentissage Automatique, Machine LearnigAI Apprentissage Automatique, Machine Learnig
AI Apprentissage Automatique, Machine Learnig
 
Data mining - Associativité
Data mining - AssociativitéData mining - Associativité
Data mining - Associativité
 
Techniques du data mining
Techniques du data miningTechniques du data mining
Techniques du data mining
 
BigData_TP4 : Cassandra
BigData_TP4 : CassandraBigData_TP4 : Cassandra
BigData_TP4 : Cassandra
 
Présentation PFE Hachem Selmi et Ahmed Dridi Big data
Présentation PFE Hachem Selmi et Ahmed Dridi Big data Présentation PFE Hachem Selmi et Ahmed Dridi Big data
Présentation PFE Hachem Selmi et Ahmed Dridi Big data
 
Les 10 plus populaires algorithmes du machine learning
Les 10 plus populaires algorithmes du machine learningLes 10 plus populaires algorithmes du machine learning
Les 10 plus populaires algorithmes du machine learning
 
Cours Big Data Chap1
Cours Big Data Chap1Cours Big Data Chap1
Cours Big Data Chap1
 
Présentation pfe Big Data Hachem SELMI et Ahmed DRIDI
Présentation pfe Big Data Hachem SELMI et Ahmed DRIDIPrésentation pfe Big Data Hachem SELMI et Ahmed DRIDI
Présentation pfe Big Data Hachem SELMI et Ahmed DRIDI
 
Vers une plateforme intelligente pour la prévision des maladies végétales
Vers une plateforme intelligente pour la prévision des maladies végétalesVers une plateforme intelligente pour la prévision des maladies végétales
Vers une plateforme intelligente pour la prévision des maladies végétales
 
Cours Big Data Chap2
Cours Big Data Chap2Cours Big Data Chap2
Cours Big Data Chap2
 
Les arbres de décisions
Les arbres de décisionsLes arbres de décisions
Les arbres de décisions
 
Machine-learning-FR.pdf
Machine-learning-FR.pdfMachine-learning-FR.pdf
Machine-learning-FR.pdf
 
Analyse de sentiments dans les médias sociaux
Analyse de sentiments dans les médias sociauxAnalyse de sentiments dans les médias sociaux
Analyse de sentiments dans les médias sociaux
 
Rapport-du-projet CNN.docx
Rapport-du-projet CNN.docxRapport-du-projet CNN.docx
Rapport-du-projet CNN.docx
 
Arbre de décision
Arbre de décisionArbre de décision
Arbre de décision
 
Recherche à voisinage variable
Recherche à voisinage variableRecherche à voisinage variable
Recherche à voisinage variable
 
Clustering: Méthode hiérarchique
Clustering: Méthode hiérarchiqueClustering: Méthode hiérarchique
Clustering: Méthode hiérarchique
 

Similar a Apprentissage supervisé.pdf

FLTauR - Construction de modèles de prévision sous r avec le package caret
FLTauR - Construction de modèles de prévision sous r avec le package caretFLTauR - Construction de modèles de prévision sous r avec le package caret
FLTauR - Construction de modèles de prévision sous r avec le package caretjfeudeline
 
Arbre de décision.pdf
Arbre de décision.pdfArbre de décision.pdf
Arbre de décision.pdfimane26
 
comprehension clustering CHA.pdf
comprehension clustering CHA.pdfcomprehension clustering CHA.pdf
comprehension clustering CHA.pdfMarckKerbergKouassi
 
melange de gaussienne
melange de gaussiennemelange de gaussienne
melange de gaussienneomri med
 
Presentation - Automated Variable Weighting in k-Means Type Clustering
Presentation - Automated Variable Weighting in k-Means Type ClusteringPresentation - Automated Variable Weighting in k-Means Type Clustering
Presentation - Automated Variable Weighting in k-Means Type ClusteringFranck Dernoncourt
 
Data Mining (Partie 3).pdf
Data Mining (Partie 3).pdfData Mining (Partie 3).pdf
Data Mining (Partie 3).pdfOuailChoukhairi
 
Ch6 Introduction à la Science de Données.pdf
Ch6 Introduction à la Science de Données.pdfCh6 Introduction à la Science de Données.pdf
Ch6 Introduction à la Science de Données.pdfnesrinetaamallah
 
optimisation cours.pdf
optimisation cours.pdfoptimisation cours.pdf
optimisation cours.pdfMouloudi1
 
les arbres de décision ou de régression
les arbres de décision ou de régression les arbres de décision ou de régression
les arbres de décision ou de régression Mariem Chaaben
 
fr_Tanagra_Naive_Bayes_Classifier_Explained.pdf
fr_Tanagra_Naive_Bayes_Classifier_Explained.pdffr_Tanagra_Naive_Bayes_Classifier_Explained.pdf
fr_Tanagra_Naive_Bayes_Classifier_Explained.pdfSidiAbdallah1
 
Machine Learning Support Vector Machines.pdf
Machine Learning Support Vector Machines.pdfMachine Learning Support Vector Machines.pdf
Machine Learning Support Vector Machines.pdfYounesOuladSayad1
 
toaz.info-clustering-1-pr_7c021feec2e58f2cfdcdf6fe5c0cfc03.pdf
toaz.info-clustering-1-pr_7c021feec2e58f2cfdcdf6fe5c0cfc03.pdftoaz.info-clustering-1-pr_7c021feec2e58f2cfdcdf6fe5c0cfc03.pdf
toaz.info-clustering-1-pr_7c021feec2e58f2cfdcdf6fe5c0cfc03.pdfPenielLoyi
 
Algorithmes machine learning/ neural network / deep learning
Algorithmes machine learning/ neural network / deep learningAlgorithmes machine learning/ neural network / deep learning
Algorithmes machine learning/ neural network / deep learningBassem Brayek
 
Rapport de stage fatma karem
Rapport de stage fatma karemRapport de stage fatma karem
Rapport de stage fatma karemfatmakarem
 
TP_Réseaux_de_neurones_Safae_ElOmari.pdf
TP_Réseaux_de_neurones_Safae_ElOmari.pdfTP_Réseaux_de_neurones_Safae_ElOmari.pdf
TP_Réseaux_de_neurones_Safae_ElOmari.pdfSafaeElOmari
 
Recursive Neural Network summary
Recursive Neural Network summaryRecursive Neural Network summary
Recursive Neural Network summaryStephen Larroque
 

Similar a Apprentissage supervisé.pdf (20)

FLTauR - Construction de modèles de prévision sous r avec le package caret
FLTauR - Construction de modèles de prévision sous r avec le package caretFLTauR - Construction de modèles de prévision sous r avec le package caret
FLTauR - Construction de modèles de prévision sous r avec le package caret
 
Arbre de décision.pdf
Arbre de décision.pdfArbre de décision.pdf
Arbre de décision.pdf
 
comprehension clustering CHA.pdf
comprehension clustering CHA.pdfcomprehension clustering CHA.pdf
comprehension clustering CHA.pdf
 
melange de gaussienne
melange de gaussiennemelange de gaussienne
melange de gaussienne
 
Comparaison
ComparaisonComparaison
Comparaison
 
Presentation - Automated Variable Weighting in k-Means Type Clustering
Presentation - Automated Variable Weighting in k-Means Type ClusteringPresentation - Automated Variable Weighting in k-Means Type Clustering
Presentation - Automated Variable Weighting in k-Means Type Clustering
 
Data Mining (Partie 3).pdf
Data Mining (Partie 3).pdfData Mining (Partie 3).pdf
Data Mining (Partie 3).pdf
 
Ch6 Introduction à la Science de Données.pdf
Ch6 Introduction à la Science de Données.pdfCh6 Introduction à la Science de Données.pdf
Ch6 Introduction à la Science de Données.pdf
 
Mise en oeuvre des framework de machines et deep learning v1
Mise en oeuvre des framework de machines et deep learning v1 Mise en oeuvre des framework de machines et deep learning v1
Mise en oeuvre des framework de machines et deep learning v1
 
optimisation cours.pdf
optimisation cours.pdfoptimisation cours.pdf
optimisation cours.pdf
 
les arbres de décision ou de régression
les arbres de décision ou de régression les arbres de décision ou de régression
les arbres de décision ou de régression
 
Cours cluster si2e
Cours cluster si2eCours cluster si2e
Cours cluster si2e
 
fr_Tanagra_Naive_Bayes_Classifier_Explained.pdf
fr_Tanagra_Naive_Bayes_Classifier_Explained.pdffr_Tanagra_Naive_Bayes_Classifier_Explained.pdf
fr_Tanagra_Naive_Bayes_Classifier_Explained.pdf
 
Machine Learning Support Vector Machines.pdf
Machine Learning Support Vector Machines.pdfMachine Learning Support Vector Machines.pdf
Machine Learning Support Vector Machines.pdf
 
toaz.info-clustering-1-pr_7c021feec2e58f2cfdcdf6fe5c0cfc03.pdf
toaz.info-clustering-1-pr_7c021feec2e58f2cfdcdf6fe5c0cfc03.pdftoaz.info-clustering-1-pr_7c021feec2e58f2cfdcdf6fe5c0cfc03.pdf
toaz.info-clustering-1-pr_7c021feec2e58f2cfdcdf6fe5c0cfc03.pdf
 
Algorithmes machine learning/ neural network / deep learning
Algorithmes machine learning/ neural network / deep learningAlgorithmes machine learning/ neural network / deep learning
Algorithmes machine learning/ neural network / deep learning
 
Rapport de stage fatma karem
Rapport de stage fatma karemRapport de stage fatma karem
Rapport de stage fatma karem
 
TP_Réseaux_de_neurones_Safae_ElOmari.pdf
TP_Réseaux_de_neurones_Safae_ElOmari.pdfTP_Réseaux_de_neurones_Safae_ElOmari.pdf
TP_Réseaux_de_neurones_Safae_ElOmari.pdf
 
Diviser Pour Régner
Diviser Pour RégnerDiviser Pour Régner
Diviser Pour Régner
 
Recursive Neural Network summary
Recursive Neural Network summaryRecursive Neural Network summary
Recursive Neural Network summary
 

Apprentissage supervisé.pdf

  • 1. Contenu du chapitre 2 L’apprentissage supervisé • Définition • Algorithmes – Les k plus proches voisins – Les arbres de décisions – Régression linéaire – Régression logistique – SVM – Classification naïve bayésienne – Le perceptron – Etc.
  • 2. L’apprentissage supervisé permet de construire des modèles à partir d’exemples d’apprentissage ou d’entrainement dont on connait le comportement ou la réponse. à Un expert est employé pour étiqueter correctement ces exemples. 1. Définition 63
  • 3. Formulation : != ("1,…,"#) : vecteur de valeurs N : la taille de jeux de test U = (u1,…,u#) : valeur supervisée ou réponse supervisée S = (xi ; ui ) i:1..N : la base d’apprentissage (xi ; ui ) : un couple / un échantillon F: Xà U : fonction d’apprentissage But : Le but d’un algorithme d’apprentissage supervisé sera donc d’approcher ce4e fonction F, uniquement à partir des exemples d’apprentissage et en cherchant une loi de dépendance entre x et u. 64 1. Définition
  • 4. Les différentes représentations : • Si f est une fonction continue on parle alors de régression. • Si f est une fonction discrète on parle alors de classification. • Si f est une fonction binaire on parle alors d’apprentissage de concept. Les méthodes de classification supervisée peuvent être basées sur : -des notions de proximité (cas du k plus proches voisins) -des hypothèses probabilistes (cas du classifieur naïf bayésien) -des recherches dans des espaces d'hypothèses (cas des arbres de décisions). 65 1. Définition
  • 5. Problème Linéaire et Non-Linéaire Un problème est linéairement séparable si les exemples de classes différentes sont complètement séparables par un hyperplan. Ce genre de problème se résout par des classifieurs assez simples, qui ont pour but de trouver l'équation de l'hyperplan séparateur. àFrontières de décisions linéaires Mais, le problème peut également être non séparable de manière linéaire. Dans ce cas, il faut utiliser d'autres types de classifieurs, souvent plus longs à paramétrer, mais qui obtiennent des résultats plus précis. 66 1. Définition
  • 6. Les algorithmes : – Les k plus proches voisins – Les arbres de décisions – Régression linéaire – Régression logistique – SVM – Classification naïve bayésienne – Le perceptron – Etc. 2. Les algorithmes d’apprentissage supervisé 67
  • 7. • Le classifieur des k plus proches voisins ou k-ppv (k- Nearest Neighbor ou k-NN) permet de classifier un exemple en choisissant la classe dominante parmi les k plus proches "voisins" (par mesure de distance). • Principe : Un exemple est classifié par vote majoritaire de ses k "voisins" (par mesure de distance), c'est-à-dire qu'il est prédit de classe C si la classe la plus représentée parmi ses k voisins est la classe C. • Deux choix à faire : – La distance – La valeur de k 2.1 Les k plus proches voisins (KNN) 68
  • 8. a) Exemples de distances 2.1 Les k plus proches voisins (KNN) 69 Distance de Manha-an Distance Euclidienne Distance dk Distance du maximum Pour des variables continues :
  • 9. a) Exemples de distances 2.1 Les k plus proches voisins (KNN) 70 Pour des variables discrètes : Distance de Hamming
  • 10. b) Choix du k • Le choix du k est très important pour la classification. • On s’abstient de choisir des valeurs paires de k, pour éviter les cas d'égalité Pour k=1, le résultat est un plus Pour k=2, le résultat est indéterminé Pour k=5, le résultat est un moins 71 2.1 Les k plus proches voisins (KNN)
  • 11. b) Choix du k • k n'est pas un paramètre mais un hyperparamètre, c'est à dire que contrairement aux paramètres classiques, il ne va pas pouvoir être appris automatiquement par l'algorithme à partir des données d'entraînement. • Les hyperparamètres perme>ent de caractériser le modèle (e.g. complexité, rapidité de convergence etc). Ce ne sont pas les données d'apprentissage qui vont perme>re de trouver ces paramètres (en l'occurence ici le nombre de voisins k) mais bien à nous de l'optimiser, à l'aide du jeu de données de validation. 72 2.1 Les k plus proches voisins (KNN)
  • 12. c) Pseudo-Algorithme !−""# Déclarations - M : nombre de classes d’apprentissage $= %1,…,%& ; - N : nombre d’exemples d’entrainement '= (1,…,() ; - '*+= (,,%- : ensemble d’apprentissage - (. : exemple test /*dont on cherche la classe d’appartenance*/ Début < On cherche à classer (. ? > ; Pour Chaque exemple (, Є '*+ Faire < Calculer la distance / entre (, et (. > ; FPour < Trier les échantillons (, par ordre croissant des distances > ; Pour les - plus proches (, de (. (les - premières – ayant les plus petites- / ) Faire < Compter le nombre d’occurrences de chaque classe > ; FPour < AQribuer à (. la classe %0 la plus fréquente > ; /*Celle qui apparait le plus souvent*/ Fin. 73 2.1 Les k plus proches voisins (KNN)
  • 13. • KNN pour la classification – Sélection des k plus proches exemples x1..xk. – Choix de la classe la plus présente parmi les u1…uk correspondants. • KNN pour la régression – Sélection des k plus proches exemples x1...xk. – Le résultat : 74 2.1 Les k plus proches voisins (KNN)
  • 14. Exemple : Client loyal ou non ? 75 2.1 Les k plus proches voisins (KNN)
  • 15. Exemple : Client loyal ou non ? 76 2.1 Les k plus proches voisins (KNN) En utilisant la distance euclidienne et pour k=3, déterminer est-ce que David va être loyal ou non ?
  • 16. Prédiction : David est un client loyal 77 2.1 Les k plus proches voisins (KNN)
  • 17. Exercice sur l’algorithme des k plus proches voisins Nous considérons le problème de classification binaire où l’espace des entrées est X = [0; 1] et l’espace des sorties est {0; 1}. La base d’apprentissage est (X1 = 0, 8 ; Y1 = 1),(X2 = 0, 4 ; Y2 = 0),(X3 = 0, 7 ; Y3 = 1). Donner la valeur prédite pour toute nouvelle entrée x ∈ X (a) par l’algorithme des 3-p.p.v. (b) par l’algorithme du p.p.v 78 2.1 Les k plus proches voisins (KNN)
  • 18. Discussion • La méthode peut s'appliquer dès qu'il est possible de définir une distance sur les champs • La méthode permet de traiter des problèmes avec un grand nombre d'a9ributs. • Plus le nombre d'a9ributs est important, plus le nombre d'exemples doit être grand. • Les performances de la méthode dépendent du choix de la distance et du nombre k de voisins (une heuristique fréquemment utilisée est de prendre k égal au nombre d'a9ributs plus 1). 79 2.1 Les k plus proches voisins (KNN)
  • 19. • Les arbres de décision sont un outil d’identification basé sur la résolution de problèmes à l’aide de questions/réponses. • La racine constitue le point de départ de l'arbre et représente l'ensemble des données d'apprentissage. Puis ces données sont segmentées en plusieurs sous-groupes, en fonction d'une variable discriminante (un des aAributs). • Chaque nœud de l’arbre correspond à une question portant sur un aAribut. Chaque feuille de l’arbre correspond à une classe ou une valeur ( pour respectivement la classification ou la régression) . 80 2.2 Les arbres de décision
  • 20. Exemple introductif La première variable discriminante est la température corporelle : elle divise la population en deux sous-groupes. Le processus est ensuite réitéré au deuxième niveau de l'arbre, ou les sous-populations sont segmentées à leur tour en fonction d'une autre valeur discriminante (la toux). Les classes : malade ou sain 81 2.2 Les arbres de décision
  • 21. Une fois l'arbre construit à partir des données d'apprentissage, on peut prédire un nouveau cas en le faisant descendre le long de l'arbre, jusqu'à une feuille. Comment construire l’arbre ? Avec quel a4ribut on va commencer ? • Il faut donc une fonction de choix qui mesure et évalue la qualité d'une segmentation et sélectionne la meilleure variable sur chaque sommet. • Grace à ce>e fonction, l'algorithme de création des arbres de décision fait automatiquement la sélection d'a>ributs jugés pertinents, et ce, même sur des volumes de données importants. 82 2.2 Les arbres de décision
  • 22. a) La fonction de choix • Ce#e fonction permet de mesurer le degré de mélange des exemples de plusieurs classes à chaque nœud de l’arbre. • Elle doit sélectionner le test minimisant le « désordre » dans les nouveaux nœuds obtenus après application du test : le test choisi doit séparer au mieux les exemples de différentes classes. • Ce que l'on veut : une formule qui donne une valeur grande si le test produit des groupes homogènes et une valeur faible s'il conduit à des groupes hétérogènes. à Mesure d’entropie ou Critère de Gini 83 2.2 Les arbres de décision
  • 23. a) La fonction de choix • Exemples de Fonctions Mélanges – Fonction d’Entropie – Fonction de Gini 84 2.2 Les arbres de décision Avec, c classes, p nœud/variable P(k/p) proportion des individus appartenant à la classe k parmi ceux de la position !.
  • 24. b) La fonction de gain d’information – Pour la fonction d’Entropie – Pour la fonction de Gini 85 2.2 Les arbres de décision Choisir l’a>ribut avec le plus grand gain d’information i.e. minimisant l’entropie croisée
  • 25. Exemple avec la fonction Entropie Données : un tableau d'observations 86 2.2 Les arbres de décision Problème : Pourquoi certains a4rapent un coup de soleil ? Comment prédire le résultat pour une nouvelle personne (coup de soleil ou RAS : Rien A Signaler) ?
  • 26. Exemple avec la fonction Entropie 87 2.2 Les arbres de décision E = ensemble des 8 exemples entropie(E) = - 5/8 log2 (5/8) - 3/8 log2 (3/8) = 0.42 + 0.53 = 0.95 Entcroisee(Taille) = prob(petit)*entropie(E, petit) + prob(moyen)* entropie(E, moyen) + prob(grand)* entropie(E, grand) = 3/8 [ -1/3*log2 (1/3) –2/3*log2 (2/3) ] + 3/8 [ -1/3*log2 (1/3) –2/3*log2 (2/3) ] + 2/8 [ -1*log2 (1) –0*log2 (0) ] = 0.344 + 0.344 + 0 = 0.69
  • 27. Exemple avec la fonction Entropie 88 2.2 Les arbres de décision E = ensemble des 8 exemples IG(E, Taille) = 0.95 - 0.69; IG(E, Cheveux) = 0.95 - 0.5; IG(E, Poids) = 0.95 - 0.94; IG(E, Lotion) = 0.95 - 0.61 -> Choix de l'aHribut Cheveux
  • 28. Exemple avec la fonction Entropie 89 2.2 Les arbres de décision Le choix de l'a,ribut cheveux permet de discriminer 4 exemples (3 pour la valeur Brune et 1 pour la valeur rousse). L’étape suivante : chercher l’a,ribut qui va discriminer les 4 exemples (blonde) non discriminés par Cheveux.
  • 29. Exemple avec la fonction Entropie 90 2.2 Les arbres de décision E = ensemble des 4 personnes IG(E, Taille) = 0.5; IG(E, Poids) = 1; IG(E, Lotion) = 0 -> Choix de l'a?ribut Lotion
  • 30. Exemple avec la fonction Entropie 91 2.2 Les arbres de décision Arbre obtenu
  • 31. Exemple avec la fonction Entropie 92 2.2 Les arbres de décision Par curiosité : autre arbre possible
  • 32. Exemple avec la fonction de Gini Données : ensemble des clients d’une compagnie d’assurance 93 2.2 Les arbres de décision Problème : Comment prédire le résultat internet pour un client (le client consulte ses comptes sur internet ou non ) ?
  • 33. Exemple avec la fonction de Gini Avec 8 clients dont : 3 (oui) et 5 (non), le mélange initial (selon Gini) : 94 2.2 Les arbres de décision
  • 34. Exemple avec la fonction de Gini • La construction est descendante : on commence par tester les candidats à la racine. • Au début, tous les individus sont regroupés (au niveau 0, la racine de l’arbre). • Ainsi, quatre (04) constructions sont possibles, suivant les variables : Montant (M), âge (A), résidence (R) et études (E). 95 2.2 Les arbres de décision
  • 35. Exemple avec la fonction de Gini • Construction selon la variable M (Montant) 96 2.2 Les arbres de décision
  • 36. Exemple avec la fonction de Gini • Construction selon la variable A (âge) • Construc5on selon la variable R (Résidence) 97 2.2 Les arbres de décision
  • 37. Exemple avec la fonction de Gini • Construction selon la variable E (étude) 98 2.2 Les arbres de décision
  • 38. Exemple avec la fonction de Gini • Choix de la variable Age : • Le Premier Niveau de l’Arbre Appris 99 2.2 Les arbres de décision
  • 39. Exemple avec la fonction de Gini • L’étape suivante : – ignorer les valeurs (les supprimer du tableau de valeurs) pour laquelle Age = jeune et Age = âgé (pour les lignes : 3, 5, 6, 7) – ne pas prendre en considération la variable Age A (retirer la colonne Age). • Puis, continuer la construction des autres niveaux selon les variables restantes M, R et E. 100 2.2 Les arbres de décision
  • 40. Exemple avec la fonction de Gini • Construction du second niveau : 101 2.2 Les arbres de décision 0,5
  • 41. Exemple avec la fonction de Gini Construction du second niveau : Ce/e construction est la dernière et termine l’arbre puisque tous les nœuds ainsi formés sont des feuilles (oui ou non). • Arbre Finalement Appris 102 2.2 Les arbres de décision
  • 42. Dans la pratique…Pour la classification
  • 43. Dans la pratique…Pour la classification
  • 44. Évaluation de l’algorithme de l’arbre de décision- Pour la classification ● Pour les tâches de classification, certaines métriques couramment utilisées sont la matrice de confusion, la précision, le rappel et le F1-score.
  • 45. Évaluation de l’algorithme de l’arbre de décision- Pour la classification ● Pour les tâches de classification, certaines métriques couramment utilisées sont la matrice de confusion, la précision, le rappel et le F1-score.
  • 46. Évaluation de l’algorithme de l’arbre de décision- Pour la classification
  • 47. Faiblesses : • C’est un algorithme Glouton, sans backtrack (sans retracer ou trace arrière). • Apprendre un arbre de décision : NP-complet • Création d’arbres trop complexes • Détection difficile des interactions entre aDributs 108 2.2 Les arbres de décision
  • 48. ● Règle de décision bayésienne: associer à chaque nouvel individu à classer la classe la plus probable. ● Fonction de classement définie par : f: R->C X(π)=X-> yj / pour tout y dans C P(yj /X)>= P(y/X) ● P(yj/X) est une probabilité a posteriori qui doit être estimée. 2.3 l’approche probabiliste
  • 49. ● Ce qui s’écrit encore -> P(X/yj) = P((X1=V1, X2=V2, ……,Xp=Vp)/yj) P(X/ yj)P(yj) P(X) j P(y /X) = P(X/ yj)P(yj) j C ∑P(X/ yi)P(yi) • avec l’hypothèse que l’ensemble {y1,y2,...,yC} constitue un système complet d’événements. • -> le problème revient donc à déterminer P(X/yj) pour chaque classe yj, j=1,…..,c P(y /X) = 2.3 l’approche probabiliste i=1
  • 50. ● Phase d’apprentissage : estimer et mémoriser la matrice des X, on C P(X/ yj)P( yj) j ∑P(X/ yi)P(yi) i=1 P(y /X) = C p probabilités conditionnelles. ● Phase de reconnaissance : pour classer un nouvel individu applique la règle de Bayes : p ∑∏P(Xk / yi)P(yi) P(yj)∏P(Xk / yj) i=1 k=1 k=1 = -> Calcul de la probabilité pour chaque classe, affectation à X la classe de plus forte probabilité. 2.3 l’approche probabiliste
  • 53. • Un algorithme de régression permet de trouver un modèle (une fonction mathématique) en fonction des données d’entrainement. Le modèle calculé permettra de donner une estimation sur une nouvelle donnée non encore vue par l’algorithme (qui ne faisait pas partie des données d’entrainement). • Les algorithmes de régression peuvent prendre plusieurs formes en fonction du modèle qu’on souhaite construire. La régression linéaire (cf Introduction ML) est le modèle le plus simple : Il consiste à trouver la meilleure droite qui s’approche le plus des données d’apprentissage. La fonction de prédiction sera donc une droite. 114 2.3 Régression linéaire
  • 54. • La régression logistique est utilisée pour estimer la probabilité qu’une observation appartienne à une classe particulière ➔ Classification. • Si la probabilité́ estimée est supérieure à 50% alors le modèle prédit que l’observation appartient à cette classe (classe positive, étiquette « 1 »), sinon il prédit qu’elle appartient à l’autre classe (classe négative, étiquette « 0 ») • c’est un classificateur binaire 115 2.4 Régression logistique
  • 55. • Un modèle de régression logistique calcule une somme pondérée des caractéristiques d’entrée (+bias), mais au lieu de fournir le résultat directement comme le fait le modèle de régression linéaire, il fournit la logistique du résultat ! " = $% & = '(%), &) -> Probabilité estimée par le modèle de régression logistique 116 2.4 Régression logistique
  • 56. 117 2.4 Régression logistique La fonction logistique (logit ! ) est une fonction sigmoïde qui renvoie des valeurs comprises entre 0 et 1. ! " = 1 1 + exp(−") Prédiction du modèle , - = . 0, ̂ 2 < 0.5 1, ̂ 2 ≥ 0.5
  • 57. • L’objectif de l’entrainement consiste à définir le vecteur des paramètres ! afin que le modèle estime des probabilités élevées pour les observations positives " = 1 et des probabilités basses pour les observations négatives " = 0 . • La fonction de coût suivante traduit cette idée dans le cas d’une unique observation d’entrainement # : C(! )= % −'() (+ ,) ./ " = 1 log(1 − 4 ,)./ " = 0 118 2.4 Régression logistique
  • 58. • La fonction de coût sur l’ensemble du jeu d’entrainement est déterminée par le coût moyen sur l’ensemble de ses observations Cette fonction de coût est convexe➔un algorithme de Descente de Gradient est utilisé pour trouver le minimum global 119 2.4 Régression logistique
  • 59. La dérivée partielle de la fonction de cout par rapport au jième paramètre du modèle ! se calcule comme suit : 120 2.4 Régression logistique
  • 60. 2.5 SVM • Une machine à vecteurs de support ou séparateur à vaste marge (SVM) est un modèle d’apprentissage automatique capable d’effectuer des classifications linéaires ou non linéaires, des régressions. • 1982: SVM linéaire • 1992: introduire des noyaux non linéaires pour étendre le SVM au cas non-linéaire 121
  • 61. 2.5 SVM • Modèle de classificateur SVM linéaire prédit la classe d’une nouvelle instance ! en calculant simplement la fonc8on de décision : • "#. ! + $ = "%!% + ⋯ + "'!' + $ 122
  • 62. 2.5 SVM • Entrainer un classificateur SVM linéaire consiste à trouver les valeurs de ! et de " rendant cette marge aussi large que possible tout en évitant les empiètements de marge (marge rigide) ou en les limitant (marge souple) 123
  • 63. 2.5 SVM à noyau • Pour surmonter les inconvénients des cas non linéairement séparable, l’idée des SVM est de changer l’espace des données. • La transformation non linéaire des données peut permettre une séparation linéaire des exemples dans un nouvel espace ➔ un changement de dimension. 124
  • 64. 2.5 SVM à noyau • Cette nouvelle dimension est appelé« espace de re-description » • Plus la dimension de l’espace de re- description est grande, plus la probabilité de pouvoir trouver un hyperplan séparateur entre les exemples est élevée. • Cette transformation non linéaire est réalisée via une fonction noyau. 125
  • 65. 126 2.5 SVM à noyau
  • 66. Evaluation des modèles Une méthode générale pour estimer le risque espéré est celle des données de test : 1.L’ensemble de données disponibles !" est partitionné en deux ensembles mutuellement exclusifs par sélection aléatoire : • les données d’apprentissage # (par ex. env. 70% du nombre total) • les données de validation T (par ex. 30% du nombre total). 2.L’apprentissage du modèle est réalisé sur les données de l’ensemble # . 3.Le risque espéré du modèle résultant est estimé sur les données de T . 127
  • 67. Difficultés de cette approche : • La mise de côté des données de test réduit le nombre de données utilisée pour l’apprentissage. • Cet estimateur du risque espéré a une variance élevée (un autre partitionnement produira d’autres ensemble d’apprentissage et de test). Validation croisée (cross-validation) : Øplusieurs partitionnement apprentissage / test Øobtenir à chaque fois un modèle sur les données d’apprentissage et l’évaluer sur les données de test associées, Øemployer la moyenne comme estimation du risque espéré 128 Evaluation des modèles
  • 68. 129 Validation croisée La séparation d’un jeu de données en un jeu d’entraînement et un jeu de test est nécessairement arbitraire. Nous risquons ainsi d’avoir, par hasard, créé des jeux de données qui ne sont pas représentatifs. Pour éviter ce problème, il est souhaitable de reproduire plusieurs fois la procédure, puis de moyenner les résultats obtenus afin de moyenner ces effets aléatoires. è C’est le principe de la validation croisée.
  • 69. 130 Validation croisée Définition : Etant donnés un jeu ! de " observations et un nombre # , on appelle validation croisée la procédure qui consiste à : 1. Partitionner ! en # parties de tailles sensiblement similaires, !$, !&, … !(, 2. Pour chaque valeur de ) = 1, … , # : • Entraîner un modèle sur ⋃-./!- , • Évaluer ce modèle sur !/. Chaque partition de ! en deux ensembles !/ et ⋃-./!- est appelé un fold de la validation croisée.
  • 70. 131 Validation croisée Chaque observation étiquetée du jeu ! appartient à un unique jeu de test, et à (# − 1) jeux d’entrainement. Cette procédure génère une prédiction par observation de !. Pour conclure sur la performance du modèle, on peut : • Soit évaluer la qualité des prédictions sur !. • Soit évaluer la qualité de chacun des ' prédicteurs sur le jeu de test !( correspondant, et moyenner leurs performances. Cette deuxième approche permet aussi de rapporter l’écart-type de ces performances, ce qui permet de se faire une meilleure idée de la variabilité de la qualité des prédictions en fonction des données d’entraînement.
  • 71. 132 Validation croisée Leave-one-out : Une validation croisée dont le nombre de folds est égal au nombre d’observations dans le jeu d’entraînement, et dont chaque fold est donc composé d’un jeu d’entraînement de taille ! − 1 et d’un jeu de test de taille 1 est appelé leave one out. Validation croisée
  • 72. 133 Validation croisée L’évaluation par leave-one-out présente deux inconvénients : • Elle requiert un grand temps de calcul : on entraîne n modèles, chacun sur n−1 observations, au lieu de (dans le cas K = 10) 10 modèles, chacun sur 90 % des observations. • De plus, les jeux d’entraînement ainsi formés sont très similaires entre eux. Les modèles entraînés seront eux aussi très similaires, et généralement peu différents d’un modèle entraîné sur l’intégralité du jeu de données. Par contre, les jeux de test seront disjoints, et les performances pourront ainsi avoir une grande variabilité, ce qui compliquera leur interprétation. Validation croisée Leave-one-out : from sklearn.model_selection import Kfold from sklearn.model_selection import LeaveOneOut
  • 73. Sélection de modèles 134 Le traitement d’un problème de modélisation décisionnelle à partir d’un ensemble de données !" nécessite l’évaluation de plusieurs « procédures » de modélisation : • la famille de modèles , • des paramètres spécifiques à la famille choisie (par ex. K pour KNN, max_depth pour decision tree, le type et la variance du noyau pour une SVM), • Le critère de régularisation etc Ces paramètres sont appelés « hyperparamètres ». Comment choisir de « bonnes » valeurs pour ces hyperparamètres ?
  • 74. Sélection de modèles 1. Recherche systématique : Grid Search 135 Les meilleures valeurs des hyperparamètres sont identifiées de la manière suivante : 1.Définition d’ensembles de valeurs pour les éventuels hyperparamètres nominaux 2.Définition d’intervalles de variation pour les hyperparamètres numériques et d’une procédure d’exploration de cet espace. 3.Exploration de l’espace des hyperparamètres suivant la procédure choisie. Pour chaque tuple de valeurs (une valeur pour chaque hyperparamètre), apprentissage et évaluation des modèles résultants par application de la validation croisée. 4.Comparaison des résultats de validation croisée, sélection des valeurs des hyperparamètres qui mènent aux meilleures performances (à l’erreur de généralisation estimée la plus faible).
  • 75. 136 Sélection de modèles 2. Recherche aléatoire : Randomized parameter optimization o Des connaissances à priori permettent de privilégier certains intervalles de variation pour les hyperparamètres è générer des valeurs conformes à ces connaissancesè meilleure efficacité qu’avec une grid search non hiérarchique. o Pour chaque hyperparamètre : • une loi de tirage est définie, • ensuite des tuples de valeurs (une valeur pour chaque hyperparamètre) sont obtenues, • et un modèle est appris avec ce tuple de valeurs. Les échantillons sont générés en considérant les hyperparamètres indépendants. è Le coût peut être maîtrisé en fixant le nombre d’échantillons à générer.
  • 76. 137 Les modalités d’échantillonnage dépendent de la nature des hyperparamètres considérés : • Pour les hyperparamètres numériques à valeurs continues (par ex. la pondération ! de la régularisation), on précise la loi d’échantillonnage (par ex. loi gamma de paramètres donnés) • Pour les hyperparamètres numériques à valeurs discrètes (par ex. nombre de neurones cachés) on précise la loi d’échantillonnage, par ex. loi uniforme sur un intervalle donné ; • Pour les hyperparamètres variables nominales, on précise la liste des valeurs (modalités) possibles et on considère une loi uniforme sur ces valeurs. Sélection de modèles 2. Recherche aléatoire : Randomized parameter optimization
  • 77. Critères de performance 1. Mesure de l ’exactitude à l’aide de la validation croisée Utiliser la fonction cross_val_score() pour évaluer votre modèle à l’aide d’une validation croisée à K passes (k=3 par ex) Une validation croisée à K passes consiste à partager le jeu d’entrainement en K blocs, puis à effectuer des prédictions et à les évaluer sur chaque bloc en utilisant un modèle entrainé sur le reste des blocs From sklearn.model_selection import cross_val_score Cross_val_score(sgd_clf, X_train, y_train_5, cv=3, scoring=« accuracy») 138
  • 78. 139 o L’évaluation de base d’un modèle de classement sur un ensemble de données est réalisée à travers le taux de mauvais classement des données de l’ensemble de test, qui correspond à l’erreur moyenne (sur les données de test) obtenue en utilisant la perte 0-1. o De nombreux problèmes présentent des couts asymétriques , par ex : • La non détection de la maladie grave d’un patient est dramatique, alors que la détection erronée d’une telle maladie pour un patient sain est moins problématique. • Pour un cargo, la non détection d’un autre navire par le radar peut mener à une collision, alors qu’une fausse alerte provoque seulement un ralentissement temporaire. è Comment examiner les caractéristiques de différents modèles lorsque les couts sont asymétriques, sans fixer le « degré » d’asymétrie ? 3. Courbes ROC
  • 79. 140 A partir du contenu d’une matrice de confusion, on définit les mesures suivantes : !"#!$%$&$'" ()*+ ," -.)$! /0!$'$1! = 3.)$! 40!$'$1! (0')& 40!$'$1! = 34 34 + 67 1 − :/é<$1$<$'é (()*+ ," 1)*+ /0!$'$1!) = 6)*+ 40!$'$1! (0')& 7é?)'$1! = 64 37 + 64 = 1 − 37 37 + 64 Idéalement : • Toutes les détections positives devraient correspondre à de vrais positifs : pas de faux négatifs (FN=0), ou taux de vrais positifs =1 • Ce qui n’est pas détecté devrait correspondre aux seuls vrais négatifs : pas de faux positifs (FP=0), ou taux de faux positifs=0 3. Courbes ROC
  • 80. 141 Courbe ROC : taux de vrais positifs en fonction du taux de faux positifs, la variable étant le seuil. Un outil de comparaison globale est l’aire sous la courbe ROC ( AUC : Area Under Curve) è plus sa valeur est élevée, plus le modèle est intéressant (performant). Si deux modèles ont des valeurs AUC très proches, le choix doit être fait à partir d’autres critères. 3. Courbes ROC