Title: Arbres de d
1Arbres de décision flous
2Plan
- Les arbres de décision binaire
- Partitionnement flou de données numériques
- Construction darbres de décision flous
- Procédure dinférence pour la classification
3Les arbres de décision binaire
- Classifient les données selon une hiérarchie
dattributs ordonnés selon leur pouvoir
représentatif. - Larbre idéal est compact avec un pouvoir de
prédiction maximum. - Un arbre de décision binaire possède
- Un ensemble de nœuds organisés hiérarchiquement
qui testent chacun la valeur dun attribut pour
effectuer un branchement conséquent. - Un ensemble de feuilles qui sont reliées à
différentes classes.
4Un arbre de décision binaire typique
Une même classe peut se retrouver dans des
feuilles multiples
5Limitations des arbres classiques
- Le processus de décision dépend de valeurs seuils
- NOM lt 20 -gt class 1
- NOM gt 20 -gt class 0
- Doù vient 20 ? Pourquoi pas 19.9 ou 20.1 ?
- La division des données pour construire larbre
nest pas toujours parfaite. - Larbre est sensible au bruit dans lensemble
dapprentissage.
6Limitations des arbres classiques
- Le processus de classification suit le premier
chemin valide - Exemple (classe avec DIT3, CLD0, NOM4)
TDIFDT
TDIDT
DIT gtgt 2
CLD gtgt 0
NOM gtgt 8
0.35
0.4
7Avantages potentiels dun arbre flou
- Les valeurs linguistiques éliminent le problème
des seuils durs - Tous les chemins sont évalués lors du processus
de classification - Meilleure robustesse face au bruit
- Meilleur pouvoir de généralisation entre
lensemble dapprentissage et lensemble test - Règles plus facilement interprétables
8Apprentissage de classes multiples
- On crée un arbre pour chaque paire (Ci, )
(potentiel dexplosion combinatoire!)
(A1,C1) (A2,C2) (A3,C3) (A4,C1) (A5,C2) (A6,C1)
(A1, C1) (A2, ) (A3, ) (A4, C1) (A5,
) (A6, C1)
(A1, ) (A2, C2 ) (A3, ) (A4,
) (A5, C2 ) (A6, )
(A1, ) (A2, ) (A3, C3) (A4, ) (A5,
) (A6, )
Arbre binaire (C2, )
Arbre binaire (C3, )
Arbre binaire (C1, )
9Le processus de classification
- Déterminer sans ambiguïté la classe dune donnée
(A1,? )
Arbre binaire (C2, )
Arbre binaire (C3, )
Arbre binaire (C1, )
(A1,C1)
10Partitionnement flou des données
- C-centroïdes (version floue des k-centroïdes)
- Morphologie mathématique
- Opérations de base
- Ouverture
- Fermeture
- Filtre
11Partitionnement flou des données
.
12Partitionnement flou des données
Mot dapprentissage
Mot filtré
13Partitionnement flou des données
14Création dun arbre de décision binaire par
induction
Algorithme C4.5 Si exemples dapprentissage
épuisés Stop Sinon Si tous les exemples
dapprentissage appartiennent à la même
classe - Créer un feuille portant le nom
de la classe Sinon - Utiliser un test pour
trouver le meilleur attribut discriminant
dans lensemble dapprentissage -
Diviser l'ensemble dapprentissage en deux
selon les valeurs de lattribut identifié
Fin si Fin si
- Lentropie est utilisée comme mesure
dinformation - Comme chaque attribut est commun à toutes les
classes, Il faut tenir compte de son pouvoir
discriminant pour chacune delles
15Induction dun arbre de décision flou
- Similaire à lalgorithm TDIDT de Quinlan
Fonction induire_arbre_flou (Ensemble_d_exemples
E, Proprités P) Si tous éléments dans E sont
dans la même classe alors retourner une
feuille (nœud terminal) étiquetée avec la classe
sinon si P est vide alors retourner une
feuille étiquetée avec la disjonction de toutes
les classes de E sinon
flouïfier E sélectionner une propriété pr de
P comme racine de larbre courant for chaque
partition floue f de pr, créer
une branche correspondante dans larbre étiquetée
f trouver la partition pa des
éléments de E qui ont f comme valeur
appeler induire_arbre_flou(pa, P)
attacher le nœud résultat à la branche f
fin pour
16Entropie 101
- Linformation véhiculée par un attribut définit
son pouvoir discriminatoire - Lentropie représente linformation moyenne de
lattribut - pour un attribut A pris dans un ensemble,
linformation véhiculée par la valeur v augmente
avec sa rareté - infA (v) 1/p(v) p(v) probabilité de v
- p(v)0 gt infA (v) ? p(v)1 gt infA (v)1
- On peut faire varier la formule entre 0 et ? au
lieu de 1 et ? en prenant le logarithme - inflog_A (v)log1/p(v)-logp(v)
- Lentropie est linformation moyenne (au sens des
probabilités) véhiculée par lensemble des
valeurs de a - H(A)-?v p(v)?logp(v)
17Entropie 101
- Dans lapproche floue, v représente des valeurs
linguistiques et lentropie est linformation
moyenne véhiculée par ces valeurs -
- La probabilité dun valeur de v doit inclure
toutes les valeurs numériques qui peuvent la
représenter - oú ?v(ai) représente le degré dappartenance de
ai à v and p(ai) est sa fréquence relative dans
le domaine de v
18Sélection de lattribut ayant le meilleur pouvoir
de représentation pour une classe
- Dans TDIDT, on utilise lentropie classique.
- Pour Aai i1,,n
- où p(? ) est la probabilité que A ?
- Dans la version floue, on utilise lentropie
floue, ou entropie-étoile - où ? est une variable linguistique et P(? ) est
la probabilité floue que A? - fonction dappartenance dune
valeur ai à ? - P(ai) fréquence de ai dans lensemble
dapprentissage
19Sélection de lattribut ayant le meilleur pouvoir
de représentation pour toutes les classes
- Chaque attribut étant commun à toutes les
classes, Il faut tenir compte de son pouvoir
discriminant dans chacune delles gt entropie
conditionnelle -
-
-
- Choisir Aj ayant min. comme critère de
division
19
20Procédure dinférence possible pour la
classification
- Pour chaque arbre
- Les données entrent par la racine de chaque arbre
et sont propagées vers les feuilles . - Utiliser lalgorithme max-min pour
- Déterminer les valeurs dappartenance de chacune
des feuilles au label associé (min) - En déduire la valeur floue de chaque label (max).
- Partant de tous les arbres, utiliser la méthode
du vote majoritaire pour identifier la classe
dappartenance des données - Max-min min(?) le long de chaque chemin,
max(?) pour chaque label de sortie
21Exemple
- Données (NOM11, NOP11, DAM0.6)
petit
grand
NOP
1
5
12
- Lutilisation de max- min donne
- ?(1) 0.65 ?(2) 0.3
22Exemple - suite
- Méthode du vote
- On prend la classe qui obtient le plus grand ?.
- Ex pour E1,
23Et si on changeait de fonctions dappartenance ?
- Utiliser un outil danalyse (simulateur)
- Passer à la logique floue de niveau II !
24Références
- 1. Marsala C. , and Bouchon-Meunier B. , Fuzzy
partitioning using mathematical morphology in a
learning scheme, actes de 5th IEEE Conference on
Fuzzy Systems, New Orleans, 1996. - 2. Marsala C. , Apprentissage inductif en
présence de données imprécises construction et
utilisation darbres de décision flous, thèse de
doctorat, Universite Pierre et Marie Curie,
Paris (France), 1998. Rapport LIP6 No. 1998/014. - 3. Boukadoum, M., Sahraoui, H. Lounis, H.
Machine Learning Approach to Predict Software
Evolvability with Fuzzy Binary Trees actes de
ICAI 2001, Las Vegas, juin 2001. - 4. Sahraoui, H., Boukadoum, M., Chawiche, H.
M., Mai, G. Serhani, M. A. A fuzzy logic
framework to improve the performance and
interpretation of rule-based quality prediction
models for object-oriented software, actes de
COMPSAC 2002, Oxford (Angleterre), août 2002. - 5 Boukadoum, M., Sahraoui, H. and Chawiche H.
M. Refactoring object-oriented software using
fuzzy rule-based prediction, actes de MCSEAI
2004, Sousse (Tunisie), mai 2004.