Académique Documents
Professionnel Documents
Culture Documents
Arbres de
décision
Dr A.
Classification
DJEFFAL
Arbres de décision
Principe
Construction
Choix
d’attribut Dr A. DJEFFAL
Gain
d’information
Algorithmes
2017-2018
Extraction des
règles
Avantages
Algorithmes
scalables www.abdelhamid-djeffal.net
1 / 29
Principe
Définition
Classification
Arbres de
décision
Une méthode très efficace d’apprentissage supervisé.
Dr A.
DJEFFAL Partitionne un ensemble de données en des groupes les
Principe plus homogènes possible du point de vue de la variable à
Construction prédire.
Choix
d’attribut
On prend en entrée un ensemble de données classées,
Gain On fournit en sortie un arbre où :
d’information
chaque nœud final (feuille) représente une décision (une
Gini Index
classe)
Taille de l’AD
chaque nœud non final (interne) représente un test.
Algorithmes
Les branches représentent les résultats des tests
Extraction des
règles Chaque feuille représente la décision d’appartenance à une
Avantages classe des données vérifiant tous les tests du chemin
Algorithmes
scalables
menant de la racine à cette feuille.
2 / 29
Principe
Exemple
Classification
Arbres de
décision
L’exemple suivant montre un ensemble de données avec
Dr A.
DJEFFAL quatre attributs : Ensoleillement, Température, Humidité,
Principe
Vent et l’attribut à prédire Jouer.
Construction
Choix
d’attribut
Gain
d’information
Gini Index
Taille de l’AD
Algorithmes
Extraction des
règles
Avantages
Algorithmes
scalables
3 / 29
Principe
Exemple
Classification
Arbres de
décision
Construction
Choix
d’attribut
Gain
d’information
Gini Index
Taille de l’AD
Algorithmes
Extraction des
règles
Avantages
Algorithmes
scalables
4 / 29
Principe
Exemple
Classification
Arbres de
décision
Dr A.
DJEFFAL
Taille de l’AD
racine jusqu’à atteindre une feuille c’est-à-dire une
Algorithmes
décision.
Extraction des
règles
Avantages
Algorithmes
scalables
5 / 29
Construction
Généralités
Classification
Arbres de
décision
Dr A.
DJEFFAL
Pour construire un tel arbre, plusieurs algorithmes
Principe
existent : ID3, CART, C4.5,...etc.
Construction
Avantages
Algorithmes
scalables
6 / 29
Construction
Algorithme de base
Classification
Arbres de
décision
Dr A.
DJEFFAL
Gini Index
discrétisés)
Taille de l’AD Les exemples sont partitionnés récursivement selon les
Algorithmes attributs sélectionnés
Extraction des
règles
Avantages
Algorithmes
scalables
7 / 29
Construction
Algorithme de base
Classification
Arbres de
décision
Dr A.
DJEFFAL
Avantages
Algorithmes
scalables
8 / 29
Construction
Algorithme CONSTRUIRE-ARBRE(D : ensemble de données)
Classification
Arbres de Créer nœud N
décision
Si tous les exemples de D sont de la même classe C alors
Dr A.
DJEFFAL Retourner N comme une feuille étiquetée par C ;
Principe
Si la liste des attributs est vide alors
Construction Retourner N Comme une feuille étiquetée de la classe de
Choix la majorité dans D ;
d’attribut
Sélectionner l’attribut A du meilleur Gain dans D ;
Gain
d’information Etiqueter N par l’attribut sélectionné ;
Gini Index Liste d’attributs ← Liste d’attributs - A ;
Taille de l’AD Pour chaque valeur Vi de A Faire
Algorithmes Soit Di l’ensemble d’exemples de D ayant la valeur de
Extraction des A = Vi ;
règles
Attacher à N le sous arbre généré par l’ensemble Di et la
Avantages
liste d’attributs
Algorithmes
scalables FinPour ;
9 / 29
Fin ;
Construction
Problèmes à résoudre
Classification
Arbres de
décision En réalité ce n’est pas si simple, plusieurs problèmes doivent
Dr A.
DJEFFAL
être résolus :
Principe Comment choisir l’attribut qui sépare le mieux l’ensemble
Construction de données ? On parle souvent de la variable de
Choix
d’attribut
segmentation.
Gain Comment choisir les critères de séparation d’un ensemble
d’information
Gini Index
selon l’attribut choisi, et comment ces critères varient
Taille de l’AD
selon que l’attribut soit numérique ou symbolique ?
Algorithmes Quel est le nombre optimal du nombre de critères qui
Extraction des minimise la taille de l’arbre et maximise la précision ?
règles
10 / 29
Choix d’attribut
Généralité
Classification
Arbres de
décision
Dr A.
DJEFFAL
Il s’agit de choisir parmi les attributs des données, celui
Principe
Construction
qui les sépare le mieux du point de vue de leurs classes
Choix
déjà connues.
d’attribut
Pour choisir le meilleur attribut, on calcule pour chacun
Gain
d’information une valeur appelée ”Gain” qui dépend des différentes
Gini Index valeurs prises par cet attribut.
Taille de l’AD
Cette mesure est basée sur les recherches en théorie
Algorithmes
d’informations menées par C.Shannon.
Extraction des
règles
Avantages
Algorithmes
scalables
11 / 29
Choix d’attribut
Généralité
Classification
Arbres de
décision
Dr A.
DJEFFAL Par exemple :
Principe
Construction
Gain d’ information (ID3/C4.5)
Choix Tous les attributs sont catégoriels
d’attribut
Peut être modifié pour les attributs numériques
Gain
d’information Gini index (IBM IntelligentMiner)
Gini Index Tous les attributs sont continus
Taille de l’AD Supposons qu’il ya plusieurs splits possibles pour chaque
Algorithmes attribut
Extraction des Peut être modifié pour les valeurs catégoriels.
règles
Avantages
Algorithmes
scalables
12 / 29
Gain d’information
Principe (1)
Classification
Arbres de
décision
Dr A.
DJEFFAL
Sélectionner l’attribut du gain le plus élevé
Principe
Supposons qu’il y a deux classes P et N
Construction
Algorithmes
p p n n
H(S) = - log2 ( )- log2 ( )
Extraction des p+n p+n p+n p+n
règles
Avantages
Algorithmes
scalables
13 / 29
Gain d’information
Principe (1)
Classification
Arbres de
décision
Dr A.
Supposons qu’en utilisant l’attribut A un ensemble S sera
DJEFFAL divisé en {S1 , S2 , ..., Sv }
Principe Si Si contient pi exemples de P et ni exemples de N,
Construction l’entropie, ou l’information attendus nécessaire pour
Choix
d’attribut
classifier les objets dans le sous arbre Si est :
Gain v
d’information X p i + ni
Gini Index
H(A) = H(Si )
p+n
Taille de l’AD i=1
Algorithmes Le codage d’information qui peut être gagné en se
Extraction des
règles
branchant à A est
Avantages
Gain(A) = H(S) − H(A)
Algorithmes
scalables
14 / 29
Gain d’information
Principe (2)
Classification
Arbres de
décision
Dr A.
DJEFFAL
Soit un ensemble X d’exemples dont une proportion p+
Principe
sont positifs et une proportion p- sont négatifs.
Construction
Choix
Bien entendu, p+ + p- = 1
d’attribut
L’entropie de X est :
Gain
d’information
Algorithmes
Biensur
Extraction des 0 ≤ H(X) ≤ 1
règles
Avantages
Algorithmes
scalables
15 / 29
Gain d’information
Principe (3)
Classification
Arbres de
décision Si p+ = 0 ou p- = 0, alors H(X) = 0.
Dr A.
DJEFFAL Ainsi, si tous exemples sont soit tous positifs, soit tous
Principe
négatifs, l’entropie de la population est nulle.
Construction Si p+ = p- = 0.5, alors H(X) = 1.
Choix
d’attribut
Ainsi, s’il y a autant de positifs que de négatifs, l’entropie
Gain est maximale.
d’information
Gini Index
X |Xaj =v |
Gain(X, aj ) = H(X)- H(Xaj =v )
Taille de l’AD |X|
v∈valeurs(aj )
Algorithmes
Extraction des
règles Xaj =v , est l’ensemble des exemples dont l’attribut
Avantages considéré aj prend la valeur v,
Algorithmes
scalables
la notation |X| indique le cardinal de l’ensemble X.
16 / 29
Gain d’information
Exemple
Classification
Arbres de
décision
Dr A.
Le Gain du champs ”Vent” de la table précédente est calculé
DJEFFAL comme suit :
Principe 6 8
Gain(X, vent) = H(X) − 14 H(Xa=oui ) − 14 H(Xa=non )
Construction
On a :
Choix
5 5 9 9
d’attribut H(X) = − 14 ln2 14 − 14 ln2 14 = 0.940
6 6 2 2
Gain H(Xa=non ) = −( 8 ln2 8 + 8 ln2 8 ) = 0.811
d’information
Gini Index
Et
Taille de l’AD
H(Xa=oui ) = −( 63 ln2 36 + 63 ln2 36 ) = 1.0
Algorithmes D0 où :
8 6
Extraction des Gain(X, vent) = 0.940 − 14 ∗ 0.811 − 14 ∗ 1.0
règles
= 0.048
Avantages
Algorithmes
scalables
17 / 29
Gain d’information
Exercice
Classification
Arbres de
décision
Dr A.
DJEFFAL Déterminer l’arbre de décision déduit de la table suivante :
Principe
Construction
Choix
d’attribut
Gain
d’information
Gini Index
Taille de l’AD
Algorithmes
Extraction des
règles
Avantages
Algorithmes
scalables
18 / 29
Gain d’information
Exercice
Classification
Arbres de
décision
Dr A.
DJEFFAL
Principe
Construction
Choix
d’attribut
Gain
d’information
Gini Index
Taille de l’AD
Algorithmes
Extraction des
règles
Avantages
Algorithmes
scalables
19 / 29
Gini Index
Gini Index (IBM IntelligentMiner)
Classification
Arbres de Si une base T contient des exemples de n classes, gini
décision
Dr A.
index, gini(T) est défini par :
DJEFFAL
n
X
Principe
Gini(T ) = 1- p2j
Construction
j=1
Choix
d’attribut
où pj est la fréquence de la classe j dans T .
Gain
d’information
Si la base T est partitionnée en deux bases T1 et T2 de
Gini Index
tailles N1 et N2 respectivement, le gini index gini(T ) du
Taille de l’AD
partitionnement est défini par :
Algorithmes
Extraction des N1 N2
règles Ginisplit (T ) = gini(T1 ) + gini(T2 )
Avantages
N N
Algorithmes
scalables
L’attribut de Ginisplit (T ) minimum est choisi pour diviser
le nœud
20 / 29
Taille de l’AD
Choix de la bonne taille de l’arbre
Classification
Arbres de
décision
Dr A.
DJEFFAL
Taille de l’AD
Élagage avant ou après l’apprentissage (pré et
Algorithmes
post-élagage)
Extraction des
règles
Avantages
Algorithmes
scalables
21 / 29
Taille de l’AD
Pré-élagage
Classification
Arbres de
décision
Dr A.
DJEFFAL
Principe
Effectué lors de la construction de l’arbre,
Construction
Choix
lorsqu’on calcule les caractéristiques statistiques d’une
d’attribut partie des données tel que le gain, on peut décider de
Gain
d’information
l’importance ou non de sa subdivision,
Gini Index ainsi on coupe complètement des branches qui peuvent
Taille de l’AD être générée.
Algorithmes
Extraction des
règles
Avantages
Algorithmes
scalables
22 / 29
Taille de l’AD
Post-élagage
Classification
Arbres de
décision
Dr A.
DJEFFAL Effectué après la construction de l’arbre en coupant des
Principe
sous arbres entiers et en les remplaçant par des feuilles
Construction
représentant la classe la plus fréquente dans l’ensemble des
Choix données de cet arbre.
d’attribut
On commence de la racine et on descend,
Gain
d’information
pour chaque nœud interne (non feuille), on mesure sa
Gini Index
complexité avant et après sa coupure (son remplacement
Taille de l’AD
par une feuille),
Algorithmes
Algorithmes
scalables
23 / 29
Algorithmes
Le algorithmes basiques : ID3
Classification
Arbres de
décision
Dr A.
DJEFFAL Algorithme ID3
Principe ID3 construit l’arbre de décision récursivement.
Construction A chaque étape de la récursion, il calcule parmi les
Choix attributs restant pour la branche en cours, celui qui
d’attribut
maximisera le gain d’information.
Gain
d’information Le calcul ce fait à base de l’entropie de Shanon déjà
Gini Index
présentée.
Taille de l’AD
L’algorithme suppose que tous les attributs sont
Algorithmes
catégoriels ;
Si des attributs sont numériques, ils doivent être descritisés
Extraction des
règles pour pouvoir l’appliquer.
Avantages
Algorithmes
scalables
24 / 29
Algorithmes
Le algorithmes basiques : C4.5
Classification
Arbres de Algorithme C4.5 (J48)
décision
C’est une amélioration de l’algorithme ID3,
Dr A.
DJEFFAL Prend en compte les attributs numérique ainsi que les
Principe
valeurs manquantes.
Construction
L’algorithme utilise la fonction du gain d’entropie combiné
Choix avec une fonction SplitInfo pour évaluer les attributs à
d’attribut
chaque itération.
Gain
d’information Attributs discrets : Gain et permet le regroupement,
Gini Index
Attributs continus : Segmentés par un expert, sinon :
Taille de l’AD
trier l’attribut
Algorithmes
prendre les seuils ai + ai+1 /2 (ai et ai+1 deux valeurs
consécutives de l’attribut)
Extraction des
règles prendre les compositions de meilleur gain
Avantages Valeurs manquante :
Algorithmes pour le test : prendre la classe majoritaire
scalables
pour l’entrainement prendre la distribution des valeurs
25 / 29 connues
Algorithmes
Le algorithmes basiques : CART
Classification
Arbres de
décision
Dr A.
DJEFFAL
Algorithme CART
Principe
”Classification And Regression Trees”,
Construction
analogue à l’algorithme ID3 mais arbre binaire et l’indice
Choix
d’attribut de Gini
Gain À un attribut binaire correspond un test binaire.
d’information À un attribut qualitatif ayant n modalités, on peut associer
Gini Index autant de tests qu’il y a de partitions en deux classes, soit
Taille de l’AD 2n − 1 tests binaires possibles.
Algorithmes Enfin, dans le cas d’attributs continus : discrétiser puis
Extraction des revenir au cas qualitatif
règles
Avantages
Algorithmes
scalables
26 / 29
Extraction des règles
Principe
Classification
Arbres de Représenter sous forme de règles IF-THEN
décision
Dr A.
Une règle est crée pour chaque chemin de la racine vers
DJEFFAL une feuille
Principe Chaque paire de valeurs d’attributs forme une conjonction
Construction Les feuilles représentent les classes prédites
Choix
d’attribut Les règles sont faciles à comprendre pour les humains
Gain Exemple
d’information
IF age = ”630” AND student = ”no” THEN
Gini Index buys computer = ”no”
Taille de l’AD IF age = ”6” AND student = ”yes” THEN
Algorithmes buys computer = ”yes”
Extraction des IF age = ”31..40” THEN buys computer = ”yes”
règles
IF age = ”>40” AND credit rating = ”excellent” THEN
Avantages
buys computer = ”yes”
Algorithmes
scalables IF age = ”>40” AND credit rating = ”fair” THEN
buys computer = ”no”
27 / 29
Avantages
Avantages
Classification
Arbres de
décision
Dr A.
DJEFFAL
Principe
Une bonne vitesse d’entrainement par rapport à d’autre
Construction
méthodes
Choix
d’attribut Convertible à de simples et compréhensibles règles
Gain
d’information Possibilité d’utilisation des requêtes SQL pour accéder aux
Gini Index BDDs
Taille de l’AD
Une précision comparable à d’autres méthodes
Algorithmes
Extraction des
règles
Avantages
Algorithmes
scalables
28 / 29
Algorithmes scalables
3
Classification
Arbres de
décision
Dr A.
DJEFFAL SLIQ (EDBT’96 - Mehta et al.)
Principe
Construit un index pour chaque attribut et seulement la
Construction liste de la classe et la liste de l’attribut en cours en
Choix mémoire.
d’attribut
Gain
SPRINT (VLDB’96 - J. Shafer et al.)
d’information Consrtuit une structure de la liste d’un attribut
Gini Index
PUBLIC (VLDB’98 - Rastogi & Shim)
Taille de l’AD
Intègre le partitionnement et l’élagage : arrêter tôt le
Algorithmes
Extraction des
développement de l’arbre
règles
...
Avantages
Algorithmes
scalables
29 / 29