La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Ensembles d’arbres extrêmement aléatoires Application à la classification d’images Pierre Geurts Département d’Electricité, d’Electronique et d’Informatique,

Présentations similaires


Présentation au sujet: "Ensembles d’arbres extrêmement aléatoires Application à la classification d’images Pierre Geurts Département d’Electricité, d’Electronique et d’Informatique,"— Transcription de la présentation:

1 Ensembles d’arbres extrêmement aléatoires Application à la classification d’images
Pierre Geurts Département d’Electricité, d’Electronique et d’Informatique, Université de Liège, Belgique 19 février 2004 P Geurts - séminaire LIP6

2 Plan de la présentation
Arbres extrêmement aléatoires Arbres de décision et méthodes d’ensemble Analyse biais-variance En pratique Arbre totalement aléatoire Application à la classification d’images P Geurts - séminaire LIP6

3 Arbres de décision/régression
X2 X1 t1 r5 r2 r3 X2  t2 X1  t3 t2 r4 r1 r1 r2 r3 X2  t4 t1 t3 X1 r4 r5 P Geurts - séminaire LIP6

4 Arbres de décision/régression
Construction de l’arbre à partir de données De haut en bas À chaque étape: On choisit un nœud terminal On cherche le meilleur attribut et la meilleure question selon une mesure de score On éclate le nœud Variable numérique: question de type [A<ath?] Demande le tri de l’échantillon selon les valeurs de A Calcul du score pour au plus N valeurs de seuil candidates (si N objets au nœud) P Geurts - séminaire LIP6

5 Arbres de décision/régression
Points forts de la méthode: Interprétable Flexible Relativement efficace Point faible: Une variance importante Interprétabilité remise en question Précision en deçà d’autres méthodes P Geurts - séminaire LIP6

6 Réduction de variance Différentes approches possibles:
Stabiliser les paramètres de l’arbre Améliore l’interprétabilité mais pas la précision « Fuzzyfier » les tests: arbres flous, arbres probabilistes… Améliore la précision et préserve l’interprétabilité Agréger plusieurs arbres: méthodes d’ensemble Améliore la précision mais on perd l’interprétabilité P Geurts - séminaire LIP6

7 Méthodes d’ensemble Deux approches:
Algorithmes de type boosting: construction séquentielle (itérative) des modèles Réduit essentiellement le biais mais aussi la variance Algorithme de randomisation: construction en parallèle des modèles Réduit essentiellement la variance, augmente le biais P Geurts - séminaire LIP6

8 Randomisation Idée: agréger les prédictions de plusieurs modèles instables good good bad good P Geurts - séminaire LIP6

9 Randomisation Pour obtenir les différents modèles, il faut perturber soit: les données: Bagging (Breiman, 1996): ré-échantillonnage avec remplacement Méthode subspace (Ho, 1998): bruite la liste des attributs l’algorithme d’apprentissage directement: Random trees (Dietterich, 2000): choix aléatoire d’un test parmi les 20 meilleurs Random forests (Breiman, 2001): bagging + choix du meilleur test parmi un sous-ensemble aléatoire de k attributs P Geurts - séminaire LIP6

10 Randomisation Deux observations: Buts de l’étude proposée ici:
Les méthodes d’ensemble fournissent toutes un test différent de l’optimal mais recherchent quand même ce test optimal. Les paramètres des arbres sont très instables Buts de l’étude proposée ici: Évaluer une variante totalement aléatoire Vérifier si le degré de randomisation est dépendant du problème. P Geurts - séminaire LIP6

11 Randomisation proposée
Lors du développement d’un nœud: On génère K tests aléatoirement et on prend le meilleur test parmi ceux-ci Pour générer un test aléatoire: On choisit un attribut aléatoirement S’il est numérique, on choisit un seuil de discrétisation au hasard (entre le min et le max de l’attribut dans l’échantillon) S’il est symbolique, on choisit un sous-ensemble aléatoire des valeurs possibles de l’attribut On développe l’arbre complètement (« extra-trees » pour « extremely randomized trees ») P Geurts - séminaire LIP6

