Académique Documents
Professionnel Documents
Culture Documents
1 Introduction 5
1.1 Définition de la fouille des données ou data mining . . . . . . . . 5
1.2 Processus du data mining . . . . . . . . . . . . . . . . . . . . . . . 6
1.3 Données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4 Méthodes de data mining . . . . . . . . . . . . . . . . . . . . . . . 6
2 Clustering 8
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.1.1 Objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.1.2 Problématiques . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2 Mesure déloignement . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2.1 Définitions . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2.2 Données numériques . . . . . . . . . . . . . . . . . . . . . . 11
2.2.3 Données binaires . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2.4 Données qualitatives . . . . . . . . . . . . . . . . . . . . . 12
2.2.5 Distance entre clusters . . . . . . . . . . . . . . . . . . . . 12
2.3 Evaluation de la qualité d’un clustering . . . . . . . . . . . . . . 14
2.3.1 Inertie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.3.2 Indice de Davis-Bouldin . . . . . . . . . . . . . . . . . . . 15
2.3.3 Coefficient de silhouette . . . . . . . . . . . . . . . . . . . 15
2.3.3.1 Cohésion . . . . . . . . . . . . . . . . . . . . . . . 15
2.3.3.2 Séparation . . . . . . . . . . . . . . . . . . . . . . 15
2.3.3.3 Coefficient de silhouette . . . . . . . . . . . . . . 16
2.3.4 Stabilité d’un cluster . . . . . . . . . . . . . . . . . . . . . 16
2.4 Clusterimg partitionnel . . . . . . . . . . . . . . . . . . . . . . . . 17
2.4.1 Algorithme des centres mobiles ou K -means de Lloyd-
Forgy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.4.2 K-mean (Mc Queen) . . . . . . . . . . . . . . . . . . . . . 20
2.4.3 Nuée dynamique (Diday) . . . . . . . . . . . . . . . . . . . 20
2.5 Les méthodes hiérarchiques . . . . . . . . . . . . . . . . . . . . . . 21
2.5.1 Classification ascendante hiérachique (Cah) . . . . . . . . 21
2.5.2 Classification descendante hiérachique . . . . . . . . . . . 26
2
TABLE DES MATIÈRES 3
2.6 Clustering basé sur la densité . . . . . . . . . . . . . . . . . . . . . 26
3 Classification 27
3.1 Modélisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.2 Règles de prédiction . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.3 Algorithmes d’apprentissage . . . . . . . . . . . . . . . . . . . . . 32
3.3.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.3.2 Qualité d’un algorithme d’apprentissage . . . . . . . . . . 32
3.4 Algorithme par minimisation du risque empirique . . . . . . . . 34
3.4.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.4.2 Performance de l’algorithme par minimisation du risque
empirique . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.4.3 Cas où H est fini . . . . . . . . . . . . . . . . . . . . . . . 37
3.4.4 Théorie de Vapnik-Chervonenkis . . . . . . . . . . . . . . 39
3.4.4.1 Dimension de Vapnik . . . . . . . . . . . . . . . 39
3.4.4.2 Classement binaire avec la perte 0-1 . . . . . . 43
3.5 Evaluation du modèle . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.5.1 Erreur de généralisation . . . . . . . . . . . . . . . . . . . 44
3.5.2 Matrice de confusion . . . . . . . . . . . . . . . . . . . . . 45
3.5.3 Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.5.3.1 Méthode HoldOut . . . . . . . . . . . . . . . . . 46
3.5.3.2 Validation croisée . . . . . . . . . . . . . . . . . . 46
3.5.3.3 Bootstrap . . . . . . . . . . . . . . . . . . . . . . 47
3.5.4 Aggrégation de modèles . . . . . . . . . . . . . . . . . . . 47
3.5.4.1 Bagging . . . . . . . . . . . . . . . . . . . . . . . 47
3.5.4.2 Bootsting . . . . . . . . . . . . . . . . . . . . . . 48
3.6 K plus proches voisins . . . . . . . . . . . . . . . . . . . . . . . . . 48
3.7 Arbres de décision . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
3.7.1 Choix de la variable de segmentation . . . . . . . . . . . . 49
3.7.2 Choix de la bonne taille de l’arbre . . . . . . . . . . . . . 49
3.7.3 Algorithmes de construction d’arbres de décision . . . . . 50
3.7.3.1 Algorithme ID3 . . . . . . . . . . . . . . . . . . . 50
3.7.3.2 Algorithme C4.5 (J48) . . . . . . . . . . . . . . . 50
3.8 Régression logistique . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.9 Machine à vecteurs supports . . . . . . . . . . . . . . . . . . . . . 52
3.9.1 Principe général . . . . . . . . . . . . . . . . . . . . . . . . 52
3.9.2 SVM pour des données linéairement séparables . . . . . . 53
3.9.3 SVM pour les données linéairement non séparables . . . 59
3.9.3.1 Données presque linéairement séparables . . . . 59
3.9.3.2 Cas des données linéairement non séparables . 61
3.10 Réseaux de neurones . . . . . . . . . . . . . . . . . . . . . . . . . . 62
3.11 Classification bayésienne . . . . . . . . . . . . . . . . . . . . . . . 65
4 TABLE DES MATIÈRES
4 Regression 68
4.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
4.2 Régression linéaire simple . . . . . . . . . . . . . . . . . . . . . . . 68
4.2.1 Modélisation . . . . . . . . . . . . . . . . . . . . . . . . . . 68
4.2.2 Démarche de la régression . . . . . . . . . . . . . . . . . . 69
4.2.3 Estimateurs des moindres carrés . . . . . . . . . . . . . . 69
4.3 Régrssion linéaire multiple . . . . . . . . . . . . . . . . . . . . . . 70
4.3.1 Modélisation . . . . . . . . . . . . . . . . . . . . . . . . . . 70
4.3.2 Estimateurs des moindres carrés . . . . . . . . . . . . . . 72
4.4 SVM pour la régression (SVR) . . . . . . . . . . . . . . . . . . . . 73
Chapitre
1 Introduction
On peut définir la fouille des données ou data mining comme l’ensemble des
méthodes scientifiques destinées à l’exploration et à l’analyse de grandes bases
de données en vue de détecter dans ces données des profils-type, des compor-
tements récurrents, des règles, des liens, des tendances inconnues (non fixées
a priori), des structures particulières restituant de façon concise l’essentiel de
l’information utile pour l’aide à la décision. Elle est utilisée aujourd’hui dans
de nombreux domaines tels que :
5
6 CHAPITRE 1. INTRODUCTION
1.2 Processus du data mining
Les spécialistes du data mining obtiennent généralement des résultats fiables
en suivant un processus structuré et réitérable en six étapes :
1.3 Données
Les données peuvent être numériques ou catégorielles (qualitatives). L’ana-
lyse et le choix des outils dépendent de la nature des données.
2 Clustering
2.1 Introduction
2.1.1 Objectifs
L’objectif du clustering ou classification non supervisée est :
• de former des groupes appelés clusters (ou classe ou segments) au sein
d’une population de N individus
⋆ sur la base de l’observation des p variables X 1 , . . . , X p ;
⋆ les classes obtenues ne sont pas prédéfinies ; elles sont découvertes à
l’issu de l’opération.
• d’optimiser un critère visant à regrouper les individus dans des classes,
⋆ chacune la plus homogène possible,
⋆ entre elles, les plus distinctes.
8
2.1. INTRODUCTION 9
2.1.2 Problématiques
1. Nature des observations : données catégorielles, numériques,. . .
2. Mesure d’éloignement : notion de similarité ou de dissimilarité entre
observations
3. Définition d’un cluster
4. Evaluation de la validité d’un cluster.
5. Nombre de clusters pouvant être identifiés dans les données.
d ( x i , x j ) = s( x i , x i ) − s( x i , x j ).
s( x i , x j ) = sup d ( xl , xk ) − d ( x i , x j ).
(l,k)
n o
D max (C 1 , C 2 ) = max D ( x i , x j ), x i ∈ C 1 , x j ∈ C 2 .
• Distance moyenne :
P P
x i ∈C 1 x i ∈C 2 D ( x i , x j )
D mo y (C 1 , C 2 ) =
n1 n2
D c g ( C 1 , C 2 ) = D (µ 1 , µ 2 )
• Inertie inter-cluster :
p k D 2 (G k ,G )
X X
I inter = pk = pi;
k i ∈C k
I inter mesure l’éloignement des centres des clusters entre eux. Plus cette
inertie est grande, plus les clusters sont bien séparés.
• Inertie intra-cluster :
Xh X 2
i X
I intra = p i D ( x i ,G k ) = Ik
k i ∈C k k
où I k est l’inertie d’un cluster qui mesure la dispersion des points du
cluster autour du centre de gravité G k . Plus cette inertie est faible, plus
petite est la dispersion des points autour du centre de gravité.
• Pour obtenir une bonne partition, il faut minimiser l’inertie intra-cluster
et donc maximiser l’inertie inter-cluster
2.3. EVALUATION DE LA QUALITÉ D’UN CLUSTERING 15
2.3.2 Indice de Davis-Bouldin
Posons
1 X ³ H +H ´
k l
Hk = D ( x,G k ) DB k = max .
N k x∈C k l ̸= k D (G k ,G l )
1 XK
DB = DB k .
K k=1
La valeur DB est faible si le numérateur est petit (les clusters sont homogènes)
et le dénominateur est grand (les clusters sont bien séparés). La meilleure
partition est donc celle qui minimise la moyenne de la valeur calculée pour
chaque cluster. En d’autres termes, la meilleure partition est celle qui minimise
la similarité entre les clusters. Minimiser le DB aide aussi à déterminer le
nombre de clusters.
2.3.3.1 Cohésion
Pour x i ∈ C k , est-il proche des points du cluster auquel il appartient ? Le
coefficient de cohésion est la distance moyenne aux autres points du même
cluster :
1 X
ai = D ( x i , y).
Nk − 1 y∈C k ,y̸= x i
2.3.3.2 Séparation
Pour x i ∈ C k , est-il loin des points des autres clusters ? le coefficient de
séparation est la distance minimale par rapport aux points des clusters C l ,
l ̸= k, c’est à dire au cluster le plus proche :
1 X
b i = min D ( x i , y) H = {1, . . . , K }.
l ∈ H,l ̸= k N l y∈C
l
bi − ai
Si = .
max(a i , b i
Si on lance l’algorithme plusieurs fois sur les mêmes données avec une
initialisation différente, ou sur des sous-ensembles différents des données, ou
encore sur les mêmes données légèrement bruitées, est-ce que l’on obtient les
mêmes résultats ?
Ce critère est particulièrement pertinent pour choisir le nombre de clusters :
si le nombre de clusters choisi correspond à la structure naturelle des données,
le clustering sera plus stable que si ce n’est pas le cas. Sur l’image ci-dessous, un
algorithme qui cherche à déterminer 3 clusters va raisonnablement retrouver les
trois groupes que l’on voit. Mais si on lui demande de déterminer 2 clusters, la
répartition dans ces 2 clusters sera plus aléatoire et ne sera pas nécessairement
deux fois la même. C’est une façon de déterminer que 3 est un meilleur nombre
de clusters que 2.
2.4. CLUSTERIMG PARTITIONNEL 17
> x=c(-2,-2,0,2,-2,3)
> y=c(2,-1,-1,2,3,0)
> don=matrix(c(x,y),nrow = 6,ncol=2)
> ctre = c(-1,2,-1,3)
2.4. CLUSTERIMG PARTITIONNEL 19
> ctre1=matrix(data=ctre,nrow=2, ncol=2)
> cl1=kmeans(don,ctre1,algorithm="Lloyd")
> cl1
Cluster means:
[,1] [,2]
1 -1.5 0.75
2 2.5 1.00
Clustering vector:
[1] 1 1 1 2 1 2
Available components:
> plot(don,col=cl1$cluster)
20 CHAPITRE 2. CLUSTERING
3
2
don[,2]
1
0
−1
−2 −1 0 1 2 3
don[,1]
Entrée : X = ( x1 , . . . , x N )
1. Initialiser les N classes C k formées chacune d’une observation : C i = { x i }
et poser d C (C i , C i′ ) = d ( x i , x i′ ) ;
2. Fusionner les deux classes C l et C q les plus proches pour former une
nouvelle classe C k = C l ∪ C q tels que
d C (C l , C q ) = min
′
d C (C i , C ′i );
i,i
> data(iris)
> don=iris[,1:4]
> hc=hclust(dist(don), "ave")
> plot(hc)
Height
0 1 2 3 4
15
16 42
33
34
37
4421
32
24
27
536
2. Etape 2
1. Etape 1
38
50
8
40
28
29
41
181 45
196
17
11
4947
20
2214 23
3943
912
13 25
462 7
26
10
35
30
3143
48
129105
133
104112
117
138
111
148
113
140
142
146
116
137
149
125101
121
144
141
145 109
118 135
110
106132
119
123
108 136
131103
dist(don)
126
130 61
58
94 99
66
76
59
5578
77
87
64
92
7572
2.5. LES MÉTHODES HIÉRARCHIQUES
98
69 120
88
122115
102
143114
150
128
139 71
147
124
127 73
84
134
83
9368 63107
95
100 62
89
96
97
67
8556
91805
660
54
90
70
81
82
23
24 CHAPITRE 2. CLUSTERING
3. Etape 3
4. Etape 4
5. Etape 5
2.5. LES MÉTHODES HIÉRARCHIQUES 25
Les résultats peuvent êtres différents selon la metrique pour les clusters.
Le CAH est une méthode flexible. Le nombre de clusters n’est pas fixé
au départ. On le choisit en fonction du dendogramme. En peut evaluer les
26 CHAPITRE 2. CLUSTERING
différentes partitions en utilisant les mesures de qualité d’un clustering.
3 Classification
3.1 Modélisation
On dispose de n exemples
( x1 , y1 ), . . . , ( xn , yn )
2. Mail-spam :
— x représente l’ensemble des paramètres observables
— y représente l’étiquette associée au mail.
(
0 si le mail est un non spam
y=
1 si le mail est un spam
27
28 CHAPITRE 3. CLASSIFICATION
Il s’agit ici d’induire une fonction qui prédise les réponses associées à de
nouvelles observations en commettant une erreur de prédiction la plus faible
possible. Ainsi, on cherche une règle de prédiction ayant une bonne capacité
de généralisation.
Modélisation. On suppose que ( x1 , y1 ), . . . , ( xn , yn ) est une réalisation de va-
3.2. RÈGLES DE PRÉDICTION 29
riables aléatoires ( X 1 , Y1 ), . . . , ( X n , Yn ) i.i.d. de loi de probabilité P inconnue.
= EP (ℓ(Y , f ∗ ( X ))
= R( f ∗)
Exemple 3.2.3. Posons ℓ( y, f ( x)) = 1 y̸= f (x) . La fonction cible est la fonction f ∗
satisfaisant
f ∗ ( x) ∈ arg max P(Y = y| X = x) pour tout x ∈ X .
y∈Y
η( x) = P(Y = 1| X = x)
p( x|Y = 1)P (Y = 1)
=
p( x|Y = 1)P (Y = 1) + p( x|Y = 0)P (Y = 0)
π p 1 ( x)
=
π p 1 ( x) + (1 − π) p 0 ( x)
fbn : (X × Y )n −→ G
³ ´
( X 1 , Y1 ), . . . , ( X n , Yn ) 7−→ fbn ·, ( X 1 , Y1 ), . . . , ( X n , Yn ) .
Puisque cette différence est une variable aléatoire, on introduit d’autres me-
sures de performance déterministes telles que :
- E(R ( fbn )) − R ( f ∗ ); l’espérance est prise par rapport à la loi de l’ensemble
d’apprentissage.
- P(R ( fbn ) − R ( f ∗ ) > ε) pour un ε > 0 quelconque.
le sup étant pris sur l’ensemble de toutes les lois de probabilité sur X × Y .
En particulier, aucun algorithme d’apprentissage de classification ne peut être
uniformément universellement consistant lorsque X est infini.
Par conséquent, sans faire d’hypothèses sur la classe de distributions P qui
pourrait générer les données, on ne peut obtenir des garanties sur l’erreur
de généralisation de notre règle de classification pour un n fini donné. Ainsi,
l’absence d’algorithme universellement uniformément consistant nous amène à
définir un ”bon” algorithme d’apprentissage comme étant un algorithme uni-
versellement consistant et ayant une propriété de convergence uniforme sur
une classe P de lois de probabilités paraissant pertinente pour le problème à
traiter.
Définition 3.3.6. Soit P une classe de lois de probabilité sur X × Y . On dit
qu’un algorithme d’apprentissage est uniformement consistant sur P si
sup{E(R ( fbn )) − R ( f ∗ )}
P∈P
décroissant le plus vite possible vers 0 pour que peu de données soient néces-
saires à l’algorithme pour prédire efficacement dans le cas où P ∈ P .
34 CHAPITRE 3. CLASSIFICATION
Définition 3.3.7. Soit ε > 0. On appelle complexité en quantité de données
de P pour l’algorithme fbn , le plus petit nombre n(P , ε, fbn ) tel que pour tout
n ≥ n(P , ε, fbn ), on a
sup{E(R ( fbn )) − R ( f ∗ )} < ε.
P∈P
En d’autres termes, n(P , ε, fbn ) est la taille minimale necessaire pour garantir
un excès de risque en espérance inferieur à ε pour tout P ∈ P .
Définition 3.3.8. La complexité en données intrinsèque de P est
n(P , ε) = inf n(P , ε, fbn )
fbn
où inf est pris sur l’ensemble de tous les algorithmes d’apprentissage possibles.
Remarque 3.4.1. (i) l’algorithme doit renvoyer une règle de prédiction dont
l’erreur empirique reflète son erreur de généralisation lorsque la taille
de la base d’entraı̂nement tend vers l’infini ;
(ii) l’erreur empirique de l’algorithme doit converger vers l’erreur de géné-
ralisation de la fonction cible.
36 CHAPITRE 3. CLASSIFICATION
Nous avons la décomposition suivante
R ( fb ) − R ( f ∗ ) = R( f ) − R( f ∗) + R ( fbn ) − R ( f H ) .
| n {z } | H {z } | {z }
excès de risque erreur d’approximation erreur d’estimation
E(R ( fbn )) ≤ R ( f H ) + ∆n (H ),
où ∆n (H ) > 0 est un terme résiduel qui tend vers 0 lorsque n → +∞, c’est à
dire, en moyenne, fbn atteint le même risque que l’oracle f H à un petit terme
résiduel ∆n (H ) près. Plus généralement
E(R ( fbn )) − R ( f ∗ ) ≤ R ( f H ) − R ( f ∗ ) + ∆n (H ).
Souvent, il est désirable d’obtenir des inégalités d’oracle avec forte probabilité :
Pour tout 0 < δ < 1, avec probabilité au moins 1 − δ,
R ( fbn ) ≤ R ( f H ) + ∆n (H , δ)
R ( fbn ) − R ( f ∗ ) ≤ R ( f H ) − R ( f ∗ ) + ∆n (H , δ).
3.4. ALGORITHME PAR MINIMISATION DU RISQUE EMPIRIQUE 37
Définition 3.4.4. Un résultat probablement approximativement correct (P.A.C.)
est une affirmation du type : ∀0 < ε ≤ 1, avec une probabilité au moins 1 − ε,
l’événement A ε se produit, où ( A ε ) est une famille d’événements paramétrés
par ε.
Pour établir les inégalités précédentes, il suffit de préciser que les termes
résiduels ∆n (H ), ∆n (H , δ) qui fournissent des majorations de l’erreur d’esti-
mation. Ces majorations reposent généralement sur le lemme suivant :
H = { f1, . . . , f M }
a ≤ ℓ( y, y′ ) ≤ b. ∀ y, y′ .
R (c
f n ) − R ( f H ) ≤ 2 sup |R ( f ) − R n ( f )|.
f ∈H
³ ´ ³ t´
P R (c
f n ) − R ( f H ) > t ≤ P sup |R ( f ) − R n ( f )| >
f ∈H 2
³[ M h t i´
=P |R ( f j ) − R n ( f j )| >
j =1 2
M ³ t´
P |R ( f j ) − R n ( f j )| >
X
≤
j =1 2
Alors s
³ ´ ln(Ce)
E Z ≤ .
2n
Nous avons NA ( z1 , . . . , z n ) ≤ 2n
40 CHAPITRE 3. CLASSIFICATION
n o
Définition 3.4.6. On dit que A pulvérise l’ensemble z1 , . . . , z n si
N A ( z1 , . . . , z n ) = 2 n .
SA ( n) = max N A ( z 1 , . . . , z n ).
(z1 ,...,z n )∈Rdn
n o
VA = max n ≥ 1 : SA ( n) = 2n .
1. La borne est universelle, dans le sens où elle ne dṕend pas de la loi P.
42 CHAPITRE 3. CLASSIFICATION
2. Ce résultat généralise le Théorème 3.4.1
Lemme 3.4.4. Sauer (1972) Soit A une famille d’ensembles admettant une
dimension de Vapnik-Chervonenkis finie VA . Alors, pour tout n ≥ 1,
VA
SA ( n) ≤ C ni .
X
i =1
SA ( n) ≤ ( n + 1)VA .
Démonstration. On a
V V
A A ni V A
( n + 1)VA = C Vi A n i ≥ C ni ≥ SA ( n)
X X X
≥
i =0 i =0 i ! i =0
Nous avons
- soit SA (n) = 2n pour tout n ≥ 1 (VA = +∞)
- soit SA (n) ≤ (n + 1)VA (VA < +∞)
D’après l’inégalité de Vapnik-Chervonenkis, nous avons
s
³ ´ ln(8 eSA ( n))
E sup |Pn ( A ) − P( A )| ≤ 8
A ∈A 2n
s
VA ln( n + 1) + 4
≤8
2n
s
³ V ln( n) ´
A
=O
n
Nous avons
R ( f ) = P( f ( X ) ̸= Y ) = P(A f )
1X n
Rn( f ) = 1 f (X i )̸=Yi = Pn (A f )
n i=1
De plus, s
³ ´ ln( eS A¯( n))
E c
f n ) − inf R ( f ) ≤ 16 .
f ∈H 2n
Si VA¯ < ∞ alors
s
³ ´ ³ VA¯ ln( n) ´
E R (c
f n ) − inf R ( f ) = O .
f ∈H n
44 CHAPITRE 3. CLASSIFICATION
Théorème 3.4.2 (Vapnik-Chervonenkis). Soit X ⊂ Rd un espace vectoriel et
Y = {−1, 1} un espace de sortie et H une classe de fonctions à valeurs dans Y
et de dimension VC VH . Pour tout δ ∈]0, 1], n ≥ VH , avec une probabilité au
moins égale à 1 − δ :
s
8VH ln( 2en
V ) + 8 ln(4/δ)
H
R (c
f n ) ≤ inf R ( f ) + .
f ∈H n
s
8VH ln( 2en
V ) + 8 ln(4/δ)
H
• Si la dimension VC VH de H est finie alors lim =0
n→+∞ n
et le principe de Minimisation du Risque Empirique est consistant
quelque soit la distribution P générant les exemples.
• Vapnik (1999) a démontré pour que le principe MRE soit consistant
pour toute distribution P, il est nécessaire que la dimension VC de la
classe considérée soit finie.
D’après tout ce qui précède, nous avons le résultat suivant
Théorème 3.4.3. Quelque soit la distribution de probabilité générant les exemple,
le principe MRE est consistant si et seulement si la dimension VC de la classe
considérée est finie.
Corollaire 3.4.3 (Vapnik-Chervonenkis (1971)). Pour tout n ≥ VH avec une
probabilité d’au moins 1 − δ, nous avons
s
8VH ln( 2en
V ) + 8 ln(4/δ)
H
∀f ∈ H , R( f ) ≤ Rn( f ) + .
n
Si le modèle donne une classe positive pour un exemple d’une classe positive, on
dit que c’est un exemple vrai positif (VP). Si par contre l’exemple appartient à
la classe négative on dit que c’est un exemple faux positive (FP). Si le modèle
donne une classe négative pour un exemple d’une classe négative, le résultat
est un exemple vrai négative (VN), si, par contre, la classe de l’exemple est
positive le résultat est qualifié de fausse négative (FN). La matrice de confusion
est une matrice qui rassemble en lignes les observations ( y) et en colonnes les
prédictions fb( x). Les éléments de la matrice représentent le nombre d’exemples
correspondants à chaque cas :
hhhh
hhhh Prédictions
hhh
+1 -1
Observations hhh
hhh h
+1 VP FN
-1 FP VN
3.5.3 Evaluation
Les paramètres optimaux pour un modèle donné sont les paramètres qui
lui permettent de donner une précision de 100%. Cette situation serait idéale
si l’ensemble des exemples représentait parfaitement l’ensemble de tous les
exemples possibles. Le modèle appris peut donner une très grande précision
face aux exemples d’entrainement, mais se comporte très mal avec les nou-
veaux exemples. Cela représente un phénomène très connu en apprentissage
qui est le sur-apprentissage ou l’apprentissage par coeur. Le sur-apprentissage
donne, généralement, des modèles à faible capacité de généralisation. Les mé-
thodes d’évaluation permettent de tirer des conclusion sur le comportement
d’un modèle face à tout l’espace d’exemples en limitant l’influence des exemples
d’entrainement, du bruit qui peut y exister (erreurs d’étiquetage, erreurs d’ac-
quisition, ...) et leur ordre sur le modèle appris.
3.5.3.3 Bootstrap
La méthode de Bootstrap entraı̂ne le modèle sur un ensemble de N exemples
choisis aléatoirement de l’ensemble des exemples, des exemples peuvent être
choisis plus d’une fois et d’autre ne se seront pas choisis du tout. Les exemples
non choisis pour l’entrainement sont utilisés pour le test. Cette opération
peut être répétée plusieurs fois pour obtenir une précision moyenne du mo-
dèle. Parmi les méthodes de Bootstrap les plus utilisées, la méthode Bootstrap
”.632” qui tire son nom du fait que 63.2% des exemples contribuent à l’entrai-
nement et les restants (36.8%) contribuent aux tests. A chaque prélèvement,
un exemple a une probabilité 1/ N d’être choisi et (1 − 1/ N ) de ne pas l’être, et
puisqu’on répète le prélèvement N fois, chaque exemple aura une probabilité
de (1 − 1/ N )N de ne pas être choisi du tout dans un ensemble d’entrainement.
Si N est grand cette probabilité approche de e−1 = 0.368. La méthode répète
le processus k fois et la précision finale P est donnée par
k
X
P= (0.632 × P i test + 0.368 × P i entr )
k=1
où P i test est la précision du modèle entrainé sur les exemples choisis dans
l’itération i, appliqué sur les exemples de test dans la même itération ; P i entr
est la précision du même modèle appliqué sur les données d’entrainement.
3.5.4.1 Bagging
Cette méthode se base sur le Bootstrap. Elle subdivise l’ensemble D d’exemples
en n sous-ensembles. A partir de chaque sous-ensemble D i , on apprend un mo-
dèle M i en utilisant la méthode Bootstrap. L’ensemble de ces modèles forme
48 CHAPITRE 3. CLASSIFICATION
un modèle composé M∗ . Pour classifier un nouvel exemple, il est exposé à
chaque modèle M i pour obtenir une classe c M i . Chaque décision est considérée
comme un vote. La classe de décision est prise par vote majoritaire.
3.5.4.2 Bootsting
Dans la méthode boosting, on associe des poids aux exemples. Une série
de k modèles est itérativement apprise. Après qu’un modèle M i est construit,
les poids des exemples sont mis à jour de telle sorte à attirer l’attention du
modèle M i+1 aux exemples mal classées par le modèle M i . Le Modèle final M∗
combine les voltes des k modèles pondérés par leur précisions.
Attributs discrets
Pour les attributs discrets possédant un grand nombre de valeurs, nous
avons vu que la fonction GainRatio permettait d’éviter de privilégier ces at-
tributs. Il existe, de plus, une option de C4.5 qui permet le regroupement des
valeurs. Par exemple, si on dispose d’un attribut A prenant les valeurs a, b, c
et d, en standard le test considéré serait 4-aire. Si on active l’option regroupe-
ment, seront également considéré des tests de la forme : le test binaire A ∈ {a, b}
et A ∈ { c, d } ; le test ternaire A = a , A = c et A ∈ {b, d } ; ...
Attributs continus
Pour les attributs continus, la discrétisation peut être laissée à un expert
du domaine d’application. Par exemple, en médecine, l’expérience du domaine
3.7. ARBRES DE DÉCISION 51
peut avoir permis la mise en évidence l’existence de valeurs seuil pour un attri-
but correspond à une mesure médicale. Sinon, l’algorithme gère les attributs
continus de la façon suivante : les exemples sont triés dans l’ordre croissant
pour l’attribut continu A considéré, on considère alors tous les tests de la forme
A > a i + a i+1 /2 où a i et a i+1 sont deux valeurs consécutives de l’attribut A.
Par exemple, supposons que A prenne les valeurs 1 ; 3 ; 6 ; 10 ; 12, alors on
considère les tests A > 2 ; A > 4.5 ; A > 8 et A > 11, ces tests participent alors
à la compétition dans la recherche du test apportant le meilleur gain (fonction
Gain ou GainRatio, selon l’option choisie).
Algorithme CART
L’algorithme CART dont l’acronyme signifie ”Classification And Regression
Trees”, construit un arbre de décision d’une manière analogue à l’algorithme
ID3. Contrairement à ce dernier, l’arbre de décision généré par CART est
binaire et le critère de segmentation est l’indice de Gini. À un attribut binaire
correspond un test binaire. À un attribut qualitatif ayant n modalités, on peut
associer autant de tests qu’il y a de partitions en deux classes, soit 2 n − 1
tests binaires possibles. Enfin, dans le cas d’attributs continus, il y a une
infinité de tests envisageables. Dans ce cas, on découpe l’ensemble des valeurs
possibles en segments, ce découpage peut être fait par un expert ou fait de
façon automatique.
Forêts aléatoires
Les forêts aléatoires ont été inventées par Breiman en 2001. Elles sont en
général plus efficaces que les simples arbres de décision mais possède l’incon-
vénient d’être plus diffi- cilement interprétables. Leur construction se base sur
le bootstrap (ou le bagging). On subdivise l’ensemble de données en plusieurs
parties par le bootstrap puis on apprend un arbre de décision à partir de chaque
52 CHAPITRE 3. CLASSIFICATION
partie. Un nouvel exemple est testé par tous les arbres construits et sa classe
est la classe majoritaire.
▷ x i ∈ X = Rd .
▷ yi ∈ Y = {−1, 1}.
g( x) = si gne( f ( x)).
f ( x) = 〈ω, x〉 + b.
〈w, x i 〉 + b = ±1.
!
3.9. MACHINE À VECTEURS SUPPORTS 55
w w
r
p
d ( x, H ) = 〈 x − x∗ , x − x∗ 〉 = 〈a ,a 〉 = | a |.
∥ w∥ ∥ w∥
|〈w, x〉 + b|
d ( x, H ) = .
∥ w∥
Dans les SVM, la frontière de séparation choisie est celle qui maximise la
marge. Un hyperplan est dit canonique par rapport aux données { x1 , . . . , xn } si
min |〈w, x i 〉 + b| = 1.
i ∈{1,...,n}
!
3.9. MACHINE À VECTEURS SUPPORTS 57
Le fait d’avoir une marge plus large procure plus de sécurité lorsque l’on
classe un nouvel exemple. La partie droite nous montre qu’avec un hyperplan
optimal, un nouvel exemple reste bien classé alors qu’il tombe dans la marge.
On constate sur la partie gauche qu’avec une plus petite marge, l’exemple se
voit mal classé.
• α∗i ≥ 0 ∀ i = 1, . . . , n
• yi (〈w∗ , x i 〉 + b∗ ) ≥ 1 ∀ i = 1, . . . , n.
• α∗i ( yi (〈w∗ , x i 〉 + b∗ ) − 1) = 0 ∀ i = 1, . . . , n .
- Les x i tels que α∗i > 0 sont appelés les vecteurs supports. Ils sont situés
sur les frontières définisssant la marge maximale, c’est à dire,
yi (〈w∗ , x i 〉 + b∗ ) = 1
yi (〈w, x i 〉 + b) = 1
• La marge est
2 ³ X ´1/2
= αi .
∥ w∥ i ∈SV
• La fonction de décision :
X
f ( x) = 〈w, x i 〉 + b = α i yi 〈 x, x i 〉 + b.
i ∈SV
3.9. MACHINE À VECTEURS SUPPORTS 59
3.9.3 SVM pour les données linéairement non séparables
Les contraintes relaxées ne peuvent pas être utilisées sans contrepartie sous
peine d’obtenir une marge maximale infinie (en prenant des valeurs de ξ i suf-
fisamment grandes). La solution est de pénaliser les grandes valeurs de ξ i . Il
s’agira de trouver w, b et ξ = (ξ1 , . . . , ξn ) tels que
1 n
∥w∥2 + C
X
ξ i soit minimal
2 i =1
sous contraintes
yi (〈w, x i 〉 + b) ≥ 1 − ξ i , ξ i ≥ 0,
C est une variable de pénalisation des points mal classés et faisant un com-
promis entre la dimension de la marge et les points mal classés ; C > 0 est
un paramètre ; C est un paramètre d’entrée de la SVM à ajuster. Plus C est
grand, plus ³les erreurs sont pénalisées. Résoudre le problème primal revient à
trouver α = α1 , . . . , αn )′ tels que :
n
X 1X n
αi − α i α j yi y j 〈 x i , x j 〉 soit maximal
i =1 2 i, j
• 0 ≤ α∗i ≤ C ∀ i = 1, . . . , n
• yi (〈w∗ , x i 〉 + b∗ ) ≥ 1 − ξ∗i ∀ i = 1, . . . , n.
• α∗i ( yi (〈w∗ , x i 〉 + b∗ ) + ξ∗i − 1) = 0 ∀ i = 1, . . . , n .
• ξ∗i (α∗i − C ) = 0, ∀ i = 1, . . . , n.
3.9. MACHINE À VECTEURS SUPPORTS 61
Les x i tels que α∗i > 0 sont les vecteurs supports.
Deux types de vecteurs supports :
• Les vecteurs correspondant à des variables ressort nulles. Ils sont situés
sur les frontières de la région définissant la marge.
• Les vecteurs correspondant à des variables ressort non nulles : ξ∗i > 0 et
dans ce cas α∗i = C .
Les vecteurs qui ne sont pas supports vérifient α∗i = 0 et ξ∗i = 0.
k( x, y) = ( x′ x + 1)d .
Les couches
1 et 2 s’appellent des couches cachées tandis que la couche 3 est la couche de
sortie. La tâche principale des réseaux de neurones artificiels est l’apprentissage
pour la classification, qui est réalisée par un processus itératif d’adaptation
des poids wi pour arriver à la meilleure fonction permettant d’avoir f ( x i ) =
yi , i = 1, . . . , N. Les valeurs des wi sont initialisées aléatoirement, et corrigées
selon les erreurs entre les yi obtenus et attendus. Dans un réseau de neurones
multicouches, la correction se fait dans le sens inverse du sens de propagation
des données ce qui est appelé la ”backpropagation”. A chaque présentation
d’un exemple d’apprentissage au réseau, on passe par deux étapes :
1. Dans l’étape de propagation, les valeurs du vecteur d’entrée (l’exemple)
sont reçues dans la couche d’entrée et propagées d’une couche à l’autre
jusqu’à la sortie où un vecteur de sortie (les yi ) est obtenu.
2. Dans la phase de backpropagation, les w i sont ajustés de la dernière
couche jusqu’à la première de manière à rapprocher les yi obtenus de
ceux attendus.
64 CHAPITRE 3. CLASSIFICATION
Ces deux étapes sont répétées avec chaque exemple d’apprentissage pour ob-
tenir à la fin un réseau de neurones artificiel entrainé. L’utilisation d’un RNA
entrainé, se fait par l’injection des valeurs du vecteur de l’exemple à classifier,
dans l’entrée et recevoir sa classe à la sortie par propagation. Les réseaux de
neurones sont utilisés pour la classification ou la régression. Pour la régression
les valeurs des yi représentent la réponse de la fonction à estimer. Dans le
cas de classification, si le cas est binaire, une seule sortie (0 ou 1) suffit. Si la
classification est multi-classes, on utilise généralement une sortie pour chaque
classe. Plusieurs types de réseaux de neurones existent, ils se diffèrent dans la
manière selon laquelle sont interconnectés les nœuds. Les réseaux récurrents,
par exemple, consistent à propager les résultats au sens inverse de la propaga-
tion dans le calcul des wi. Un autre type est celui des cartes auto-organisatrices
de Kohonen qui utilise un principe de compétition pour ne prendre que les ré-
sultats des meilleurs nœuds dans les calculs. Ce type de réseaux de neurones
est utilisé généralement dans l’apprentissage non supervisé. Certes, les réseaux
de neurones artificiels permettent de surmonter le problème d’analyse d’un
système donné pour le modéliser. On peut simuler son comportement unique-
ment à partir d’un certain nombre d’exemples observés. Mais, par contre, ils
représentent des problèmes remarquables qui ont limité leur évolution en face
d’autres techniques tel que les SVMs.
P ( H / X ) = [P ( X / H ).P ( H )]/P ( X )
P( X / H ) = P(a i = v i / H ).
Y
4 Regression
4.1 Définition
4.2 Régression linéaire simple
4.2.1 Modélisation
Définition 4.2.1. Le modèle de régression linéaire simple est défini par une
équation de la forme
Yi = β0 + β1 X i + ε i 1 ≤ i ≤ n.
68
4.2. RÉGRESSION LINÉAIRE SIMPLE 69
4.2.2 Démarche de la régression
n
X
( X i − X n )(Yi − Y n )
i =1
ρ=s s .
n n
( X i − X n )2 (Y i − Y n )2
X X
i =1 i =1
n ¡
X ¢2
S (β0 , β1 ) = Yi − β0 − β1 X i .
i =1
7018 CHAPITRE 4.Regression
2 Simple Linear REGRESSION
15
ê6
10
ê5 Line of
best fit
Y ê3
5
ê4
ê1
0
ê2
0 1 2 3 4 5
X
′
Figure
Le 2.2 (β̂plot
A scatter
vecteur 0 , β̂1 ) qui minimise S (β0 , β1 ) vérifie la condition
of data with a line of best fit and the residuals identified du premier
ordre
n
∂S (nβ0 2, β1 )n = −2 2(Y −
X n
=∑ i (βy0 − −bβ1−Xb ix) =
∑ ∑ 2 0
RSS
∂β0ˆ
ei = ( yi − ˆ
y i ) = i 0 1 i) .
i =1 i =1 i = 1 i =1
∂S (β0 , β1 ) X n
= −2 X i (Yi − β0 − β1 X i ) = 0
∂βwith
For RSS to be a minimum
1 respect to b and
i =1 0
b1 we require
and
i 1
n
2
i
i =1 i =1 i =1
4.3.1 Modélisation
These last two equations are called the normal equations. Solving these equations
forLe
b0 and b1 gives
modèle dethe so-called least
régression squares
linéaire estimates
multiple estofdéfini
the intercept
par l’équation
ˆ ˆ
Yi = β0 + β1 Xbi10 +
= ·y· −· +
bβ1 xp X i p + ε i , i = 1, . . . , n (2.3)
où
- Yi est la réponse mesurée pour l’individu i
4.3. RÉGRSSION LINÉAIRE MULTIPLE 71
- X i j est la valeur de X j pour l’individu i ;
- β0 , . . . , β p sont des paramètres inconnus
- ε i appelée aléa est une variable aléatoire.
En posant
Y1 1 X 11 · · · X1 j ··· X 1p
.. .. .. .. ..
.
. . . .
Y = Yi X = 1 X i1 ··· Xij ··· Xip
.. .. .. .. ..
. . . . .
Yn 1 X n1 · · · Xnj ··· X np
β0
ε1
β1
..
..
.
.
β= ε= εi
βj
..
. .
..
εn
βp
on obtient la forme matricielle suivante :
Y = X β + ε. (4.3.1)
∀C ∈ R p+1 , X C = 0 ⇒ C = 0;
Comme ε = Y − X β, on a
à !2
n n p
′
ε2i
X X X
S (β) = ε ε = = Yi − (β0 + β j X i j) .
i =1 i =1 j =1
∂S (β) ′ ′ ′ ′
= −2 X Y + 2 X X β = 0 ⇒ β = ( X X )−1 X Y
∂β
∂2 S (β) ′
Comme = 2 X X est une matrice définie positive, on obtient le résultat.
∂β2
4.4. SVM POUR LA RÉGRESSION (SVR) 73
4.4 SVM pour la régression (SVR)
Dans leur origine, les SVMs ont été développées pour des problèmes de
classification. Cependant, leur nature leur permet de résoudre également des
problèmes de régression. La régression est un cas particulier de classification où
les classes des exemples ne sont pas dénombrables c’est à dire continues. Pour
résoudre le problème de régression, SVM utilise une astuce semblable a celle
utilisée en classification. On propose de modéliser la fonction de régression par
un hyperplan qui se situe au centre d’un hypertube de largeur 2ε contenant
tous les exemples d’entrainement.
75