Vous êtes sur la page 1sur 30

Chapitre 4 : Classification avec les

arbres de décision

Tarek Hamrouni
hamrouni.tarek@gmail.com

Année Universitaire : 2021-2022

Introduction

- Cette technique est utilisée pour prédire la classe à laquelle


appartient un objet donné.

- C’est une technique supervisée dans le sens que les


différentes classes sont pré-fixées à l’avance.

- La classification des objets en classes se fera à travers la


construction d’un arbre de décision, appelé aussi un classifier.

Cours Data Mining - T. Hamrouni - 2021-2022


Exemple (Classification des personnes en « malade
ou non ») : Construction du modèle

Cours Data Mining - T. Hamrouni - 2021-2022


Exemple (Classification des personnes en « malade
ou non ») : Utilisation du modèle versus des données de
test

Exemple (Classification des personnes en « malade


ou non ») : Utilisation du modèle versus des données
inconnues

Cours Data Mining - T. Hamrouni - 2021-2022


Principe de l’apprentissage supervisé (1)
La construction d’un classifier passe par trois étapes principales

Etape 1 : Obtenir un ensemble de données

ceci passe par l’analyse des principaux


facteurs/variables/attributs, appelées variables explicatives, capables
de déterminer la valeur de la variable cible

une étape de pré-traitement (intégration, nettoyage,


complétion, étiquetage, etc.) est nécessaire pour faire en sorte
d’améliorer la qualité des données utilisées : la qualité du modèle
appris dépend de la qualité des données d’apprentissage

cet ensemble sera divisé en deux parties : la première constitue


la base d’apprentissage et la deuxième constitue la base de test.
3

Principe de l’apprentissage supervisé (2)

Etape 2 : Construire un modèle prédictif (appelé


classifier)

ceci passe par l’invocation d’un algorithme dédié prenant en


entrée la base d’apprentissage et donnant le classifier en sortie

calcul d’un taux d’erreur dit d’apprentissage ou de


construction (le pourcentage d’objets de la base d’apprentissage
qui sont mals classés dès la construction du classifier)

Cours Data Mining - T. Hamrouni - 2021-2022


Principe de l’apprentissage supervisé (3)

Etape 3 : Validation de modèle

ceci consiste à vérifier la qualité du classifier en utilisant une base


dite de test et des méthodes connues de validation : le classifier est
ainsi utilisé pour prédire les propriétés d’objets dont on connait la
classe et puis évaluer si les prédictions sont exactes.

calcul d’un taux d’erreur dit de classification ou de prédiction


(le pourcentage d’objets de la base de test dont la classe est
déterminée d’une manière erronée par le classifier)

Principe de base des arbres de décision

- Diviser l’espace de recherche étape par étape

- Exemple : Jeu des 20 Questions:

- Quelqu’un pense à un objet et les autres joueurs doivent


deviner l’objet en posant des questions (maximum 20
questions) et les réponses sont soit oui, soit non.

- Les joueurs vont opérer des divisions sur l’ensemble des


objets candidats en fonction de la réponse à chaque
question.
6

Cours Data Mining - T. Hamrouni - 2021-2022


Exemple introductif (1)

Décider si un patient est malade ou bien portant selon sa température et s’il


a la gorge irritée.

Arbre de décision :
- 2 classes (malade, bien portant)
- 2 variables explicatives (température, gorge irritée)

température < 37,5


OUI NON

gorgeirritée malade

OUI NON

bien
malade portant
7

Exemple introductif (2)

température < 37,5


Nœud intermédiaire ou test (chaque
nœud intermediaire est défini par un
test construit à partir d’une variable)
OUI NON

malade
gorge irritée

NON
OUI

bien
malade portant Nœud terminal ou
feuille

Cours Data Mining - T. Hamrouni - 2021-2022


Généralité : Arbre de décision (1)

- Variable cible à prédire, à partir de variables explicatives, de type