12 Extra-trees K contrôle le degré de randomisation:
Si K=1, la structure de l’arbre est déterminée totalement aléatoirement, sans référence à la sortie. Si K  , la structure tend vers celle d’un arbre classique P Geurts - séminaire LIP6

13 Expérimentations Sur 12 problèmes de classification et 12 problèmes de régression Comparaison de plusieurs méthodes: Arbres classiques (élagués) Méthodes d’ensemble (100 arbres, non-élagués) Bagging Random Forests (k optimisé) Arbres totalement aléatoires (K=1) Extra-trees (K optimisé) P Geurts - séminaire LIP6

14 Problèmes de classification
P Geurts - séminaire LIP6

15 Problèmes de classification
Erreurs relatives moyennes Extra-trees meilleurs que bagging et légèrement meilleurs que random forests Arbres totalement aléatoires compétitifs par rapport aux autres méthodes 1,0 0,58 0,50 0,42 0,37 1 arbre Bagging RF ET (K=1) ET (K opt.) P Geurts - séminaire LIP6

16 Problèmes de classification
Influence de K sur l’erreur 8 Two-norm 7 Erreur (%) 6 Letter 5 4 3 2 1 20 40 60 80 100 K Arbre totalement aléatoire Arbre classique P Geurts - séminaire LIP6

17 Problèmes de régression
P Geurts - séminaire LIP6

18 Problèmes de régression
Erreurs relatives moyennes Bagging, Random Forests et Extra-trees très proches. Arbres totalement aléatoires pas très bons sur certains problèmes 2,06 1,16 1,0 0,67 0,66 0,61 1 arbre Bagging RF ET (K=1) ET (K opt.) P Geurts - séminaire LIP6

19 Problèmes de régression
Influence de K sur l’erreur 18 16 14 Erreur 12 Housing 10 Elevators 8 6 1 20 40 60 80 100 K Arbre totalement aléatoire Arbre classique P Geurts - séminaire LIP6

20 Conclusion des expérimentations
On peut aller très loin en terme de randomisation avec les méthodes d’ensemble et quand même améliorer la précision par rapport à un seul arbre Différence importante entre problèmes de classification et problèmes de régression En classification, la randomisation peut aller très loin et améliore fortement la précision par rapport au bagging En régression, la randomisation permise est plus faible et le bagging va généralement suffisamment loin de ce point de vue Analyse basée sur les notions de biais et de variance P Geurts - séminaire LIP6

21 Notion de biais et de variance
Biais=erreur systématique commise par une méthode (indépendamment de l’échantillon) Variance=erreur due à la variabilité du modèle (en fonction de l’échantillon) En régression: Err. quad. Moyenne (MSE)= erreur min.+biais+variance P Geurts - séminaire LIP6

22 Compromis biais/variance
Sur un problème de régression (Friedman1) Lorsque K augmente (la randomisation diminue), le biais diminue et la variance augmente. 2 4 6 8 10 12 14 20 40 60 80 100 MSE Biais Variance K P Geurts - séminaire LIP6

23 Variables non pertinentes
Si K=1, la méthode est incapable de détecter (localement ou globalement) des variables non pertinentes Par exemple, s’il y a 50% de variables inutiles, 50% des tests dans l’arbre seront inutiles la complexité effective de l’arbre diminue de moitié et le biais augmente fortement Exemple: Friedman1 sans/avec 5 attributs bruités MSE Biais Variance Sans bruit 5,72 5,21 0,51 Avec bruit 11,73 11,27 0,46 P Geurts - séminaire LIP6

24 Biais et variance en classification
La plupart des méthodes de classification cherchent une fonction f (x) et prédisent la classe en x par: Une erreur systématique (biais) sur f n’a pas d’importance tant que f reste du bon côté de la frontière de décision  En classification, le biais (sur f ) a moins d’importance que la variance (sur f ) ì c si f ( x ) > , 5 C ( x ) = 1 í î c si f ( x ) , 5 2 P Geurts - séminaire LIP6

