2. Processus d’apprentissage
Définir un
problème de
ML et proposer
une solution
Visualiser le
Résultat de la
prédiction
"PREDIR"
Construite
l’ensemble de
données
Transformer les
données
Préparation des données
Algorithme de Machine
Learning (ML)
2
Supervisé Non-Supervisé Par renforcement
3. Différents contextes d’apprentissage
• Les algorithmes de Machine Learning (ML)
– L’apprentissage non-supervisé
• Aucun expert n’est disponible. L’algorithme doit
découvrir par lui-même la structure des données.
– L’apprentissage supervisé
• un expert est employé pour étiqueter correctement des
exemples (instances).
– L’apprentissage par renforcement
• l’algorithme apprend un comportement.
On s’intéresse, dans ce chapitre, au
algorithmes d’apprentissage non supervisé. 3
4. Apprentissage non supervisé
• Différentes tâches sont associées à l'apprentissage non
supervisé
– catégorisation/regroupement/segmentation
• Clustering
• Construire des classes automatiquement en fonction des
exemples disponibles
– Réduction de dimensions
• Réduire le nombre de variables.
• Permet d’améliorer la lisibilité des données.
– Règles d'association
• Analyser les relations entre les variables ou détecter des
associations
4
5. Apprentissage non supervisé
"catégorisation"
Objectif = structuration des données
• On cherche à regrouper les points proches/similaires en
"paquets" (groupes/classes)
• Pb : les groupes peuvent être assez bien définis et séparés,
ou au contraire imbriqués/sans frontières claires, et de
formes quelconques.
•
5
6. La catégorisation
• Classes (Clusters): groupes d’instances ayant les
mêmes caractéristiques
– Trouver un partitionnement en classes(groupes) ayant
un sens (Similaires).
– Les classes et leurs significations sont inconnues à
l’avance.
• Soient m instances {o1,…,oj,…, om} de données
dont chacune et décrite par à d attributs
{x1,…,xi,…xd} ,
– Attributs
• Numériques (distance bien définie)
• Enumératifs ou mixtes (distance difficile à définir)
6
7. La catégorisation
• Pb : les groupes peuvent être assez bien définis et
séparés, ou au contraire imbriqués/sans frontières
claires, et de formes quelconques.
7
8. La catégorisation
• Une bonne méthode de catégorisation produira des
clusters d’excellente qualité tels que:
– Similarité intra-classe importante
– Similarité inter-classe faible
• La qualité d’un algorithme de catégorisation dépend
de :
– La mesure de similarité utilisée.
8
9. Calcul de distances
• Pas de définition unique de la similarité entre les individus
– Différents mesures de distances d(x,y) entre individus
• La similarité est inversement proportionnel à la distance
– Deux individus sont d’autant plus similaires que la distance entre
eux est petite.
• Propriétés d’une distance:
• La définition de la similarité entre objets dépend de:
– Le type des données considérées
9
)
,
(
)
,
(
)
,
(
)
,
(
)
,
(
)
,
(
)
,
(
z
y
d
y
x
d
z
x
d
x
y
d
y
x
d
y
x
ssi
y
x
d
y
x
d
4
3
0
2
0
1
10. Calcul de distances
• Distance de Mikowski
– Pour q=1 distance de Manhattan
– Pou q=2 distance Euclidienne
10
q
d
k
q
jk
ik
j
i X
X
o
o
d
1
)
,
(
d
k
jk
ik
j
i x
x
o
o
d
1
)
,
(
d
k
jk
ik
j
i x
x
o
o
d
1
2
)
,
(
11. Calcul de distances
• Attributs discrets
– Données binaires
• d(0,0)=d(1,1)=0,
• d(0,1)=d(1,0)=1
– Donnée énumératives
• Distance nulle si les valeurs sont égales et 1 sinon.
– Donnée énumératives ordonnées
• idem.
• Remarque: on peut définir une distance utilisant la
relation d’ordre. 11
12. Apprentissage non supervisé
• Exemples de méthodes utilisées
– Catégorisation par partitionnement
• K-means et ses variantes
• Partitionnement Hiérarchique Descendant
• Partitionnement spectral
– Catégorisation par agglomération
• Regroupement Hiérarchique Ascendant
– Catégorisation par modélisation
• Mélange de gaussiennes (GMM)
• Cartes de Kohonen (Self-Organizing Maps, SOM)
– Catégorisation basé sur la densité
• DBSCAN
12
14. K-moyennes
• Approche par partitionnement
• Entrées:
– Un échantillon de N individus D={o1, …, oN }.
– Nombre de classes k.
– Une distance d
– Un nombre maximale d’itération nb_it
• Sorties :
– Un ensemble C de k classes disjoints C={C1,…, Ck}
– l’ensemble c de leurs centres c={c1, …, ck}
• Objectif :
– Répartir chacun des N individus dans une certaine classe i en minimisant la
variance intra-classe donnée par une fonction objectif J
14
k
j C
O
j
i
j
i
c
o
d
C
J
1
2
)
,
(
)
(
16. K-moyennes
• Algorithme
1.Choisir k centres initiaux {c1, …, ck}
2.Répartir chacun des n individus dans une classe i dont le centre
ci est le plus proche.
4.Calculer les nouveaux centres des classes : pour tout i, le
nouveau ci est la moyenne des éléments de la classe i.
3.Si (aucun élément ne change de classe) ou (le nombre maximal
nb_it des itérations est atteint) alors arrêter l’algorithme.
5.Si non, Aller en 2.
16
19. K-moyennes
• Avantages
– Facile à comprendre et à implémenter
– Paramètre unique : valeur souhaitée pour le nombre
de classes k
– Faible complexité moyenne : O(t.k.N.d) avec :
• t : Nombre d’itérations
• K : Nombre de classes
• N : Nombre d’observations
• d: Dimension des observations (nombre de variables)
19
20. K-moyennes
• Limites
– Sensibilité au choix aléatoire des centres initiaux
– Données vectorielles uniquement
– Sensibilité aux données aberrantes (bruits)
– Choix a priori difficile du nombre de classes
– Ne fonctionne pas dans le cas où les classes n’ont pas une
forme sphérique
20
21. K-moyennes
• Résultats avec 3 initialisations différentes
• Une bonne initialisation de l’algorithme K-means permet d’obtenir une
solution de meilleure qualité avec une convergence plus rapide (avec
moins d’itérations) vers cette solution.
21
22. K-moyennes
• Que faire pour alléger l’effet de l’initialisation aléatoire
des centres des classes initiaux?
– Solution simple
• Faire tourner K-means plusieurs fois, en utilisant à chaque
fois une initialisation aléatoire différente.
• Choisir la solution qui aboutit au meilleur partitionnement
– Celle qui minimise la variabilité intra-classe et maximise la
variabilité interclasse.
Cette solution ne garantie pas d’arriver à un bon partitionnement.
22
23. Exercice
X Y
A 2 10
B 2 5
C 8 4
D 5 8
E 7 5
F 6 4
G 1 2
H 4 9
oK-means avec k=3
o Les 3 centres de classes initiaux sont
A, B et G, respectivement.
o La distance utilisée est la L2
distance euclidienne.
23
24. Corrigé de Exercice
• Itération 1
– Classe 1 ={A,C,D}
– Classe 2={B,E,F}
– Classe 3={G}
24
C1 2 10
C2 2 5
C3 1 2
C1 C2 C3
C 6,00 6,08 7,28 C1
D 3,61 4,24 7,21 C1
E 7,07 5,00 6,71 C2
F 7,21 4,12 5,39 C2
25. Corrigé de Exercice
• Itération 2
– Classe 1 ={A,D,H}
– Classe 2={B,C,E,F}
– Classe 3={G}
25
C1 4,75 7,75
C2 5,00 4,67
C3 1,00 2,00
C1 C2 C3
A 3,55 6,12 8,06 C1
B 3,89 3,02 3,16 C2
C 4,96 3,07 7,28 C2
D 0,35 3,33 7,21 C1
E 3,55 2,03 6,71 C2
F 3,95 1,20 5,39 C2
G 6,86 4,81 0,00 C3
H 1,46 4,45 7,62 C1
26. Corrigé de Exercice
• Itération 3
– Classe 1 ={A,D,H}
– Classe 2={C,E,F}
– Classe 3={B,G}
26
C1 3,66 9
C2 5,75 4,5
C3 1 2
C1 C2 C3
A 1,94 6,66 8,06 C1
B 4,33 3,78 3,16 C3
C 6,62 2,30 7,28 C2
D 1,67 3,58 7,21 C1
E 5,21 1,35 6,71 C2
F 5,52 0,56 5,39 C2
G 7,49 5,37 0,00 C3
H 0,33 4,83 7,62 C1
27. Corrigé de Exercice
• Itération 4
– Classe 1 ={A,D,H}
– Classe 2={C,E,F}
– Classe 3={B,G}
27
C1 3,67 9,00
C2 7,00 4,33
C3 1,50 3,50
C1 C2 C3
A 1,94 7,56 6,52 C1
B 4,33 5,04 1,58 C3
C 6,62 1,05 6,52 C2
D 1,67 4,18 5,70 C1
E 5,21 0,67 5,70 C2
F 5,52 1,05 4,53 C2
G 7,49 6,44 1,58 C3
H 0,33 5,55 6,04 C1
Les classes sont stables : la composition des classes ne
change pas (de l’itération 3 à l’itération 4)
On arrête l’algorithme.
29. Les méthodes hiérarchiques
• Une méthode hiérarchique permet de construire
une hiérarchie de classes, non seulement une
partition unique des objets.
• Le nombre de classes k n’est pas exigé comme
donnée mais peut être utilisée comme une
condition d’arrêt.
• Se base sur une matrice de distances
• Il existe 2 types de catégorisations hiérarchiques
– Méthode ascendante.
– Méthode descendante. 29
1ère MC. SeRCE
30. La méthode hiérarchique ascendante
Approche par agglomération
• Entrée:
– Un échantillon de N individus D={o1, …, oN }
– Nombre de classe k
• Algorithme:
1. On commence avec N classes (1 classe = 1 observation)
2. Répéter
a. Calcul d’indices d’agrégation entre tous les groupes issus de
l’itération précédente
b. Grouper les deux classes ayant le plus petit indice
d’agrégation
3. Jusqu’à (Nombre de groupe == 1) 30
1ère MC. SeRCE
31. Distance entre groupes
• Critères d’agrégation
– Distance entre les groupes (ou entre un groupe est
une observation)
– Différents indices d’agrégation peuvent être utilisés
pour mesurer la dissimilarité entre les groupes
• Le lien minimum (single linkage)
• Le lien maximum (complete linkage)
• Le lien moyen (average linkage)
• L’indice de Ward 31
1ère MC. SeRCE
32. Distance entre groupes
• Critères d’agrégation
– Le lien minimum (single linkage)
• L’indice d’agrégation δ entre deux groupes Gi et Gj est
la valeur la plus faible des distances entre une
observation x du premier groupe Gi et une observation
y du second groupe Gj
32
)
,
(
min
)
,
( y
x
d
G
G
j
i
G
y
G
x
j
i
1ère MC. SeRCE
33. La méthode hiérarchique ascendante
33
Exemple : Agrégation des classes selon « le lien minimum »
Dendrogramme
1ère MC. SeRCE
34. Distance entre groupes
• Critères d’agrégation
– Le lien maximum (complete linkage)
• Appelée parfois "diamètre" de l’agrégat.
• L’indice d’agrégation δ entre deux groupes Gi et Gj est
la valeur la plus élevée des distances entre une
observation du premier groupe Gi et une observation y
du second groupe Gj
34
)
,
(
max
)
,
( y
x
d
G
G
j
i
G
y
G
x
j
i
1ère MC. SeRCE
35. La méthode hiérarchique ascendante
• Exemple : Agrégation des classes selon la
distance minimal
35
Dendrogramme
Exemple : Agrégation des classes selon « le lien maximum »
1ère MC. SeRCE
36. Distance entre groupes
• Critères d’agrégation
– Le lien moyen (average linkage)
• L’indice d’agrégation δ entre deux groupes Gi et Gj est la
valeur moyenne des distances entre toutes
observations du premier groupe Gi et toutes
observations du second groupe Gj
36
j
i
G
y
G
x
j
i
j
i y
x
d
G
G
G
G )
,
(
)
,
(
1
1ère MC. SeRCE
37. Distance entre groupes
• Critères d’agrégation
– L’indice de Ward
• on agrège a chaque itération les classes dont
l'agrégation fait perdre le moins d'inertie interclasse
La distance entre deux clusters est calculée de façon à
minimiser la variance inter-cluster
37
)
,
(
)
,
( j
i
j
i
j
i
j
i c
c
d
G
G
G
G
G
G 2
1ère MC. SeRCE
38. La méthode hiérarchique ascendante
Méthodes Avantages Limites
Lien minimum
- Fonctionne dans le cas où
les classes ont une forme
non sphérique
- Forme des groupes
déséquilibré : un grand
groupe et plusieurs petits
groupes satellites.
- Sensible au bruit et aux
points aberrants
Lien moyen
- Il tend, à former des
groupes de taille égale
- Très sensible aux points
aberrants et est peu utilisée
en pratique.
Lien maximum - Moins sensible au bruits et
aux points aberrants
- Tend à diviser les grands
groupes
Indice de ward - Tend à regrouper les
ensemble représentant les
petites classes
- Coûteux en temps de
calcul
38
1ère MC. SeRCE
39. La méthode hiérarchique ascendante
39
Sensibilité aux bruits (Min)
Diviser les grands groupes (Max)
1ère MC. SeRCE
40. La méthode hiérarchique ascendante
• Avantages
– Il n’est pas nécessaire de définir le nombre de classes
à l’avance
• Limites
– La CAH est peu robuste: il suffit de modifier une
distance pour que le saut change (sensibilité aux
points aberrants)
– Grande complexité algorithmique (temps de calcul et
espace mémoire)
• Plus adapté aux échantillons contenant un faible nombre
d'individus
40
1ère MC. SeRCE
41. La méthode hiérarchique ascendante
• Limites (suite)
– La complexité en fonction du nombre N de points.
– O(N3) dans la plupart des cas
• N étapes dont chacune une matrice de N2 doit être Mise à
jour
– Certain algorithme peuvent réduire la complexité à
O(N2log(N))
– Une pratique assez fréquente
• D’abord, appliquer l’algorithme K-means avec une valeur
élevée de k (mais néanmoins k≪N),
• Utiliser la classification ascendante hiérarchique pour
regrouper les classes
41
1ère MC. SeRCE
42. Exercice
42
• On dispose d'un tableau de données avec 8 individus et 2 variables.
• On donne aussi le tableau de distances entre ces individus en se basant sur distance
euclidienne
•On utilise le "lien moyen" comme critère d’agrégation entre 2 classes.
1ère MC. SeRCE
49. Problématique
• Avec les algorithmes précédent (K-means, k-
Médoïdes, CHA, CHD)
– Chaque instance est attribuée à une seule classe.
– Ceci suppose que les classes sont parfaitement
discernable
Ce n’est pas toujours le cas. Comme l’exemple :
suivant :
49
1ère MC. SeRCE
50. Problématique
• Solution
– Chaque instance est attribuée à une classe avec
un certain degré d’appartenance
• Déterminer la probabilité d’appartenance d’une
instance à une classes donnée
• Exemples d’algorithmes
– Fuzzy C-means
– GMM
50
1ère MC. SeRCE