qualitative (par exemple, malade ou non)

- Cette technique permet de créer un arbre appelé aussi classifier dont


l’objectif est de placer chaque objet de la population dans une classe,
parmi plusieurs classes prédéfinies, en fonction des caractéristiques de
l’objet décrites par des variables qualitatives et quantitatives.

- Produit des nœuds les plus homogènes que possibles du point de


vue de la variable cible à prédire.

Généralité : Arbre de décision (2)

Idée intuitive :
Diviser récursivement et le plus efficacement possible les objets de
l’ensemble d’apprentissage par des tests définis à l’aide des variables
explicatives jusqu’à ce que l’on obtienne des sous-ensembles d’objets ne
contenant (presque) que des objets appartenant à une même classe, c’est-
à-dire ont la même valeur de la variable cible.

10

Cours Data Mining - T. Hamrouni - 2021-2022


Généralité : Arbre de décision (3)

Trois opérations principales :


1. Décider si un nœud est terminal ou non c’est-à-dire s’il vérifie ou non
une des conditions d’arrêt
2. Si un nœud est terminal : ce nœud devient donc une feuille à qui une
classe sera affectée : la classe majoritaire des objets associés à ce
nœud
3. Si un nœud n’est pas terminal : sélectionner un test à lui associer.
Ce test consiste à choisir une variable aléatoirement ou en utilisant
des critères statistiques

Remarque : Les différents algorithmes de construction des arbres de décision


vont instancier ces trois opérations, chacun avec ses spécificités versus
les conditions d’arrêt utilisées, choix du test, etc.

11

Généralité : Arbre de décision (4)

Principales conditions d’arrêt :

- tous les objets sont dans la même classe

- il n’y a plus de variables à utiliser

- le nombre d’objets dans le nœud est inférieur à un seuil fixé

- la profondeur de l'arbre a atteint une limite fixée par l'utilisateur


- le ratio d'une classe par rapport au nombre total d’objets du nœud
est supérieur à un seuil

- etc.

12

Cours Data Mining - T. Hamrouni - 2021-2022


Principe algorithmique des arbres de décision (1)
Procédure : Construire_Arbre(X, V)
Si tous les objets de l’ensemble X ont la même valeur de la variable cible
ou s’ils vérifient une des conditions d’arrêt (pour qualifier un nœud de
terminal)
Alors créer un nœud feuille portant le nom de la valeur de la
variable cible (si nœud pur) ou celle de la classe majoritaire (si nœud
terminal mais non pur)
Sinon
choisir la meilleure variable vx pour créer les nœuds fils c’est-à-dire la
variable qui sépare le mieux les objets de l’ensemble X
le test associé à ce nœud partitionne X en des branches : Xg, …, Xd
Construire_Arbre(Xg , V \{vx})

Construire_Arbre(Xd, V \{vx})
13
Fin

Principe algorithmique des arbres de décision (2)

- On a besoin de comparer les différents choix possibles induits par les


variables explicatives qu’on peut utiliser.

- Différentes fonctions sont introduites pour permettre de mesurer le


degré de mélangeance dans les différentes classes telles que
l’entropie de Shannon, l’indice de Gini, etc.

- Propriétés des fonctions :


Le minimum est atteint lorsque le nœud est “pur”, c’est-à-dire
que les objets qui lui appartiennent ont carrément la même valeur de
la variable cible (et donc la même classe).
Le maximum est atteint lorsque les objets sont équirepartis entre
les classes.
14

Cours Data Mining - T. Hamrouni - 2021-2022


Principe algorithmique des arbres de décision (3)

Objectif : Choisir la variable qui maximise le gain en pureté ou en


information.

- On n’a le droit de segmenter que sur une variable à la fois (un


axe).

- Cas d’une variable discrète : la segmentation se fait sur


toutes les valeurs possibles de la variable.

- Cas d’une variable continue : la segmentation peut être


