0% ont trouvé ce document utile (0 vote)
65 vues30 pages

chapter09.7.ML-SL-Decision Trees

Les arbres de décision (AD) sont des structures utilisées pour la classification et l'estimation d'attributs, où chaque nœud représente un test sur un attribut et chaque feuille une valeur cible. La construction d'un AD implique le choix d'attributs basés sur des critères tels que le gain d'information, et des algorithmes comme ID3 et C4.5 sont couramment utilisés pour créer ces arbres en minimisant l'erreur de classification.

Transféré par

benahmedroua2
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
65 vues30 pages

chapter09.7.ML-SL-Decision Trees

Les arbres de décision (AD) sont des structures utilisées pour la classification et l'estimation d'attributs, où chaque nœud représente un test sur un attribut et chaque feuille une valeur cible. La construction d'un AD implique le choix d'attributs basés sur des critères tels que le gain d'information, et des algorithmes comme ID3 et C4.5 sont couramment utilisés pour créer ces arbres en minimisant l'erreur de classification.

Transféré par

benahmedroua2
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Arbres de décision

Notations

• N exemples d’apprentissage

• d variables explicatives

• (Y,X1,X2,…,Xd) les variables de la population

• (yi,xi) est le vecteur des réalisations de (Yi,Xi)


Principe des arbres de décisions (AD)

• À partir de ces exemples d’apprentissage, on construit un


arbre de décision, tel que:

 Un nœud correspond à un test sur la valeur d'un ou


plusieurs attributs;
 Une branche partant d'un nœud correspond à une ou
plusieurs valeurs de ce test;
 Une feuille est associée une valeur de l'attribut cible Y.

3
Principe des arbres de décisions (AD)

• L'arbre de décision est exploité de différentes manières :

1. En y classant de nouvelles données;

2. En faisant de l'estimation d'attributs;

3. En extrayant un jeu de règles de classification;

4. En interprétant la pertinence des attributs.

4
Construction d’un AD – Exemple

• Soit à un ensemble de jours (un jour = un exemple).

• Chaque jour est caractérisé par un numéro et ses conditions


météorologiques (ciel, température, humidité de l'air, force
du vent).

• L'attribut cible étant « jouer au tennis ? », dont les valeurs


possibles sont Y = {oui, non}.

• Une fois l'arbre de décision construit, on pourra classer une


nouvelle donnée pour savoir « si on joue ou non ce jour-là ».

5
Construction d’un AD – Exemple

6
Construction d’un AD – Exemple
• Soit un exemple d’AD:

• L’exemple de ligne 1 du tableau

sera classé comme «oui» ! 7


Construction d’un AD

• La construction d’un AD optimal (minimisant l'erreur de


classification) est un problème NP-complet.

• Au lieu de construire l'arbre de décision optimal pour un jeu


d'exemples donné, on se contente de construire un arbre de
décision ‘correct‘.

• Plusieurs algorithmes ont été proposés pour construire des


AD, dont CART, ID3 et C4.5 :
• ID3 ne prend en compte que des attributs nominaux.
• C4.5 prend également en charge des attributs quantitatifs.

8
Construction d’un AD

• Dans notre exemple, on suppose que tous les attributs sont


nominaux.
• ID3 et C4.5 fonctionnent récursivement comme suit :
Déterminer un attribut à placer en racine de l'arbre. La
racine possède autant de branches que de valeurs pour cet
attribut.
À chaque branche est associé un ensemble d'exemples
dont l'attribut prend la valeur qui étiquette cette branche.
On accroche alors au bout de cette branche l'arbre de
décision construit sur ce sous-ensemble d’exemples, en
considérant tous les attributs excepté celui qui vient d’être
mis à la racine.
9
Arbres de décision: Algorithmes ID3, C4.5

Nœud = racine;

1- att ← meilleur attribut de décision pour prochain nœud;


2- Assigner att comme attribut de décision au nœud;
3- Pour chaque valeur de att, créer un nœud descendant;
4- Trier les exemples d’entrainement dans les feuilles de l’arbre;
5- Si (les exemples sont parfaitement classés)
STOP;
sinon
Itérer sur le nœud feuille.
fin