25 Compromis biais/variance
Sur un problème de classification (Waveform) Le minimum du taux d’erreur correspond à plus de randomisation (K plus petit) que le minimum de l’erreur quadratique. MSE sur f 0,1 0,2 10 20 30 40 50 K Biais sur f Variance sur f Erreur sur C P Geurts - séminaire LIP6

26 En pratique Quelle valeur de K par défaut ?
En classification, K=5 En régression, K=min(30,nombre d’attributs) Ce qu’on perd en moyenne en précision: Classification Régression 1,0 1,0 0,67 0,58 0,61 0,62 0,37 0,41 1 arbre Bagging K opt. K déf. 1 arbre Bagging K opt. K déf. P Geurts - séminaire LIP6

27 Temps de calcul Classification Régression 62,2 57,0 49,1 11,3 4,1 7,4 1 1 1 arbre Bagging K=1 K déf. 1 arbre Bagging K=1 K déf. Avantage important en classification, marginal en régression. D’autant plus important qu’il y a de variables. Exemple sur Isolet (N=6238 m=617): 1 arbre: 37s Bagging: 37m Extra-trees (déf.): 4s P Geurts - séminaire LIP6

28 Complexité du modèle Classification Régression 596 330 130 107 74 64 1 1 1 arbre Bagging K=1 K déf. 1 arbre Bagging K=1 K déf. Les arbres aléatoires sont beaucoup plus complexes (surtout en classification). Heureusement, le test reste très rapide car la profondeur augmente seulement avec le logarithme de la complexité. P Geurts - séminaire LIP6

29 Variante totalement aléatoire
Étonnamment, cette variante fonctionne assez bien sur plusieurs problèmes (particulièrement de classification) Totalement non paramétrique (pas d’hypothèse sur le problème, pas de mesure de score…) Extrêmement rapide et complexité indépendante de la dimension du problème la structure de l’arbre est totalement indépendante de la sortie  On peut l’utiliser pour une autre sortie en changeant simplement les prédictions aux feuilles P Geurts - séminaire LIP6

30 Comparaison avec le k-NN
Points communs: Les deux méthodes sont basées sur une métrique indépendante de la sortie: Deux points sont proches s’ils tombent souvent ensemble dans les mêmes feuilles des arbres de l’ensemble Elles sont sensibles à la présence de variables non pertinentes Modèles relativement lourds Mais grâce aux arbres: Distance invariante à certaines transformations des variables, insensible aux outliers, normalisation inutile … Traitement naturel de variables symboliques Prédiction très rapide, O(log(N)) si N est la taille du LS P Geurts - séminaire LIP6

31 Comparaison avec le k-NN
Erreur Temps de calcul Classification Régression 1,42 1,25 1,1 1 1 0,87 ET(K=1) 1-NN K-NN ET(K=1) 1-NN K-NN Classification Régression 14,7 13,7 9,2 4,1 1 1 ET(K=1) test 1-NN test E-T(K=1) Constr.+test ET(K=1) test 1-NN test ET(K=1) Constr.+test P Geurts - séminaire LIP6

32 Conclusions et perspectives
Extra-trees surtout intéressants en classification: Précision comparable aux autres méthodes d’ensemble Très rapide (surtout si beaucoup de variables) Relativement robuste Travaux futurs: Comparaison avec d’autres méthodes: boosting, SVM… Version incrémentale, adaptative Apprentissage non supervisé avec des ensembles d’arbres Interprétation d’un ensemble d’arbres P Geurts - séminaire LIP6

33 Application à la classification d’images
Raphaël Marée, Pierre Geurts, Justus Piater, Louis Wehenkel Université de Liège, Belgique P Geurts - séminaire LIP6

34 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 P Geurts - séminaire LIP6

35 Aperçu de bases de données
MNIST: ORL: COIL-100: OUTEX: P Geurts - séminaire LIP6

36 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 ? P Geurts - séminaire LIP6

37 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 = (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) P Geurts - séminaire LIP6