faite avec "variable ≤ valeurSeuil" et "variable > valeurSeuil".

L’approche est top-down et gloutonne : on teste chaque


variable et chaque coupure possible et on choisit la meilleure
sans revenir en arrière. 15

Algorithme CART (Classification And


Regression Trees)
- L’algorithme CART :
Parmi les plus performants et les plus utilisés (commercialisé
par https://www.minitab.com/fr-fr/products/spm/ et inclus
comme module dans plein d’autres outils)

Algorithme non incrémental comme la plupart des algorithmes


de construction des arbres de décision (ID3, C4.5, etc.)

- Entrées :
- n objets, p variables continues ou discrètes
- une variable supplémentaire contenant la classe de chaque
objet (c classes)

-Sortie :
16
- un arbre de décision
Cours Data Mining - T. Hamrouni - 2021-2022
Algorithme CART

Utilise comme critère de séparation : Indice de Gini (IG)


avec :
IG

avec :
n : nombre de classes à prédire
fi : fréquence de la classe dans le nœud (égale à la proportion
des objets du nœud appartenant à cette classe par rapport au
nombre total des objets du nœud)

17

Algorithme CART
Plus l’indice de Gini est bas, plus le nœud est pur (c’est-à-dire que plus
tous les objets associés appartiennent à la même classe)
En séparant un nœud en n nœuds fils, on cherche la plus grande
hausse de la pureté :
La variable la plus discriminante doit maximiser :
Gain = IG(nœud avant séparation) - (p1 * IG(fils1) + … + pn* IG(filsn))
avec pi la proportion des objets ayant atteint le nœud filsi

ou d’une manière équivalente :

La variable la plus discriminante doit minimiser :


(p1 * IG(fils1) + … + pn* IG(filsn))
avec pi la proportion des objets ayant atteint le nœud filsi
18

Cours Data Mining - T. Hamrouni - 2021-2022


Degré de mélangeance
X X = nœud dans lequel on se trouve
Test t à dans l’arbre
n modalités t = le test (la variable)
n = le nombre de modalités de t
IG = l’indice de Gini associé à une
position (un nœud de l’arbre) donnée
... (c’est la fonction mesurant le degré
X1 X2 Xn
de mélangeance)

- La position X est fixée, ce qui est à déterminer est le test (la


variable) t qui maximise le gain :

Gain (X, t) = IG(X) - (p1 * IG(X1) + … + pn * IG(Xn))

avec p i = la proportion des objets du nœud X qui vont au nœud fils Xi ,


égale à nbObj i/nb avec nbObj i le nombre d’objets du nœud X i et nbObj le
nombre d’objets du nœud X.
19

Application
Soit la base d’apprentissage suivante. Donner l’arbre de décision
associé sachant que tous les nœuds terminaux doivent être purs.
id A B C = Classe
1 1 fort oui
2 0 faible non
3 0 moyen non
4 1 fort oui
5 0 faible non
6 1 faible oui
7 0 fort non
8 1 moyen non
20

Cours Data Mining - T. Hamrouni - 2021-2022


Exercice
Une banque dispose des informations suivantes sur un ensemble de
clients :
- M : moyenne des montants sur le compte client.
- A : tranche d'âge du client.
- R : localité de résidence du client.
- E : valeur oui si le client a un niveau d'études supérieures.
- I : classe oui correspond à un client qui effectue une
consultation de ses comptes bancaires en utilisant Internet
Le but est de construire un arbre de décision qui classe et détermine
les caractéristiques des clients qui consultent leurs comptes sur
internet.

Exercice (suite)
Déterminer l’arbre de décision associé à la base d’apprentissage
suivante sachant que :
- M, A, R et E sont les variables prédictives et I est la variable cible
- La condition d’arrêt est que tous les nœuds terminaux soient purs

Cours Data Mining - T. Hamrouni - 2021-2022