10
Choix de l’attribut de décision

Soit un exemple de nœud pour lequel on doit choisir un attribut


de décision:
[29+, 35-] a1? [29+, 35-] a2?

[21+, 05-] [8+, 30-] [18+, 33-] [11+, 02-]

Quel attribut de décision choisir, a1 ou a2?

11
Choix de l’attribut de décision

• Les algorithmes de construction d’AD fonctionnent de haut


en bas, en choisissant à chaque étape une variable qui
divise le mieux l’ensemble des exemples.

• Les métriques utilisées pour choisir un meilleur attribut


mesurent en général l’homogénéité de la variable cible
dans les sous-ensembles résultants de la division de nœuds.

• Une autre mesure est le gain d’information, qui se base sur


le concept d’entropie de la théorie de l’information.

12
Choix de l’attribut de décision

Entropie (cas d’une variable avec un attribut x)

• Soit (x) la distribution de la variable x mesurant l’incertitude


sur la valeur de la variable.

• Certaines valeurs de variables sont moins sures que d’autres.

p(x) p(y)
x y

• L’entropie mesure le nombre de bits requis pour encoder x.

13
Choix de l’attribut de décision

• L’entropie (x) d’une variable aléatoire x est définie par:

(x)= - ∑ (x = ) log2( (x = ))
X =

• (x) est le nombre de bits attendu pour encoder les valeurs de


la variable aléatoire x.

• Un code efficace assigne - log2( (x = )) bits pour encoder


un message x = . La valeur attendu de la longueur du code
est alors définie par la formule en haut.
14
Choix de l’attribut de décision (cas binaire)

• Pour K = 2 (deux classes), les éléments de la classe C1 seront


dénotés par ⊕ et ceux de la classe C2 par ⊖. On aura:

x =− ⊕log2( ⊕) − ⊖log2( ⊖)

• ⊕ et ⊖ sont les proportions des deux classes dans le nœud,


avec ⊕ + ⊖ = 1.

On aura aussi:
• 0 ≤ (x)≤ 1.
• Si ⊕= 0 ou ⊖ = 0, alors (x)= 0.
• Si ⊕= ⊖ = 0.5, alors (x)= 1 (entropie maximale).

15
Choix de l’attribut de décision (cas binaire)

• Pour le cas de 2 classes, on aura le graphe suivant de x:

• L’entropie mesure le degré d’impureté d’un nœud.

16
Choix de l’attribut de décision (cas binaire)

• Soit une population d'exemples D . Le gain d'information de D


par rapport à un attribut donné est la variation d'entropie
causée par la partition de D selon .

|D aj=v |
! D, = D − ∑ D aj=v
|D|
∈ %&'()( )

• D aj=v ⊂ D est l’ensemble des exemples ayant = .

• |D|indique la cardinalité de l’ensemble D .

17
Choix de l’attribut de décision (cas binaire)

• Si prends par exemple 3 valeurs ∈ { 1, 2, 3} , la partition


de D va former 3 parties: D aj=v1 ,Daj=v2 ,Daj=v3. Le gain
d’information est donné par:

D aj=v1 |D aj=v2 | D aj=v3


D − D aj=v1 − D aj=v2 − D aj=v3
|D| |D| |D|

• On peut dire donc que le gain est la différence entre


l'entropie moyenne des exemples D et l'entropie moyenne
une fois que D a été partitionné selon les valeurs de .

• On notera que plus cette différence (le gain) est grande, plus
l’homogénéisation est grande.
18
Choix de l’attribut de décision (cas binaire)

Exercice:
a y
6 ⊕  faible
2 ⊖  faible 9⊕
3 ⊕  fort 5⊖
3 ⊖  fort

• Dans cet exemple, il existe 9 ⊕ et 5 ⊖. Parmi ces exemples,


6 ⊕ et 2 ⊖ prennent la valeur «faible» pour l'attribut a,
tandis que les autres exemples prennent la valeur «fort»
pour cet attribut.
• Calculer le gain d’information !(D , ) pour l’attribut , si
on choisi de le placer en racine. 19
Solution:
a y
6 ⊕  faible
2 ⊖  faible 9⊕
3 ⊕  fort 5⊖
3 ⊖  fort

