Apprentissage automatique

publicité
Les Arbres de Décision
Pr A. MAJDA
MASTER SIR FSTF
2014 - 2015
1
Arbre de décision
Exemple 1 : Aide au diagnostic
2
Arbres de décision
 Ce sont des structures de données utilisée pour la classification
 Méthode récursive basée sur diviser-pour-régner pour créer
des sous-groupes purs appartenant à une même classe
 Objectif : Construction du plus petit arbre de décision
possible
 Nœud = Test sur un attribut (douleur, fièvre, toux)
 Une branche pour chaque valeur (abdomen, gorge,…) d’un attribut
 Les feuilles désignent la classe de l’objet à classer (appendicite, mal de
gorge,…). Il existe au moins deux classes
 Problèmes: Choix de l’attribut
3
Arbre de décision
Exemple 1 :
Un ensemble de tests :
Origine de la douleur ?
Est-ce qu’il y a de la fièvre ?
Est-ce que le patient tousse?
….
Si aucune erreur n’est commise dans ces réponses, l’identification est
réalisée.
Le principe de cette règle de décision est d’organiser l’ensemble des
tests possibles comme un arbre
Une feuille de l’arbre désigne une des C classes , mais une classe peut
correspondre à plusieurs feuilles
Problème : comment réaliser l’apprentissage de telles structures de
décision à partir d’exemples ?




4
 Exemple 2 : Vais-je sortir le chien ou non ?
 Les attributs suivants :
 Quel temps fait –il? A nominal (pluvieux, ensoleillé, couvert)
 Quelle est la température extérieure? A numérique
 Est-ce que le jardin est ouvert ? A binaire
 Selon mon expérience (Expert) si le temps est pluvieux je reste
chez moi quelque soit les valeurs des autres attributs
 l’expérience m’a prouvé que si le jardin est fermé la
promenade devient désagréable.
5
 Dans cet exemple l’expertise joue un rôle très important : l’arbre est construit
à partir de connaissances de l’expérience.
 Pour réaliser la construction automatique d’un AD, il faut s’appuyer seulement
sur un ensemble d’apprentissage et non pas sur une expertise.
Problème : comment sous cette hypothèse apprendre un AD performant en
généralisation? (Choix de l’attribut pour un nœud donné)
6
Cas d’Attributs binaires
7
La mesure de l’entropie
 w variable qui peut prendre une des C valeurs (classes)
 a variable qui peut prendre une des D valeurs ( attributs)
 L’entropie de w conditionné par a est :
Qui peut être estimée à :
Si on note
8
Algorithme ID3
Exemple 3
 Problème qui se pose à un enfant qui revient de l’école : peut-il
aller jouer chez son voisin ou pas ?
 Selon l’expérience sur huit jours  huit exemples
d’apprentissage
9
Etapes à suivre
 Pour construire la racine de l’arbre
 Trouver l’attribut dont la distribution possède l’entropie
mutuelle la plus faible avec celle de la décision (classe).
 Calcul pour l’attribut DF (devoirs finis):
Soit
10
Etapes à suivre
 Calcul analogue
 On choisit donc pour racine l’attribut le test Est-ce qu’il fait
beau?
11
Arbre de décision de l’exemple 3
On répète le même processus récursivement à gauche et à
droite de l’arbre
12
D’autres mesures pour choisir l’attribut
L’algorithme CART « Classification And Regression
Trees », il a été publié par Leo Breiman en 1984.
2. L’algorithme ID3 de Ross Quinlan 86 ( exemple
précédent)
3. L’algorithmeC4.5 publié par Ross Quinlan. Il est basé sur
l'algorithme ID3 auquel il apporte plusieurs améliorations
1.
13
Cas d’attribut nominal ou continue
 Attribut nominal : tester une couleur (rouge , jaune, noir,…)
 Transformer l’attribut en binaire
 Le test Se réduit à tester est ce que la couleur est rouge (vrai ou faux)
 Et on répète pour les autres couleurs jaune, noir,…
 Attribut nominal : tester une température (0>T>20°)
 Transformer l’attribut en binaire
 Le test Se réduit à tester est ce que la T<10 (vrai ou faux)
 Et on répète pour les autres intervalle (T<20) (vrai ou faux)
14
Application à la classification
d’images
15
Classification automatique d’images
 À partir d’une base de données d’images pré-classifiées,
construire un modèle qui classera aussi bien que possible
de nouvelles images
 Exemples d’applications:
 reconnaissance de caractères manuscrits
 reconnaissance de visages
 reconnaissance d’objets
 reconnaissance de textures
16
Aperçu de bases de données
 MNIST:
 ORL:
 COIL-100:
 OUTEX:
17
Algorithme générique
 Solution traditionnelle en deux étapes:
 Extraction de caractéristiques
 Application de techniques d’apprentissage ou d’appariement
(matching) sur ces caractéristiques
 Inconvénient: la première étape de prétraitement est
laborieuse et dépendante du problème
 Avancées en apprentissage proposent des méthodes capables de
traiter des problèmes complexes de dimension très importante
 Que peut-on faire pour ce problème particulier en apprenant