Correction Exercice

- La construction est descendante.

- Au début tous les objets sont regroupés dans un nœud racine.

- Est-ce que le nœud initial (3, 5) est un nœud terminal ou est-ce


qu’on peut construire un test sur une variable qui permettra de
mieux discriminer les objets?
Quatre constructions possibles, suivant les variables :
Montant (M), Age (A), Résidence (R) et Etudes (E)

23

Cours Data Mining - T. Hamrouni - 2021-2022


Cours Data Mining - T. Hamrouni - 2021-2022
27

Variable test Composition nœuds


Montant (M) (1,2),(2,1),(0,2)
Age (A) (1,0),(2,2),(0,3)
Résidence (R) (1,2),(1,2),(1,1)
Etudes (E) (3,2),(0,3)

- Sur R, aucune discrimination sur aucune branche


⇒ On ne gagne rien avec ce test.

- Sur A, deux nœuds sur trois sont “purs”.

- Comment tout écrire mathématiquement?

28

Cours Data Mining - T. Hamrouni - 2021-2022


Indice de Gini avant séparation au niveau de la racine :

I=oui : 3 clients
8 clients
I=non : 5 clients

IG(avant séparation) = 1 – ((3/8)² + (5/8)²) = 0.46875

Fréquence Fréquence
des I = oui des I = non

29