38 Algorithmes proposés Extra-trees Extra-trees + sous-fenêtres
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 P Geurts - séminaire LIP6

39 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 P Geurts - séminaire LIP6

40 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 P Geurts - séminaire LIP6

41 Extraction de sous-fenêtres
Test Fleur Métal Fleur Fleur Fleur P Geurts - séminaire LIP6

42 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. P Geurts - séminaire LIP6

43 Base de données DBs #images #attributs #classes MNIST 70000
784 (28x28x1) 10 ORL 400 10304 (92x112x1) 40 COIL-100 7200 3072 (32x32x3) 100 OUTEX 864 49152 (128x128x3) 54 P Geurts - séminaire LIP6

44 Protocoles d’expérimentation
MNIST LS = premières images TS = 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) P Geurts - séminaire LIP6

45 Précision 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% P Geurts - séminaire LIP6

46 Comparaison avec d’autres méthodes
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.96% 65.05% Extra-trees + SW 2.54% 0.5% 0.35% 2.78% SVMs 1.95% 0.44% 71.99% Nearest Neighbours 5.5% 2.25% 1.94% 80.79% State-of-the-art 0.7% - 0.1% 0.2% P Geurts - séminaire LIP6

47 Temps de calcul Apprentissage sur COIL-100 (1800x3072)
P Geurts - séminaire LIP6

48 Temps de calcul Test sur COIL-100 (5400 images)
P Geurts - séminaire LIP6

49 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 P Geurts - séminaire LIP6

50 Robustesse: rotation Rotation planaire des images (COIL-100)
Ok, jusque 20° avec des sous-fenêtres P Geurts - séminaire LIP6

51 Robustesse: échelle Seule la variante avec des sous-fenêtres peut encore être appliquée Le modèle est construit sur des images 32x32 (sous-fenêtres de 16x16) Ok seulement pour de faibles variations P Geurts - séminaire LIP6

52 Robustesse: occultation
La partie droite de l’image est occultée Ok jusqu’à environ 40% d’occultation avec les sous-fenêtres P Geurts - séminaire LIP6

53 Conclusions et perspectives
Méthode générique comparable aux meilleurs méthodes spécifiques bien que légèrement inférieure en précision par rapport à l’état de l’art Est-ce qu’une amélioration légère de la précision justifie une approche spécifique ? La réponse dépend de l’application Perspectives: Combinaison des sous-fenêtres avec d’autres méthodes d’apprentissage (SVM, boosting…) Amélioration de la robustesse Étudier le compromis entre efficacité et précision pour faire une prédiction. P Geurts - séminaire LIP6

54 Réferences Extra-trees: (http://www.montefiore.ulg.ac.be/~geurts)
Contribution to decision tree induction: bias/variance tradeoff and time series classification, P.Geurts, Thèse de doctorat, 2002. Traitement de grands volumes de données par ensemble d’arbre de décision, P.Geurts, Journées de Statistiques, Lyon, Juin 2003. Extremely randomized trees, P.Geurts, Rapport interne, Mai 2003. Classification d’images: ( Une méthode générique pour la classification automatique d’images à partir des pixels, R.Marée, P.Geurts et L.Wehenkel, Journées de Statistiques, Lyon, Juin 2003. A generic approach for image classification based on decision tree ensembles and local subwindows, R. Marée, P. Geurts, J. Piater, L. Wehenkel, Sixth Asian Conference on Computer Vision, Jeju (Corée), janvier 2004 A comparison of generic machine learning algorithms for image classification, R.Marée, P. Geurts, G. Visimberga, J. Piater, L. Wehenkel, 23rd SGAI International Conference on Innovative Techniques and Applications of Artificial Intelligence, Cambridge (UK), Décembre 2003. P Geurts - séminaire LIP6


Télécharger ppt "Ensembles d’arbres extrêmement aléatoires Application à la classification d’images Pierre Geurts Département d’Electricité, d’Electronique et d’Informatique,"

Présentations similaires


Annonces Google