− 8 D − 6 D
! D, = - =faible =fort
14 14
9 9 5 5
- =− log2 − log2 = 0.940
14 14 14 14
6 6 2 2
D =faible = − log2 − log2 = 0.811
8 8 8 8
3 3 3 3
D =fort = − log2 − log2 =1
6 6 6 6
8 6
! D, = 0.940 − 0.811 − 1 = 0.940 − 0.8920 = 0.048
14 14 20
Choix de l’attribut de décision (cas binaire)

• Le principe de l'algorithme ID3 pour déterminer l'attribut à


placer à la racine de l’AD est de:

Chercher l'attribut qui possède le gain d'information


maximum, le placer en racine.

 Itérer pour chaque fils, c.à.d. pour chaque valeur de


l'attribut.

Arrêter l'algorithme quand le gain est négligeable.

21
Étude d’un exemple d’AD

Pour notre exemple: « jouer au tennis?»,

• les exemples n’étant ni tous ⊕, ni tous ⊖, l'ensemble des


attributs n’étant pas vide, on calcule les gains d’information
pour chaque attribut:

• Donc, la racine de l’AD est l’attribut « Ciel ».

22
Étude d’un exemple d’AD

• L'attribut « Ciel » peut prendre 3 valeurs: Ensoleillé, Pluie et


Couvert.
• La branche « Ensoleillé »: ID3, appelé récursivement avec 5
exemples: (1), (2), (8), (9) , (11).

23
Étude d’un exemple d’AD

• L'attribut « Ciel » peut prendre 3 valeurs: Ensoleillé, Pluie et


Couvert.
• La branche « Ensoleillé »: ID3, appelé récursivement avec 5
exemples: (1), (2), (8), (9) , (11).
• Les gains d'information des 3 attributs restants sont alors :

• L'attribut « Humidité » sera donc choisi ;

• on continue la construction de l’AD récursivement.


24
Étude d’un exemple d’AD

• La branche « Pluie »: partant de la racine, ID3 est appelé


récursivement avec 5 exemples: (4), (5), (6), (10), (14).

• On continue la construction de l’AD récursivement .

• La branche « Couvert »: partant de la racine, ID3 est appelé


récursivement avec 4 exemples: (3), (7), (12), (13).

• Dans ce dernier cas, tous les exemples sont ⊕ : on affecte


donc tout de suite la classe « oui » à cette feuille.

25
Étude d’un exemple d’AD

• L’arbre final sera donné par le graphe:

26
Étude d’un exemple d’AD

On peut faire les remarques suivantes sur le graphe:

• L'attribut « Température », n’est pas utilisé dans l’AD, signifie


que cet attribut n'est pas pertinent pour déterminer la classe.

• Si l’attribut « Ciel » vaut « Ensoleillé» , l'attribut « Vent » n'est


pas pertinent.

• Si l'attribut « Ciel » vaut « Pluie », l'attribut « Humidité» n'est


pas pertinent.

27
Classification par AD

En ayant un AD construit à partir d’exemples d’apprentissage D ,


la classification d’une nouvelle donnée x se fait par l’algorithme
suivant:
Algorithme: entrées (AD, x)
• Nc = racine (AD)
• Tant-que (Nc ≠ feuille) faire:
- En fonction de l'attribut testé dans Nc et de sa valeur
dans x, suivre l'une des branches de Nc.
- Le nœud atteint devient Nc.
• Fin tant-que
• Retourner Étiquette (Nc).

28
Classification par AD

Exercice: Classer les exemples suivants:

= (Ensoleillé, Fraîche, Elevée, Fort) ;

= (Ensoleillé, Fraîche, Normale, Fort) ;

= (Pluie, Chaude, Normale, Faible);

= (Pluie, Fraîche, Elevée, Fort).

29
Classification par AD

Exercice: Classer les exemples suivants:

= (Ensoleillé, Fraîche, Elevée, Fort) ;


Non
= (Ensoleillé, Fraîche, Normale, Fort) ;
Oui
= (Pluie, Chaude, Normale, Faible);
Oui
= (Pluie, Fraîche, Elevée, Fort).
Non

30

Vous aimerez peut-être aussi