Indice de Gini de la variable A (Tranche d'âge du client) :

I=oui : 1 client
I=non : 0 clients

A= Jeune : 1 client

3 valeurs de A I=oui : 2 clients


A= Moyen : 4 clients
I=non : 2 clients
A= Agé : 3 clients

I=oui : 0 clients
I=non : 3 clients

30

Cours Data Mining - T. Hamrouni - 2021-2022


Indice de Gini du fils A = Jeune :

I=oui : 1 client
1 client
I=non : 0 clients

IG(A=Jeune) = 1 – ((1/1)² + (0/1)²) = 0

Fréquence Fréquence
des I = oui des I = non

31

Indice de Gini du fils A = Moyen :

I=oui : 2 clients
4 clients
I=non : 2 clients

IG(A=Moyen) = 1 – ((2/4)² + (2/4)²) = 0.5

Fréquence Fréquence
des I = oui des I = non

32

Cours Data Mining - T. Hamrouni - 2021-2022


Indice de Gini du fils A = Agé :

I=oui : 0 clients
3 clients
I=non : 3 clients

IG(A=Agé) = 1 – ((0/3)² + (3/3)²) = 0

Fréquence Fréquence
des I = oui des I = non

33

Gain obtenu en utilisant A :

IG(avant séparation) - [1/8 * IG(A=Jeune) +


4/8 * IG(A=Moyen) + 3/8 * IG(A=Agé)]

0.46875 - [1/8 * 0 + 4/8 * 0.5 + 3/8 * 0]

0.21875
34

Cours Data Mining - T. Hamrouni - 2021-2022


Etape 1 : Racine de l’arbre

La variable la plus séparatrice est celle qui maximise :

IG(nœud avant séparation) - (p1 * IG(fils1) + … + pn* IG(filsn))

35

Etape 2 : Construction du reste de l’arbre

A
Jeune Agé
Moyen

I=Oui I=Non

36

Cours Data Mining - T. Hamrouni - 2021-2022


Etape 2 : Construction du reste de l’arbre

La construction de l’arbre de décision est réalisée à travers


un algorithme récursif.
On considère maintenant la base d’apprentissage initiale sans
les lignes ayant A égal à jeune ou âgé (lignes 3, 5, 6 et 7) et sans
la colonne A.

Indice de Gini avant séparation avec A = Moyen :

I=oui : 2 clients
4 clients
I=non : 2 clients

IG(avant séparation) = 1 – ((2/4)² + (2/4)²) = 0.5

Fréquence Fréquence
des I = oui des I = non

38

Cours Data Mining - T. Hamrouni - 2021-2022


Indice de Gini de la variable E (Niveau d'études du client) avec A=Moyen :

I=oui : 2 clients
I=non : 0 clients

E = Oui : 2 clients

2 valeurs de E
E = Non : 2 clients

I=oui : 0 clients
I=non : 2 clients

39

Indice de Gini du fils A = Moyen & E = Oui :

I=oui : 2 clients
2 clients
I=non : 0 clients

IG(A=Moyen & E = Oui ) = 1 – ((2/2)² + (0/2)²) = 0

Fréquence Fréquence
des I = oui des I = non

40

Cours Data Mining - T. Hamrouni - 2021-2022


Indice de Gini du fils A = Moyen & E = Non :

I=oui : 0 clients
2 clients
I=non : 2 clients

IG(A=Moyen & E = Non ) = 1 – ((0/2)² + (2/2)²) = 0

Fréquence Fréquence
des I = oui des I = non

41

Gain obtenu en utilisant E avec A = Moyen :

IG(avant séparation) - [ 2/4 * IG(E =Oui) + 2/4 * IG(E=Non)]


=
0.5 - [2/4 * 0 + 2/4 * 0]
=
0.5

42

Cours Data Mining - T. Hamrouni - 2021-2022


Arbre final obtenu

A
Jeune Agé
Moyen

I=Oui E I=Non
OUI NON

I=Oui I=Non

43

Des arbres de décisions aux


règles de classification

- A partir de l’arbre précédent, on peut dériver les règles de


classification suivantes :
- Si A = Jeune Alors I = Oui
- Si A = Agé Alors I = Non
- Si A = Moyen ET E = Oui Alors I = Oui
- Si A = Moyen ET E = Non Alors I = Non

- Ces règles peuvent être présentées d’une manière plus optimisée


comme suit :
- Si (A = Jeune) OU (A = Moyen ET E = Oui) Alors I = Oui
- Si (A = Agé) OU (A = Moyen ET E = Non) Alors I = Non

Dans la version succincte, on obtient ainsi une seule règle par


valeur de la variable cible I : une règle pour la valeur Oui et une règle
pour la valeur Non 44

Cours Data Mining - T. Hamrouni - 2021-2022


Test et évaluation d’un classifieur (1)

- Plusieurs façons de faire sont possibles mais généralement, on


procède par une séparation aléatoire de l’ensemble
d’apprentissage en 2 ensembles : par exemple 70% des exemples
et 30% le reste :
- 70% des exemples sont utilisés pour apprendre la
classification,
- 30% pour le test du classifieur,

- Les résultats varient selon l’algorithme implémenté, l’ensemble


d’apprentissage et le paramétrage utilisé (conditions d’arrêt, etc.).

45

Test et évaluation d’un classifieur (2)

- L’évaluation du résultat du « classifier » se fait à travers une


base de test en comparant les classes réelles des objets de cette
base avec les classes prédites par le classifier.

- Soient n le nombre des objets de la base de test et m le nombre


d’objets mal classés par le classifier :

tauxErreurClassification = m/n

46

Cours Data Mining - T. Hamrouni - 2021-2022


Test et évaluation d’un classifieur (3)
On peut aussi procéder par validation croisée (cross-
validation) :

- On divise l’ensemble d’apprentissage en N parties.


- Tour à tour, on entraîne le modèle sur seulement (N - 1)
parties parmi les N et on le teste sur la partie restante.
- On calcule la performance moyenne sur les N tests. 47

Critères d’évaluation

Taux de bon apprentissage : Parmi tous les exemples, quelle


proportion est bien classée?

- Rappel de la classe C : Parmi les exemples de la classe C,


quelle proportion se retrouve prédite dans la classe C?

- Précision de la classe C : Parmi les exemples prédits dans


la classe C, quelle proportion est effectivement de la classe C?

48

Cours Data Mining - T. Hamrouni - 2021-2022


Critères d’évaluation : Matrice de confusion

• Validité du modèle (taux d’apprentissage) : nombre de cas exacts (égal à


la somme de la diagonale) divisé par le nombre total : 120/150 = 0,8

• Rappel de la classe « Payé » : nombre de cas observés et prédits « payé »


divisé par le nombre total de cas observés « payés » : 80/86 = 0,93

• Précision de la classe « Payé » : nombre de cas observés et prédits « payé »


49
divisé par le nombre total de cas prédits « payés » : 80/100 = 0,8

Critique de la technique : Avantages


- Lisibilité du résultat : un arbre de décision est facile à interpréter et
est la représentation graphique d’un ensemble de règles (dite de
classification). La structure de l’arbre permet d’expliquer comment est
classé un objet par l’arbre, ce qui peut être fait en montrant le chemin
de la racine à la feuille pour l’objet en question.
- Tout type de données : l’algorithme peut prendre en compte tous les
types d'attributs.
- Classification efficace : l’attribution d’une classe à un objet à l’aide
d’un arbre de décision est un processus très efficace (parcours d’un
chemin dans un arbre).
- Outil disponible : les algorithmes de génération d’arbres de décision
sont disponibles dans la plupart des environnements d'apprentis-
sage (moyennant des exécutables ou du code source libre d’accès).
- Forêts aléatoires : Les arbres de décision constituent la base de la
technique des forêts aléatoires qui figure parmi les plus puissantes
des techniques d’apprentissage supervisé. 50

Cours Data Mining - T. Hamrouni - 2021-2022


Critique de la technique : Inconvénients

- Sensible au nombre de classes et aux données


d’apprentissage : les performances tendent à se dégrader
lorsque le nombre de modalités des variables explicatives et
celles de la variable cible deviennent trop important. En plus, c’est
une technique sensible aux données d’apprentissage (le
changement d’un objet peut impacter la construction d’une partie
de l’arbre).

- Evolutivité dans le temps : la plupart des algorithmes de


construction des arbres de décision ne sont pas incrémentaux,
c’est-à-dire, que si les données évoluent avec le temps, il est
nécessaire de relancer une phase d’apprentissage sur
l’échantillon complet (anciens objets et nouveaux objets).
51

Cours Data Mining - T. Hamrouni - 2021-2022


Annexe

Cours Data Mining - T. Hamrouni - 2021-2022


Attributs (Variables)

Données quantitatives Données qualitatives

- Sont des données numériques - Appelées aussi catégorielles


représentant des quantités - Sont des données dont
l’ensemble est fini
- Peuvent être
- Peuvent être
● continues : sous-ensemble infini ● numériques (ex. code de
de ℜ. Ex : salaire, montant l’opérateur téléphonique (21,
dépensé 98, 52), numéro du mois (1,
2, 3, …))
● discrètes : sous-ensemble fini de ● alphanumériques (ex. Jour
Z. Ex. nombre d’enfants de semaine (lundi,
mardi,…), type du férié
(Aîd, 14 janvier)
- Quand elles sont numériques,
elles ne représentent pas des
quantités
55

Attributs (Variables)
Données quantitatives Données qualitatives

- Vu que ce sont des quantités, des - On distingue deux types :


opérations arithmétiques peuvent ● données qualitatives binaires :
être effectuées sur ces données peuvent être ordonnées. Ex :
- Elles sont ordonnées on peut solvable (oui ou non)
les comparer ● données qualitatives ordinales :
peuvent être ordonnées. Ex :
qualité de service (médiocre,
moyenne, excellente)
peuvent être traitées comme les
données quantitatives discètes
● données nominales : ne peuvent
pas être ordonnées. Ex : couleur
(bleu, gris, vert) 56

Cours Data Mining - T. Hamrouni - 2021-2022

Vous aimerez peut-être aussi