11-Apprentissage automatique

publicité
Module 11
Apprentissage automatique
Plan
11. Apprentissage automatique
1. Applications
2. Types d’apprentissage
3. Bases de données
4. Quelques algorithmes
5. Classification multiple
6. Évaluation de la performance : Courbes ROC
Module 11
GPA-759 Réseaux de neurones et intelligence artificielle
L’apprentissage automatique (machine learning) fait
référence au développement, à l'analyse et à
l’implémentation de méthodes qui permettent à
une machine (au sens large) d’évoluer grâce à un
processus d’apprentissage, et ainsi de remplir des
tâches qu’il est difficile ou impossible de remplir
par des moyens algorithmiques plus classiques.
Le premier stade de l’analyse est celui de la
classification, qui vise à étiqueter chaque donnée en
l’associant à une classe.
Wikipedia 4-10-2010
Module 11
GPA-759 Réseaux de neurones et intelligence artificielle
11.1 Applications
L’apprentissage automatique est utilisé pour
doter des machines de systèmes de
perception de leur environnement :
Reconnaissance de l’écriture
Reconnaissance de visage
Télédétection
Robots
Module 11
GPA-759 Réseaux de neurones et intelligence artificielle
11.2 Types d’apprentissage
Apprentissage supervisé
➡ Classes prédéterminés et exemples connus
➡ Modèle de classement
➡ Perceptron, Perceptron multicouche, Machine à vecteurs
de support (SVM - Séparateur à vaste marge)
Apprentissage non-supervisé - Agrégation (Clustering)
(classification automatique)
➡ Classes non déterminées, exemples connus
➡ Découverte de la structure ± cachée des données
➡ Classement par groupes homogènes - notion de distance
➡ SOM, ART
Module 11
GPA-759 Réseaux de neurones et intelligence artificielle
Apprentissage semi-supervisé
➡ Vise à faire apparaitre la distribution sous-jacente des
exemples dans leur espace de description.
➡ Mis en oeuvre lorsque des étiquettes manquent.
➡ Ex. : aide au diagnostic en médecine.
Apprentissage partiellement supervisé
➡ Étiquetage partiel des données.
➡ Ex. : Une donnée n’appartient pas à la classe A, mais
peut-être à une classe B ou C.
Apprentissage par renforcement
➡ L’action de l’algorithme sur l’environnement produit
une valeur de retour qui guide l’algorithme
d’apprentissage.
Module 11
GPA-759 Réseaux de neurones et intelligence artificielle
11.3 Bases de données
Problématique de reconnaissance de formes
X
Espace
d'entrée
Module 11
Extraction
de
descripteurs
Y
Espace
des descripteurs
GPA-759 Réseaux de neurones et intelligence artificielle
Système
de
décision
D
Espace
des décisions
Descripteurs
1
Les vecteurs propres
Y
Y
.
.
.
.
.
. . . .. . ...
V2
z.
y1
.
.
.
.
.
. .. .. ..... .u...
..
v
.
.
.
.
.. .
~j
~i
x1
v~2
X
z = x1 ~i + y1 ~j
Module 11
z
GPA-759 Réseaux de neurones et intelligence artificielle
V1
v~1
~j
X
~i
z = u v~1 + v v~2
Analyse par composantes principales
z2
x2
z1
z2
x1
z1
Figure 6.1: Principal components analysis centers
the sample and then rotates the axes to line up with
the directions of highest variance. If the variance on
z2 is too small, it can be ignored and we have
Module 11
dimensionality reduction from two to one. From:
GPA-759 Réseaux de neurones et intelligence artificielle
2
Les primitives visuelles
….
Module 11
GPA-759 Réseaux de neurones et intelligence artificielle
Les vecteurs prototypes
..
.
.
.. .
. .. ...
.
.z
. .
. ...
..
3
y
.
.
.
.
P3
. . . P1
. .. ...
.
.z
. .
P2. ..
. ..
z
Module 11
(x,y)
x
GPA-759 Réseaux de neurones et intelligence artificielle
.
P3
.
.
. . . . d3
.
. . d2
P2. ..
. ..
z
. . .. P1
. . d1
.z
(d1,d2,d3)
Généralisation
Module 11
GPA-759 Réseaux de neurones et intelligence artificielle
Bases d’apprentissage, de validation et de test
Problème formel
Un ensemble de
connaissances
Module 11
Une base
d’apprentissa
ge ~70%
GPA-759 Réseaux de neurones et intelligence artificielle
Une base de
validation
~30%
Une base de
test
Variable
Apprentissage
Module 11
GPA-759 Réseaux de neurones et intelligence artificielle
Données d’apprentissage
Données de validation
Validation croisée
W1,
β1
Module 11
W2,
β2
GPA-759 Réseaux de neurones et intelligence artificielle
WN,
βN
11.4 Quelques algorithmes de
classification
Machines à vecteurs de support (SVM)
Boosting : Optimisation des performances de
plusieurs classificateurs binaires.
AdaBoost : Une des plus répandues.
Réseaux de neurones :
➡ Apprentissage supervisée : Perceptron multicouche
➡ Apprentissage non-supervisé : SOM de Kohonen
kPPV (supervisé)
Module 11
GPA-759 Réseaux de neurones et intelligence artificielle
SVM
Module 11
GPA-759 Réseaux de neurones et intelligence artificielle
SOM
Module 11
GPA-759 Réseaux de neurones et intelligence artificielle
kPPV
Module 11
GPA-759 Réseaux de neurones et intelligence artificielle
11.5 Classification multiple
Théorème du No Free Lunch : Il n’existe
pas de classificateur universel qui performe
dans toutes les situations
Combinaison de plusieurs classificateurs
➡ Vote Cat. d’une entrée = max de classificateurs
➡ Boosting Classificateur entraîné sur les erreurs
de classification du classificateur précédent
Module 11
GPA-759 Réseaux de neurones et intelligence artificielle
11.6 Évaluation de la performance
On veut extraire des pommes d’un lot de fruits divers.
Deux descripteurs sont mesurés : la couleur et la forme.
On obtient les résultats suivants pour un seuil donné de la droite de séparation :
Pomme
Non-Pomme
Instance
Seuil
e
e
m
m
m
o
m
P
o
e
P
ss
na
o
l
c
N
1
e
+
s
las
c
-1
Module 11
GPA-759 Réseaux de neurones et intelligence artificielle
Résultat de la
classification
+
-
Vraie
Fausse
VP
FN
FP
VN
V : Instance correctement classifiée
F : Instance incorrectement classifiée
P : Sortie positive du classificateur
N : Sortie négative du classificateur
Courbes ROC
Quelques indicateurs de performance
m
1 *
ur
lle
ei
C
Sensibilité
B
{
Sensibilité
Précision
du
Producteur Spécificité
A
VP
V P + FN
Probabilité que l’événement
soit correctement détecté
VN
V N + FP
Probabilité que l’absence
d’événement soit
correctement détectée
0
0
1
1 - Spécifité
Précision
Évènement
Vrai
Résultat de la
classification
Total
+
-
Faux Total
VP
FN
FP
VN
P
N
P’
N’
Précision
de
l’Utilisateur
Matrice de confusion
Module 11
GPA-759 Réseaux de neurones et intelligence artificielle
{
VP +VN
P +N
VP
V P + FP
VN
V N + FN
Exemple
Détection des dommages aux bâtiments
extrait thèse doctorat David Dubois
Module 11
GPA-759 Réseaux de neurones et intelligence artificielle
Résultats
•
Images de Port-auPrince – Février 2009
et Janvier 2010
• Quickbird
panchromatique 0,6m
de résolution spatiale
• Orfeo Toolbox utilisée
pour le développement
Module 11
Intro.
Littérature
Méthodologie
GPA-759 Réseaux de neurones et intelligence artificielle
Résultats
Concl.
24
Résultats
Détection des bâtiments
• Résultats sur PAP1 – 800x600 pixels
Observation du terrain
Classification
Bâtiment
Autre
Bâtiment
241
73
Autre
80
368
Total
321
441
Bâtiment
Autre
Taux du producteur (%)
74,1
83,4
Taux de l’utilisateur (%)
76.8
82,1
79,9
Taux global (%)
Module 11
Intro.
Littérature
Méthodologie
GPA-759 Réseaux de neurones et intelligence artificielle
Résultats
Concl.
25
Résultats
Détection des bâtiments
• Résultat visuel
Module 11
Intro.
Littérature
Méthodologie
GPA-759 Réseaux de neurones et intelligence artificielle
Résultats
Concl.
26
Résultats
Évaluation des dégâts
• Résultats sur PAP1 et PAP3 – 800x600 pixels
Observation du terrain
Classification
EMS-98
EMS-98 4
EMS-98 5
Observation du terrain
0-1-2-3
EMS-98 0-1-2-3
EMS-98 4
EMS-98 5
Total
Taux du producteur (%)
Taux de l’utilisateur (%)
140
3
9
152
10
10
16
Classification
EMS-98
EMS-98 5
0-1-2-3
EMS-98 0-1-2-3
26
1
2
EMS-98 4
3
34
4
EMS-98 5
3
5
37
Total
32
40
43
2
3
39
29
51
EMS-98
EMS-98
EMS-98
0-1-2-3
4
5
EMS-98
EMS-98
EMS-98
92,1
55,2
76,5
0-1-2-3
4
5
Taux du producteur (%)
81,2
85
86
Taux de l’utilisateur (%)
89,7
82,9
82,2
87,5
Taux global (%)
76,2
76,5
84
Taux global (%)
Module 11
EMS-98 4
Intro.
Littérature
Méthodologie
GPA-759 Réseaux de neurones et intelligence artificielle
84,3
Résultats
Concl.
27
Résultats
Évaluation des dégâts
• Trois classes (regroupements basés sur classes EMS-98)
Aucun dégât
Dégâts présents
Destruction
Module 11
Intro.
Littérature
Méthodologie
GPA-759 Réseaux de neurones et intelligence artificielle
Résultats
Concl.
28
Exemple
Classificateur 1 : PMC
Module 11
Classificateur 2 : SVM
Seuil
Sensibilité
1 - Spécificité
Sensibilité
1 - Spécificité
1
1
1
1
1
0.9
1
0.8571
1
1
0.8
1
0.5714
1
0.8571
0.7
0.75
0.4286
1
0.7143
0.6
0.5
0.4286
0.75
0.5714
0.5
0.5
0.4286
0.75
0.2857
0.4
0.5
0.2857
0.75
0.2857
0.3
0.5
0.2857
0.75
0.1429
0.2
0.25
0
0.25
0.1429
0.1
0
0
0.25
0
0
0
0
0
0
GPA-759 Réseaux de neurones et intelligence artificielle
Courbes ROC
PMC
Module 11
GPA-759 Réseaux de neurones et intelligence artificielle
SVM
Évaluation des courbes
AUC : Surface sous la
courbe ROC
Module 11
PMC
0,7321
SVM
0,7679
GPA-759 Réseaux de neurones et intelligence artificielle
Annexe III - Analyse ROC
xxvi
sifieur est efficace. Un autre moyen pour comparer des classifieurs est d’utiliser le taux
d’erreur égal (EER pour Equal Error Rate) qui correspond au point de la courbe ROC tel
que Se = S p .
Figure III.1 – Exemple de courbe ROC avec deux caractéristiques importantes : l’aire
sous la courbe (AUC) et le point correspondant au taux d’erreur égal (EER).
Le seuil de détection sera choisi par un compromis entre la sensitivité et la spécificité
du système, à savoir si l’on préfère détecter un maximum de chutes quitte à avoir un
certain nombre de fausses détections, ou alors si l’on préfère limiter la quantité de fausses
Module 11
alarmes.
GPA-759
Réseaux de neurones et intelligence artificielle
the positive class, and other values are assigned to the negative clas
ROC point for each possible threshold value results in a curve.
Further interpretations
D’autres interprétations
Sometimes, the
versions are:
How an ROC curve can be interpreted
Module 11
the intercept of
no-discriminati
the area betwee
the area under t
d' (pronounced
of activity in th
under signal-al
assumption tha
deviation. Unde
ROC depends o
The AUC is eq
chosen
positive
instance
GPA-759
Réseaux de
neurones et intelligence
artificielle higher than a randomly chosen negative on
Téléchargement