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
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.
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
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