P Geurts - séminaire LIP6 1 Ensembles darbres extrêmement aléatoires Application à la...
-
Upload
melanie-kieffer -
Category
Documents
-
view
102 -
download
0
Transcript of P Geurts - séminaire LIP6 1 Ensembles darbres extrêmement aléatoires Application à la...
P Geurts - séminaire LIP6P Geurts - séminaire LIP6 11
Ensembles d’arbres Ensembles d’arbres extrêmement aléatoiresextrêmement aléatoires
Application à la Application à la classification d’imagesclassification d’images
Pierre GeurtsPierre GeurtsDépartement d’Electricité, Département d’Electricité,
d’Electronique et d’Informatique,d’Electronique et d’Informatique,
Université de Liège, BelgiqueUniversité de Liège, Belgique
19 février 200419 février 2004
P Geurts - séminaire LIP6 2
Plan de la présentationPlan de la présentation
►Arbres extrêmement aléatoiresArbres extrêmement aléatoires Arbres de décision et méthodes Arbres de décision et méthodes
d’ensembled’ensemble Arbres extrêmement aléatoiresArbres extrêmement aléatoires Analyse biais-varianceAnalyse biais-variance En pratiqueEn pratique Arbre totalement aléatoireArbre totalement aléatoire
►Application à la classification d’imagesApplication à la classification d’images
P Geurts - séminaire LIP6 3
Arbres de décision/régressionArbres de décision/régression
X1 t1
X2 t2 X1 t3
X2 t4r1 r2 r3
r4 r5
r2
r1
r3
r5
r4t2
t1 t3 X1
X2
P Geurts - séminaire LIP6 4
Arbres de décision/régressionArbres de décision/régression
► Construction de l’arbre à partir de donnéesConstruction de l’arbre à partir de données De haut en basDe haut en bas À chaque étape:À chaque étape:
► On choisit un nœud terminalOn choisit un nœud terminal► On cherche le meilleur attribut et la meilleure question On cherche le meilleur attribut et la meilleure question
selon une selon une mesure de scoremesure de score► On éclate le nœudOn éclate le nœud
► Variable numérique: question de type Variable numérique: question de type [[AA<<aathth?]?] Demande le tri de l’échantillon selon les valeurs Demande le tri de l’échantillon selon les valeurs
de de AA Calcul du score pour au plus Calcul du score pour au plus NN valeurs de seuil valeurs de seuil
candidates (si candidates (si NN objets au nœud) objets au nœud)
P Geurts - séminaire LIP6 5
Arbres de décision/régressionArbres de décision/régression
►Points forts de la méthode:Points forts de la méthode: InterprétableInterprétable FlexibleFlexible Relativement efficaceRelativement efficace
►Point faible: Une variance importantePoint faible: Une variance importante Interprétabilité remise en questionInterprétabilité remise en question Précision en deçà d’autres méthodesPrécision en deçà d’autres méthodes
P Geurts - séminaire LIP6 6
Réduction de varianceRéduction de variance
►Différentes approches possibles:Différentes approches possibles: Stabiliser les paramètres de l’arbreStabiliser les paramètres de l’arbre
►Améliore l’interprétabilité mais pas la précisionAméliore l’interprétabilité mais pas la précision
« Fuzzyfier » les tests: arbres flous, arbres « Fuzzyfier » les tests: arbres flous, arbres probabilistes…probabilistes…
►Améliore la précisionAméliore la précision et préserve l’interprétabilité et préserve l’interprétabilité
Agréger plusieurs arbres: méthodes Agréger plusieurs arbres: méthodes d’ensembled’ensemble
►Améliore la précision mais on perd Améliore la précision mais on perd l’interprétabilitél’interprétabilité
P Geurts - séminaire LIP6 7
Méthodes d’ensembleMéthodes d’ensemble
►Deux approches:Deux approches: Algorithmes de type boosting: Algorithmes de type boosting:
construction séquentielle (itérative) des construction séquentielle (itérative) des modèlesmodèles
►Réduit essentiellement le biais mais aussi la Réduit essentiellement le biais mais aussi la variancevariance
Algorithme de randomisation: Algorithme de randomisation: construction en parallèle des modèlesconstruction en parallèle des modèles
►Réduit Réduit essentiellementessentiellement la variance, augmente la variance, augmente le biaisle biais
P Geurts - séminaire LIP6 8
RandomisationRandomisation► Idée: agréger les prédictions de Idée: agréger les prédictions de
plusieurs modèles instablesplusieurs modèles instables
good badgood
good
P Geurts - séminaire LIP6 9
RandomisationRandomisation
► Pour obtenir les différents modèles, il faut Pour obtenir les différents modèles, il faut perturber soit:perturber soit: les données:les données:
► Bagging (Breiman, 1996): ré-échantillonnage avec Bagging (Breiman, 1996): ré-échantillonnage avec remplacementremplacement
► Méthode subspace (Ho, 1998): bruite la liste des attributsMéthode subspace (Ho, 1998): bruite la liste des attributs
l’algorithme d’apprentissage directement:l’algorithme d’apprentissage directement:► Random trees (Dietterich, 2000): choix aléatoire d’un Random trees (Dietterich, 2000): choix aléatoire d’un
test parmi les 20 meilleurstest parmi les 20 meilleurs► Random forests (Breiman, 2001): bagging + choix du Random forests (Breiman, 2001): bagging + choix du
meilleur test parmi un sous-ensemble aléatoire de meilleur test parmi un sous-ensemble aléatoire de kk attributsattributs
P Geurts - séminaire LIP6 10
RandomisationRandomisation
►Deux observations:Deux observations: Les méthodes Les méthodes d’ensembled’ensemble fournissent toutes fournissent toutes
un test différent de l’optimal mais un test différent de l’optimal mais recherchent quand même ce test optimal. recherchent quand même ce test optimal.
Les paramètres des arbres sont très Les paramètres des arbres sont très instablesinstables
►ButButss de l’étude proposée ici: de l’étude proposée ici: Évaluer une variante totalement aléatoireÉvaluer une variante totalement aléatoire Vérifier si le degré de randomisation est Vérifier si le degré de randomisation est
dépendant du problème.dépendant du problème.
P Geurts - séminaire LIP6 11
Randomisation proposéeRandomisation proposée
► Lors du développement d’un nœud:Lors du développement d’un nœud: On génère On génère KK tests aléatoirement et on prend le tests aléatoirement et on prend le
meilleur test parmi ceux-cimeilleur test parmi ceux-ci Pour générer un test aléatoire:Pour générer un test aléatoire:
► On choisit un attribut aléatoirementOn choisit un attribut aléatoirement► S’il est numérique, on choisit un seuil de discrétisation au S’il est numérique, on choisit un seuil de discrétisation au
hasard (entre le min et le max de l’attribut dans hasard (entre le min et le max de l’attribut dans l’échantillon)l’échantillon)
► S’il est symbolique, on choisit un sous-ensemble aléatoire S’il est symbolique, on choisit un sous-ensemble aléatoire des valeurs possibles de l’attributdes valeurs possibles de l’attribut
► On développe l’arbre complètementOn développe l’arbre complètement► (« extra-trees » pour « extremely randomized (« extra-trees » pour « extremely randomized
trees »)trees »)
P Geurts - séminaire LIP6 12
Extra-treesExtra-trees
►K contrôle le degré de randomisation:K contrôle le degré de randomisation: Si Si KK=1, la structure de l’arbre est =1, la structure de l’arbre est
déterminée totalement aléatoirement, déterminée totalement aléatoirement, sans référence à la sortie.sans référence à la sortie.
Si Si KK , la structure tend vers celle d’un , la structure tend vers celle d’un arbre classiquearbre classique
P Geurts - séminaire LIP6 13
ExpérimentationsExpérimentations
►Sur Sur 1212 problèmes de classification et problèmes de classification et 12 12 problèmes problèmes de régressionde régression
►Comparaison de plusieurs méthodes:Comparaison de plusieurs méthodes: Arbres classiques (élagués)Arbres classiques (élagués) Méthodes d’ensemble (100 arbres, non-Méthodes d’ensemble (100 arbres, non-
élagués)élagués)►BaggingBagging►Random Forests (k optimisé)Random Forests (k optimisé)►Arbres totalement aléatoires (K=1)Arbres totalement aléatoires (K=1)►Extra-trees (K optimisé)Extra-trees (K optimisé)
P Geurts - séminaire LIP6 14
Problèmes de classificationProblèmes de classificationDataset DT Bagging RF K=1 K opt.Waveform 28.76 19.41 16.97 17.98 16.59Two-norm 22.31 6.97 3.54 3.18 3.11Ring-norm 15.4 8.12 3.64 5.4 3.24Vehicle 28.05 25.15 24.73 27.27 24.19Vowel 20.71 7.35 3.43 2.08 1.68Segment 3.35 2.2 1.83 2.46 1.4Spambase 7.36 5.73 4.54 4.68 4.2Satellite 13.52 9.56 8.45 9.55 8.12Pendigits 3.89 1.74 1.02 0.89 0.62Dig44 13.96 8.24 5.23 5.4 4.44Letter 14.75 7.44 4.87 5.46 3.74Isolet 24.43 12.4 8.43 19.8 7.18
P Geurts - séminaire LIP6 15
ProblèmeProblèmess de classification de classification
► Erreurs relatives moyennesErreurs relatives moyennes
► Extra-trees meilleurs que bagging et Extra-trees meilleurs que bagging et légèrement meilleurs que random forestslégèrement meilleurs que random forests
► Arbres totalement aléatoires compétitifs par Arbres totalement aléatoires compétitifs par rapport aux autres méthodesrapport aux autres méthodes
1 arbre Bagging
RF ET (K=1) ET (K opt.)
1,0
0,580,42 0,50
0,37
P Geurts - séminaire LIP6 16
Problèmes de classificationProblèmes de classification
► Influence de Influence de KK sur l’erreur sur l’erreur
2
3
4
5
6
7
8
1 20 40 60 80 100
K
Err
eur
(%)
Arbre totalement aléatoire
Arbre classique
Letter
Two-norm
P Geurts - séminaire LIP6 17
ProblèmeProblèmess de régression de régressionDataset DT Bagging RF K=1 K opt.Friedman1 10.84 5.69 5.55 12.61 4.97Housing 19.63 9.86 9.72 17.37 9.5Hwang-f5 10.91 4.72 4.72 18.88 1.55Hwang-f5n 9.71 7.91 7.91 8.9 7.54Pumadyn-fh 4.26 4.22 4.18 6.24 4.18Pumadyn-nm 9.06 6.77 6.75 84.43 6.37Abalone 5.61 4.71 4.57 4.76 4.6Ailerons 4.21 2.88 2.85 5.96 2.91Elevators 15.86 9.42 9.36 16.77 7.9Poletelecomm 6.9 3.41 3.24 25.95 2.58Bank-32nh 9 7.46 7.35 12.26 7.23Census-16H 1.82 1.15 1.12 1.5 1.1
P Geurts - séminaire LIP6 18
ProblèmeProblèmess de régression de régression► Erreurs relatives moyennesErreurs relatives moyennes
► Bagging, Random Forests et Extra-trees très Bagging, Random Forests et Extra-trees très proches.proches.
► ArbreArbress totalement aléatoire totalement aléatoiress pas très bon pas très bonss sur certains problèmessur certains problèmes
1 arbre Bagging
RF ET (K=1) ET (K opt.)
1,00,67 0,66
2,06
0,61
1,16
P Geurts - séminaire LIP6 19
Problèmes de régressionProblèmes de régression► Influence de Influence de KK sur l’erreur sur l’erreur
6
8
10
12
14
16
18
1 20 40 60 80 100
K
Err
eur
Elevators
Housing
Arbre totalement aléatoire
Arbre classique
P Geurts - séminaire LIP6 20
Conclusion des Conclusion des expérimentationsexpérimentations
► On peut aller très loin en terme de randomisation On peut aller très loin en terme de randomisation avec les méthodes d’ensemble et quand même avec les méthodes d’ensemble et quand même améliorer la précision par rapport à un seul arbreaméliorer la précision par rapport à un seul arbre
► Différence importante entre problèmes de Différence importante entre problèmes de classification et problèmes de régressionclassification et problèmes de régression En classificationEn classification, l, la randomisation peut aller très loin a randomisation peut aller très loin
et améliore fortement la précision par rapport au et améliore fortement la précision par rapport au baggingbagging
En régressionEn régression, l, la randomisation permise est plus faible a randomisation permise est plus faible et le bagging va généralement suffisamment loin de ce et le bagging va généralement suffisamment loin de ce point de vuepoint de vue
► AnalyseAnalyse basée sur les notions de biais et de basée sur les notions de biais et de variancevariance
P Geurts - séminaire LIP6 21
Notion de biais et de Notion de biais et de variancevariance
►Biais=erreur systématique commise par Biais=erreur systématique commise par une méthode (indépendamment de une méthode (indépendamment de l’échantillon)l’échantillon)
►Variance=erreur due à la variabilité du Variance=erreur due à la variabilité du modèle (en fonction de l’échantillon)modèle (en fonction de l’échantillon)
►En régression: En régression: Err. quad.Err. quad. Moyenne (MSE) Moyenne (MSE)== erreur min.+biais+varianceerreur min.+biais+variance
P Geurts - séminaire LIP6 22
Compromis biais/varianceCompromis biais/variance► Sur un problème de régressionSur un problème de régression (Friedman1) (Friedman1)
► Lorsque K Lorsque K augmenteaugmente (la randomisation (la randomisation diminuediminue), ), le biais le biais diminuediminue et la variance et la variance augmenteaugmente..
0
2
4
6
8
10
12
14
0 20 40 60 80 100
MSE
BiaisVariance
K
P Geurts - séminaire LIP6 23
Variables non pertinentesVariables non pertinentes► Si K=1, la méthode est incapable de détecter Si K=1, la méthode est incapable de détecter
(localement ou globalement) des variables non (localement ou globalement) des variables non pertinentespertinentes
► Par exemple, s’il y a 50% de variables inutiles, Par exemple, s’il y a 50% de variables inutiles, 50% des tests dans l’arbre seront inutiles50% des tests dans l’arbre seront inutiles
la complexité effective de l’arbre diminue de la complexité effective de l’arbre diminue de moitié et le biais augmente fortementmoitié et le biais augmente fortement
► ExempleExemple: Friedman1 sans/avec 5 attributs : Friedman1 sans/avec 5 attributs bruitésbruités
MSEMSE BiaisBiais VarianceVariance
Sans bruitSans bruit 5,725,72 5,215,21 0,510,51
Avec bruitAvec bruit 11,7311,73 11,2711,27 0,460,46
P Geurts - séminaire LIP6 24
Biais et variance en Biais et variance en classificationclassification
► La plupart des méthodes de classification La plupart des méthodes de classification cherchecherchentnt une fonction une fonction ff ((xx)) et prédisent la et prédisent la classe en classe en xx par: par:
► Une erreur systématique (biais) sur Une erreur systématique (biais) sur ff n’a pas n’a pas d’importanced’importance tant que tant que ff reste du bon côté de reste du bon côté de la frontière de décisionla frontière de décision
En classification, le biais (sur En classification, le biais (sur ff ) a moins) a moins d’importance que la variance (sur d’importance que la variance (sur ff ))
5,0)( si
5,0)( si )(
2
1
xfc
xfcxC
P Geurts - séminaire LIP6 25
Compromis biais/varianceCompromis biais/variance► Sur un problème de classificationSur un problème de classification (Waveform) (Waveform)
► Le minimum du taux d’erreur correspond à plus Le minimum du taux d’erreur correspond à plus de randomisation de randomisation (K plus petit) (K plus petit) que le minimum que le minimum de l’erreur quadratique.de l’erreur quadratique.
MSE sur f
0
0,1
0,2
0 10 20 30 40 50
K
Biais sur fVariance sur f
Erreur sur C
P Geurts - séminaire LIP6 26
En pratiqueEn pratique
► Quelle valeur de K par défaut ?Quelle valeur de K par défaut ? En classification, K=5En classification, K=5 En régression, K=min(30,nombre d’attributs)En régression, K=min(30,nombre d’attributs)
► Ce qu’on perd en moyenne en précision:Ce qu’on perd en moyenne en précision:
1 arbre Bagging
K déf.K opt. 1 arbre Bagging
K déf.K opt.
Classification
Régression
1,0
0,580,37 0,41
1,00,67 0,61 0,62
P Geurts - séminaire LIP6 27
TTemps de calculemps de calcul
► Avantage important en classificationAvantage important en classification, marginal , marginal en régression. D’autant plus important qu’il y a en régression. D’autant plus important qu’il y a de variables. Exemple sur Isolet (de variables. Exemple sur Isolet (NN=6238 =6238 mm=617): =617): 1 arbre: 37s1 arbre: 37s Bagging: 37mBagging: 37m Extra-trees (déf.): 4sExtra-trees (déf.): 4s
1 arbre Bagging
K déf.K=1 1 arbre Bagging
K déf.K=1
1
62,2
4,1 7,41
57,0
11,3
49,1
Classification
Régression
P Geurts - séminaire LIP6 28
CComplexitéomplexité du modèle du modèle
► Les arLes arbres aléatoires sont beaucoup plus complexes bres aléatoires sont beaucoup plus complexes (surtout en classification). (surtout en classification).
► Heureusement, le test reste très rapide car la profondeur Heureusement, le test reste très rapide car la profondeur augmente seulement augmente seulement avec le lavec le logarithmogarithme dee de la complexité. la complexité.
1 arbre Bagging
K déf.K=1 1 arbre Bagging
K déf.K=1
174
596
330
164
130 107
Classification Régression
P Geurts - séminaire LIP6 29
Variante totalement aléatoireVariante totalement aléatoire
► Étonnamment, cette variante fonctionne assez Étonnamment, cette variante fonctionne assez bien sur plusieurs problèmes (particulièrement bien sur plusieurs problèmes (particulièrement de classification) de classification)
► Totalement non paramétrique (pas d’hypothèse Totalement non paramétrique (pas d’hypothèse sur le problème, pas de mesure de score…)sur le problème, pas de mesure de score…)
► Extrêmement rapide et complexité Extrêmement rapide et complexité indépendante de la dimension du problèmeindépendante de la dimension du problème
► la structure de l’arbre est totalement la structure de l’arbre est totalement indépendante de la sortie indépendante de la sortie On peut l’utiliser On peut l’utiliser pour une autre sortie en changeant simplement pour une autre sortie en changeant simplement les prédictions aules prédictions auxx feuille feuilless
P Geurts - séminaire LIP6 30
Comparaison avec le k-NNComparaison avec le k-NN► Points communs:Points communs:
Les deux méthodes sont basées sur une métrique Les deux méthodes sont basées sur une métrique indépendante de la sortie:indépendante de la sortie:
► Deux points sont proches s’ils tombent souvent ensemble Deux points sont proches s’ils tombent souvent ensemble dans les mêmes feuilles des arbres de l’ensembledans les mêmes feuilles des arbres de l’ensemble
Elles sont sensibles à la présence de variables non Elles sont sensibles à la présence de variables non pertinentespertinentes
Modèles relativement lourdsModèles relativement lourds► Mais grâce aux arbres:Mais grâce aux arbres:
Distance invariante à certaines transformations des Distance invariante à certaines transformations des variables, insensible aux outliers, normalisation variables, insensible aux outliers, normalisation inutile …inutile …
Traitement naturel de variables symboliques Traitement naturel de variables symboliques Prédiction très rapide, Prédiction très rapide, O(log(O(log(NN)))) si si NN est la taille du est la taille du LSLS
P Geurts - séminaire LIP6 31
Comparaison avec le k-NNComparaison avec le k-NN► ErreurErreur
► Temps de calculTemps de calcul
11,25
1,1 11,42
0,87
ET(K=1) ET(K=1)1-NN K-NN 1-NN K-NN
1-NNtest
1-NNtest
ET(K=1)test
E-T(K=1)Constr.+test
1
14,7 13,7
1
9,2
4,1
ET(K=1)test
ET(K=1)Constr.+test
Classification
Régression
Classification
Régression
P Geurts - séminaire LIP6 32
Conclusions et perspectivesConclusions et perspectives
► Extra-trees surtout intéressants en classification:Extra-trees surtout intéressants en classification: Précision comparable aux autres méthodes d’ensemblePrécision comparable aux autres méthodes d’ensemble Très rapide (surtout si beaucoup de variables)Très rapide (surtout si beaucoup de variables) Relativement robusteRelativement robuste
► Travaux futurs:Travaux futurs: Comparaison avec d’autres méthodes: boosting, SVM…Comparaison avec d’autres méthodes: boosting, SVM… Version incrémentale, adaptativeVersion incrémentale, adaptative Apprentissage non supervisé avec des ensembles Apprentissage non supervisé avec des ensembles
d’arbresd’arbres Interprétation d’un ensemble d’arbresInterprétation d’un ensemble d’arbres
P Geurts - séminaire LIP6P Geurts - séminaire LIP6 3333
Application à la Application à la classification classification
d’imagesd’images
Raphaël Marée, Pierre Geurts, Raphaël Marée, Pierre Geurts, Justus Piater, Louis WehenkelJustus Piater, Louis Wehenkel
Université de Liège, BelgiqueUniversité de Liège, Belgique
P Geurts - séminaire LIP6 34
Classification automatique Classification automatique d’imagesd’images
► À partir d’une base de données d’images À partir d’une base de données d’images pré-classifiées, construire un modèle qui pré-classifiées, construire un modèle qui classera aussi bien que possible de classera aussi bien que possible de nouvelles imagesnouvelles images
► Exemples d’applications: Exemples d’applications: reconnaissance de caractères manuscritsreconnaissance de caractères manuscrits reconnaissance de visagesreconnaissance de visages reconnaissance d’objetsreconnaissance d’objets reconnaissance de texturesreconnaissance de textures
P Geurts - séminaire LIP6 35
Aperçu de bases de donnéesAperçu de bases de données
► MNIST:MNIST:
► ORL: ORL:
► COIL-100: COIL-100:
► OUTEX: OUTEX:
P Geurts - séminaire LIP6 36
Algorithme génériqueAlgorithme générique► Solution traditionnelle en deux étapes: Solution traditionnelle en deux étapes:
Extraction de caractéristiques Extraction de caractéristiques Application de techniques d’apprentissage ou Application de techniques d’apprentissage ou
d’appariement (matching) sur ces caractéristiquesd’appariement (matching) sur ces caractéristiques► Inconvénient: la première étape de Inconvénient: la première étape de
prétraitement est laborieuse et dépendante du prétraitement est laborieuse et dépendante du problèmeproblème
► Avancées en apprentissage proposent des Avancées en apprentissage proposent des méthodes capables de traiter des problèmes méthodes capables de traiter des problèmes complexescomplexes de dimension très importante de dimension très importante
► Que peut-on faire pour ce problème particulier Que peut-on faire pour ce problème particulier en apprenant directement sur les valeurs brutes en apprenant directement sur les valeurs brutes des pixels ?des pixels ?
P Geurts - séminaire LIP6 37
Exemple de base de donnéesExemple de base de données
► OUTEX: base de données de 864 images en OUTEX: base de données de 864 images en couleurs (54 textures différentes) de 128x128 couleurs (54 textures différentes) de 128x128 pixelspixels
► Une image = 49152 (128x128x3) valeurs Une image = 49152 (128x128x3) valeurs entières comprises dans [0,255] et une classe entières comprises dans [0,255] et une classe (nom de texture)(nom de texture)
► LS = 432 images (8 images par texture)LS = 432 images (8 images par texture)► TS = 432 images (8 images restantes par TS = 432 images (8 images restantes par
texture)texture)
P Geurts - séminaire LIP6 38
Algorithmes proposésAlgorithmes proposés
►Extra-treesExtra-trees Très efficaces pour traiter un grand nombre Très efficaces pour traiter un grand nombre
de variablesde variables
►Extra-trees + sous-fenêtresExtra-trees + sous-fenêtres Extraction et classification de sous-fenêtres Extraction et classification de sous-fenêtres
dans les images dans les images Permet de tenir compte de caractéristiques Permet de tenir compte de caractéristiques
plus locales dans les images et augmente plus locales dans les images et augmente artificiellement l’ensemble d’apprentissageartificiellement l’ensemble d’apprentissage
P Geurts - séminaire LIP6 39
Extraction de sous-fenêtresExtraction de sous-fenêtres
► Apprentissage:Apprentissage:
Etant donné une taille de fenêtre Etant donné une taille de fenêtre WW11xxWW22 et un et un nombre de fenêtres nombre de fenêtres NNww:: Extraire Extraire NNww sous-fenêtres aléatoirement à partir des sous-fenêtres aléatoirement à partir des
images de l’ensemble d’apprentissage et assigner images de l’ensemble d’apprentissage et assigner à chaque sous-fenêtre la classe de l’image originaleà chaque sous-fenêtre la classe de l’image originale
Construire un modèle pour classer ces Construire un modèle pour classer ces NNww images images en utilisant les en utilisant les WW11xxWW22 pixels qui les décrivent pixels qui les décrivent
… …
P Geurts - séminaire LIP6 40
Extraction de sous-fenêtresExtraction de sous-fenêtres
►Test d’une image:Test d’une image:
Etant donné la taille de sous-fenêtres Etant donné la taille de sous-fenêtres WW11xxWW22:: Extraire tous les sous-fenêtres possibles de Extraire tous les sous-fenêtres possibles de
taille taille WW11xxWW22 dans l’image à tester dans l’image à tester Appliquer le modèle sur chaque sous-fenêtreAppliquer le modèle sur chaque sous-fenêtre Attribuer à l’image la classe majoritaire Attribuer à l’image la classe majoritaire
parmi les classes attribuées aux sous-parmi les classes attribuées aux sous-fenêtresfenêtres
P Geurts - séminaire LIP6 41
Extraction de sous-fenêtresExtraction de sous-fenêtres►TestTest
…
… … … …
Fleur
Fleur
Fleur
Métal
Fleur
P Geurts - séminaire LIP6 42
Extraction de sous-fenêtresExtraction de sous-fenêtres
► Les sous-fenêtres permettent de tenir compte Les sous-fenêtres permettent de tenir compte de caractéristiques plus locales dans les de caractéristiques plus locales dans les images et augmente artificiellement images et augmente artificiellement l’échantillon (l’échantillon (NNww>>)>>)
► La taille des sous-fenêtres dépend du problèmeLa taille des sous-fenêtres dépend du problème d’autant plus petite que les classes d’images d’autant plus petite que les classes d’images
dépendent de caractéristiques localesdépendent de caractéristiques locales Exemple: classification de caractères manuscripts Exemple: classification de caractères manuscripts !!
grandes fenêtres, classification de texture grandes fenêtres, classification de texture !! fenêtres fenêtres plus petitesplus petites
► En pratique, détermination de la taille optimale En pratique, détermination de la taille optimale par validation croisée pour rester générique.par validation croisée pour rester générique.
P Geurts - séminaire LIP6 43
DBsDBs #images#images #attribut#attributss
#classes#classes
MNISTMNIST 7000070000 784 784 (28x28x1)(28x28x1)
1010
ORLORL 400400 10304 10304 (92x112x1)(92x112x1)
4040
COIL-100COIL-100 72007200 3072 3072 (32x32x3)(32x32x3)
100100
OUTEXOUTEX 864864 49152 49152 (128x128x(128x128x3)3)
5454
Base de donnéesBase de données
P Geurts - séminaire LIP6 44
Protocoles d’expérimentationProtocoles d’expérimentation► MNISTMNIST
LS = 60000 premières imagesLS = 60000 premières images TS = 10000 dernières imagesTS = 10000 dernières images
► ORLORL 100 groupes de données:100 groupes de données:
► LS = 200 images (5 images par personne)LS = 200 images (5 images par personne)► TS = 200 images (5 images restantes par personne)TS = 200 images (5 images restantes par personne)
► COIL-100COIL-100 LS = 1800 images (k*20°, k=0..17)LS = 1800 images (k*20°, k=0..17) TS = 5400 images (36 images restantes par objet)TS = 5400 images (36 images restantes par objet)
► OUTEXOUTEX LS = 432 images (8 images par texture)LS = 432 images (8 images par texture) TS = 432 images (8 images restantes par texture)TS = 432 images (8 images restantes par texture)
P Geurts - séminaire LIP6 45
PrécisionPrécisionBDsBDs Extra-treesExtra-trees Sous-Sous-
fenêtresfenêtresLittératureLittérature
MNISTMNIST 3.26%3.26% 2.63%2.63%
(w(w11=w=w22=24)=24)12%…0.7%12%…0.7%
ORLORL 4.56% 4.56% ±± 1.43 1.43 2.13% 2.13% ±± 1.18 1.18
(w(w11=w=w22=32)=32)7.5%…0%7.5%…0%
COIL-100COIL-100 2.04%2.04% 0.39%0.39%
(w(w11=w=w22=16)=16)12.5%…0.1%12.5%…0.1%
OUTEXOUTEX 64.35%64.35% 2.78%2.78%
(w(w11=w=w22=4)=4)9.5%…0.2%9.5%…0.2%
P Geurts - séminaire LIP6 46
Comparaison avec d’autres Comparaison avec d’autres méthodesméthodes
MethodMethod MNISMNISTT
ORLORL COIL-100COIL-100 OUTEXOUTEX
One classical DTOne classical DT 11.5%11.5% 29.25%29.25% 20.80%20.80% 89.35%89.35%
Bagging DTBagging DT 4.42%4.42% 9.5%9.5% 2.24%2.24% 73.15%73.15%
Boosting DTBoosting DT 2.29%2.29% 3.75%3.75% 0.54%0.54% 69.44%69.44%
Random ForestsRandom Forests 3.0%3.0% 1.25%1.25% 1.17%1.17% 66.90%66.90%
Extra-treesExtra-trees 3.17%3.17% 1.25%1.25% 1.96%1.96% 65.05%65.05%
Extra-trees + SWExtra-trees + SW 2.54%2.54% 0.5%0.5% 0.35%0.35% 2.78%2.78%
SVMsSVMs 1.95%1.95% 1.25%1.25% 0.44%0.44% 71.99%71.99%
Nearest Nearest NeighboursNeighbours
5.5%5.5% 2.25%2.25% 1.94%1.94% 80.79%80.79%
State-of-the-artState-of-the-art 0.7%0.7% -- 0.1%0.1% 0.2%0.2%
P Geurts - séminaire LIP6 47
Temps de calculTemps de calcul
►Apprentissage sur COIL-100 Apprentissage sur COIL-100 (1800x3072)(1800x3072)
time (s)
19561
6805
2745
1291
188
62
9
0 5000 10000 15000 20000 25000
Boosting
Bagging
Extra-trees + SW
Random Forests
Classical DT
SVMs
Extra-trees
time (s)
P Geurts - séminaire LIP6 48
Temps de calculTemps de calcul
►Test sur COIL-100 (5400 images)Test sur COIL-100 (5400 images)
time (s)
1345
199
54
6
5
1
0,6
0,01
0 500 1000 1500
Nearest Neighbours
SVMs
Extra-trees + SW
Extra-trees
Random Forests
Boosting
Bagging
Classical DT
time (s)
P Geurts - séminaire LIP6 49
RobustesseRobustesse
►L’inconvénient d’une approche L’inconvénient d’une approche générique est peut-être le manque de générique est peut-être le manque de robustesse à différentes robustesse à différentes transformations des imagestransformations des images
►Exemples de transformations:Exemples de transformations: RotationRotation Changement d’échelleChangement d’échelle OccultationOccultation
P Geurts - séminaire LIP6 50
Robustesse: rotationRobustesse: rotation
►Rotation planaire des images (COIL-Rotation planaire des images (COIL-100)100)
►Ok, jusque 20° avec des sous-fenêtresOk, jusque 20° avec des sous-fenêtres
0%
20%
40%
60%
80%
100%
0° 10° 20° 30° 45°
Rotation degrees
Err
or
rate
s
Extra-trees
Extra-trees +Sub-windows
P Geurts - séminaire LIP6 51
Robustesse: échelleRobustesse: échelle► Seule la variante avec des sous-fenêtres peut Seule la variante avec des sous-fenêtres peut
encore être appliquéeencore être appliquée► Le modèle est construit sur des images 32x32 Le modèle est construit sur des images 32x32
(sous-fenêtres de 16x16)(sous-fenêtres de 16x16)
► Ok seulement pour de faibles variationsOk seulement pour de faibles variations
0%10%20%30%40%50%60%70%80%
Sizes
Err
or
ra
tes
Extra-trees +Sub-windows
P Geurts - séminaire LIP6 52
Robustesse: occultationRobustesse: occultation
► La partie droite de l’image est occultéeLa partie droite de l’image est occultée
► Ok jusqu’à environ 40% d’occultation avec Ok jusqu’à environ 40% d’occultation avec les sous-fenêtresles sous-fenêtres
0%10%20%30%40%50%60%
0% 25%
37.5
0%
40.6
3%
43.7
5%
46.8
8% 50%
Erased parts
Err
or r
ates Extra-trees
Extra-trees +Sub-windows
P Geurts - séminaire LIP6 53
Conclusions et perspectivesConclusions et perspectives► Méthode générique comparable aux meilleurs Méthode générique comparable aux meilleurs
méthodes spécifiques bien que légèrement méthodes spécifiques bien que légèrement inférieure en précision par rapport à l’état de inférieure en précision par rapport à l’état de l’artl’art
► Est-ce qu’une amélioration légère de la Est-ce qu’une amélioration légère de la précision justifie une approche spécifique ? La précision justifie une approche spécifique ? La réponse dépend de l’applicationréponse dépend de l’application
► Perspectives:Perspectives: Combinaison des sous-fenêtres avec d’autres Combinaison des sous-fenêtres avec d’autres
méthodes d’apprentissage (SVM, boosting…)méthodes d’apprentissage (SVM, boosting…) Amélioration de la robustesseAmélioration de la robustesse Étudier le compromis entre efficacité et précision Étudier le compromis entre efficacité et précision
pour faire une prédiction.pour faire une prédiction.
P Geurts - séminaire LIP6 54
RéferencesRéferences► Extra-trees: (Extra-trees: (http://http://www.montefiore.ulg.ac.bewww.montefiore.ulg.ac.be/~/~geurtsgeurts))
Contribution to decision tree induction: bias/variance tradeoff and time Contribution to decision tree induction: bias/variance tradeoff and time series classificationseries classification, P.Geurts, Thèse de doctorat, 2002., P.Geurts, Thèse de doctorat, 2002.
Traitement de grands volumes de données par ensemble d’arbre de Traitement de grands volumes de données par ensemble d’arbre de décisiondécision, P.Geurts, Journées de Statistiques, Lyon, Juin 2003., P.Geurts, Journées de Statistiques, Lyon, Juin 2003.
Extremely randomized trees, P.Geurts, Rapport interne, Mai 2003.Extremely randomized trees, P.Geurts, Rapport interne, Mai 2003.
► Classification d’images: (Classification d’images: (http://http://www.montefiore.ulg.ac.bewww.montefiore.ulg.ac.be/~/~mareemaree)) Une méthode générique pour la classification automatique d’images à partir Une méthode générique pour la classification automatique d’images à partir
des pixelsdes pixels, R.Marée, P.Geurts et L.Wehenkel, Journées de Statistiques, Lyon, , R.Marée, P.Geurts et L.Wehenkel, Journées de Statistiques, Lyon, Juin 2003.Juin 2003.
A generic approach for image classification based on decision tree A generic approach for image classification based on decision tree ensembles and local subwindowsensembles and local subwindows, R. Marée, P. Geurts, J. Piater, L. Wehenkel, , R. Marée, P. Geurts, J. Piater, L. Wehenkel, Sixth Asian Conference on Computer Vision, Jeju (Corée), janvier 2004Sixth Asian Conference on Computer Vision, Jeju (Corée), janvier 2004
A comparison of generic machine learning algorithms for image A comparison of generic machine learning algorithms for image classificationclassification, R.Marée, P. Geurts, G. Visimberga, J. Piater, L. Wehenkel, 23rd , R.Marée, P. Geurts, G. Visimberga, J. Piater, L. Wehenkel, 23rd SGAI International Conference on Innovative Techniques and Applications of SGAI International Conference on Innovative Techniques and Applications of Artificial Intelligence, Cambridge (UK), Décembre 2003.Artificial Intelligence, Cambridge (UK), Décembre 2003.