directement sur les valeurs brutes des pixels ?
18
Exemple de base de données
OUTEX: base de données de 864 images en couleurs (54
textures différentes) de 128x128 pixels
 Une image = 49152 (128x128x3) valeurs entières comprises dans
[0,255] et une classe (nom de texture)
 LS = 432 images (8 images par texture)
 TS = 432 images (8 images restantes par texture)
19
Algorithmes proposés
 Extra-trees (extremely randomized trees )
 Très efficaces pour traiter un grand nombre de variables
 Extra-trees + sous-fenêtres
 Extraction et classification de sous-fenêtres dans les images
 Permet de tenir compte de caractéristiques plus locales dans les
images et augmente artificiellement l’ensemble d’apprentissage
20
Extraction de sous-fenêtres
…
…
 Apprentissage:
Etant donné une taille de fenêtre W1xW2 et un nombre de
fenêtres Nw:
 Extraire Nw sous-fenêtres aléatoirement à partir des images de
l’ensemble d’apprentissage et assigner à chaque sous-fenêtre la classe
de l’image originale
 Construire un modèle pour classer ces Nw images en utilisant les
W1xW2 pixels qui les décrivent
21
Extraction de sous-fenêtres
 Test d’une image:
Etant donné la taille de sous-fenêtres W1xW2:
 Extraire tous les sous-fenêtres possibles de taille W1xW2 dans
l’image à tester
 Appliquer le modèle sur chaque sous-fenêtre
 Attribuer à l’image la classe majoritaire parmi les classes
attribuées aux sous-fenêtres
22
Extraction de sous-fenêtres
 Test
…
…
Fleur
…
…
Métal
Fleur
Fleur
23
…
Fleur
Extraction de sous-fenêtres
 Les sous-fenêtres permettent de tenir compte de
caractéristiques plus locales dans les images et augmente
artificiellement l’échantillon (Nw>>)
 La taille des sous-fenêtres dépend du problème
 d’autant plus petite que les classes d’images dépendent de
caractéristiques locales
 Exemple: classification de caractères manuscripts ! grandes
fenêtres, classification de texture ! fenêtres plus petites
 En pratique, détermination de la taille optimale par
validation croisée pour rester générique.
24
Base de données
25
DBs
#images
#attributs
#classes
MNIST
70000
784
(28x28x1)
10
ORL
400
10304
(92x112x1)
40
COIL-100
7200
3072
(32x32x3)
100
OUTEX
864
49152
54
(128x128x3)
Protocoles d’expérimentation (Pierre Geurts 2004)
 MNIST
 LS = 60000 premières images
 TS = 10000 dernières images
 ORL
 100 groupes de données:
 LS = 200 images (5 images par personne)
 TS = 200 images (5 images restantes par personne)
 COIL-100
 LS = 1800 images (k*20°, k=0..17)
 TS = 5400 images (36 images restantes par objet)
 OUTEX
 LS = 432 images (8 images par texture)
 TS = 432 images (8 images restantes par texture)
26
Précision
27
BDs
Extra-trees
Sous-fenêtres Littérature
MNIST
3.26%
2.63%
(w1=w2=24)
12%…0.7%
ORL
4.56% ± 1.43
2.13% ± 1.18
(w1=w2=32)
7.5%…0%
COIL-100
2.04%
0.39%
(w1=w2=16)
12.5%…0.1%
OUTEX
64.35%
2.78%
(w1=w2=4)
9.5%…0.2%
Comparaison avec d’autres méthodes
28
Method
MNIST ORL
COIL-100
OUTEX
One classical DT
11.5%
29.25%
20.80%
89.35%
Bagging DT
4.42%
9.5%
2.24%
73.15%
Boosting DT
2.29%
3.75%
0.54%
69.44%
Random Forests
3.0%
1.25%
1.17%
66.90%
Extra-trees
3.17%
1.25%
1.96%
65.05%
Extra-trees + SW
2.54%
0.5%
0.35%
2.78%
SVMs
1.95%
1.25%
0.44%
71.99%
Nearest Neighbours
5.5%
2.25%
1.94%
80.79%
State-of-the-art
0.7%
-
0.1%
0.2%
Temps de calcul
 Apprentissage sur COIL-100 (1800x3072)
time (s)
Extra-trees
SVMs
9
62
Classical DT
188
Random Forests
1291
Extra-trees + SW
time (s)
2745
Bagging
6805
Boosting
19561
0
29
5000
10000
15000
20000
25000
Temps de calcul
 Test sur COIL-100 (5400 images)
time (s)
Classical DT
Bagging
0,01
0,6
Boosting
1
Random Forests
5
Extra-trees
time (s)
6
54
Extra-trees + SW
SVMs
199
1345
Nearest Neighbours
0
30
500
1000
1500
Robustesse
 L’inconvénient d’une approche générique est peut-être le
manque de robustesse à différentes transformations des
images
 Exemples de transformations:
 Rotation
 Changement d’échelle
 Occultation
31
Travail demandé
 Faire une recherche sur l’approche extra trees pour la
classification des données quelconques (chercher des articles)
 Appliquer l’approche extra trees+sw pour la classification
des caractères latins.
 Préparer des exposés
32
Téléchargement