Vous êtes sur la page 1sur 29

Introduction au ML

Arbre de décisions

Faten Chakchouk
Enseignant - Chercheur
Brest Cancer : Tumeur bénigne ou maligne ?

from sklearn.datasets import load_breast_cancer


breast_cancer = load_breast_cancer()
print(breast_cancer.DESCR)

**Data Set Characteristics:**


:Number of Instances: 569
:Number of Attributes: 30 numeric, predictive attributes and the class
:Attribute Information:
- radius (mean of distances from center to points on the perimeter)
- texture (standard deviation of gray-scale values)
- perimeter
- area
- smoothness (local variation in radius lengths)
- compactness (perimeter^2 / area - 1.0)
- concavity (severity of concave portions of the contour)
- concave points (number of concave portions of the contour)
- symmetry
- fractal dimension ("coastline approximation" - 1)
Brest Cancer : Tumeur bénigne ou maligne ?
Brest Cancer : Tumeur bénigne ou maligne ?

Concave points
<=0.051 un nœud
Arcs : Réponses
possibles au test du Test sur un unique
True False
nœud attribut.

Radius Radius
<=14.98 <=11.345

Feuilles de
l’arbre = classes

257 Benign 9 Benign 4 Benign 15 Benign


7 malignant 11 malignant 0 malignant 152 malignant
Benign Malignant Benign Malignant
Arbres de décision
Définitions

Les arbres de décision ont une structure hiérarchique et sont composés de nœuds et de
feuilles reliés par des branches (arcs).

La racine est placée en haut et les feuilles en bas.

Les nœuds internes sont appelés des nœuds de décision. Ils peuvent contenir une ou plusieurs
règles (aussi appelées tests ou conditions).

La racine constitue le point de départ de l'arbre et représente l'ensemble des données


d'apprentissage.
Ces données sont segmentées en plusieurs sous-groupes, en fonction d'une variable
discriminante (un des attributs).

Instances ou attributs : Les valeurs que peut prendre une variable dans un arbre de décision.
Les feuilles de l’arbre : les classes à prédire ou variable cible (classification ou régression).

Après sa construction, un arbre de décision peut être traduit sous la forme


d’un ensemble de règles de décision.
Arbre de décision
Exemple 2

Température
>37
Classification : Malade ou sain
Attributs : température, Toux Oui Non

Malade Toux

Une fois l'arbre construit à partir des données


d'apprentissage, on peut prédire un nouveau cas en le
faisant descendre le long de l'arbre, jusqu'à une
feuille.

Malade Sain
Arbre de décision
Exemple 3

◉ Quelle variable discrimine le mieux l’ensemble


des données et laquelle doit être considérée en
premier ?

◉ Si plusieurs structures d’arbre répondent aux


situations décrites laquelle doit-on choisir ?

◉ Quel critère permet de maximiser la robustesse


de l’arbre ?
Arbre de décision
Algorithme générique d’apprentissage
Arbre de décision
Algorithme d’apprentissage

Nœud Terminal?
− Lorsque (presque) tous les exemples de S
en ce nœud sont dans la même classe, Sélection d’un test ?
− Lorsqu’il n’y a plus d’attributs à tester à ce Choix de l’attribut qui fait le mieux progresser la
niveau discrimination des données de S : Maximiser le
gain en information.
Quelle classe à un Nœud terminal ? − Indice de Gini (CART)
− La Classe majoritaire − Critère d’entropie (ID3, C4.5)
− La Classe la plus représentée, si égalité
Arbre de décision
Entropie et gain d’informations

Entropie Soit un ensemble de données T caractérisé par n


− L’Entropie d’une distribution de probabilité classes (C1, C2, ..., Cn) selon une variable cible.

La quantité d’informations nécessaire pour


identifier la classe d’un individu de l’ensemble T
correspond à l’entropie E(P), où P est la
distribution de probabilité de la partition (C1, C2, ...,
Cn) :

log désigne la fonction de logarithme en base 2.


Arbre de décision
Entropie et gain d’informations
Données Entropie
o S un échantillon, y l’attribut cible 𝐒𝐢 𝑺𝒊
𝐤
o S1, ...Sk partition de S selon les classes de y E(S) = -∑𝐢"𝟏 log 𝟐
𝐒 𝑺

Exemple
variable cible y
La variable cible « jouer » prend deux valeurs
: Oui (9) et Non (5)

o S1 ={J1,J2,J6,J8,J14}; S! =5
o S2 ={J3,J4,J5,J7,J9, J10,J11,J12,J13}; S" =9

𝟗 𝟗 𝟓 𝟓
E(S) = − 𝐥𝐨𝐠 𝟐 − 𝐥𝐨𝐠 𝟐 = 𝟎, 𝟗𝟒
𝟏𝟒 𝟏𝟒 𝟏𝟒 𝟏𝟒
Arbre de décision
Entropie et gain d’informations

Entropie par rapport à un attribut X E(X,T) Gain en Information de l’attribut X


Gain d’ Entropie de X
Supposons que l’ensemble des données T est,
partitionnée en (T1, T2, ..., Tm).
m : nombre de valeurs que peut prendre
l’attribut X considéré.

Quantité d’Information nécessaire pour


identifier la classe d’un individu de Tj
Arbre de décision
Entropie et gain d’informations
Comment choisir un test parmi les attributs disponibles ?

Calculer le Gain d’information pour chaque attribut

Sélection de l’attribut qui maximise le Gain en


Information
Arbre de décision
Entropie et gain d’informations
Comment choisir un test parmi les attributs disponibles ?
Exemple
Calculer le Gain en Information pour chaque
attribut ?

1. Gain(Ciel)
2. Gain(Temp.)
3. Gain (Humidité)
4. Gain (Vent)

𝟗 𝟗 𝟓 𝟓
E(Jouer) = − 𝐥𝐨𝐠 𝟐 − 𝐥𝐨𝐠 𝟐 = 𝟎, 𝟗𝟒
𝟏𝟒 𝟏𝟒 𝟏𝟒 𝟏𝟒
Arbre de décision
Entropie et gain d’informations : Exemple
Peut prendre une des trois valeurs Soleil, Couvert,
Pluie

Variable : Ciel ---- 3 partitions


dont les éléments appartiennent
à l’une des classes de « Jouer »
Arbre de décision
Entropie et gain d’informations : Exemple
Arbre de décision
Entropie et gain d’informations : Exemple
Arbre de décision
Entropie et gain d’informations : Exemple

Remarque :
Pour calculer log2 à partir de logb
Arbre de décision
Entropie et gain d’informations : Exemple

Pour la branche Soleil, le gain est recalculé pour les attributs Température,
Humidité et Vent seulement pour les jours où l’attribut Ciel = Soleil
Arbre de décision
Indice de Gini et gain d’informations

Indice de Gini

Mesure l’impureté mesure le taux d'impureté de la


distribution des classes de points de données, ou le taux
de mélange des classes.

Plus l’indice de Gini est faible, plus le mélange est pur.


Par exemple, lorsque l'ensemble de données ne
contient qu'une seule classe :
- Proportion de la classe =1.
- IG= 1- (12+ 02 ) = 0.
Gain de Gini

- j
Arbre de décision
Indice de Gini et gain d’informations
Comment choisir un test parmi les attributs disponibles ?

Calculer le Gain d’information pour chaque attribut

Sélection de l’attribut qui maximise le Gain en Information.

OU Bien Sélection de l’attribut qui minimise :


Rappel : Type de variables/Attributs

Variable

catégorique Numérique

nominale ordinale Continue Discrète


Arbre de décision
Indice de Gini et gain d’informations
Comment choisir un test parmi les attributs disponibles ?

Attribut catégorique
Division multiple : autant de partitions que de valeurs distinctes.

Taillee

petite Moyenne Large

Division binaire : Division des valeurs en deux sous-ensembles ⇒ Trouver le


partitionnement optimal.

OU Taillee OU Taillee
Taillee
Petite, Moyenne Large Large, Moyenne
Petite, Large Moyenne Petite
Arbre de décision
Indice de Gini et gain d’informations
Comment choisir un test parmi les attributs disponibles ?

Attribut numérique continu

Différentes manières de discrétiser :

Revenu imposable > 80K Revenu imposable?

Oui Non
< 𝟏𝟎𝑲 > 𝟖𝟎𝑲

[𝟏𝟎𝑲, 𝟐𝟓𝑲) [𝟐𝟓𝑲, 𝟓𝟎𝑲) [𝟐𝟓𝑲, 𝟓𝟎𝑲)

Division binaire Discrétisation pour former un attribut ordinal.


Arbre de décision
Indice de GINI
Exemple
Calculer le Gain en Information pour chaque
attribut en se basant sur l’indice de GINI ?

1. Gain(Ciel)
2. Gain(Temp.)
3. Gain (Humidité)
4. Gain (Vent)

𝟐 𝟐
𝟗 𝟓
IG (Jouer) = 𝟏 − 𝟏𝟒 −
𝟏𝟒
= 𝟎, 𝟒𝟔
Arbre de décision
Indice de GINI
Exemple Cas division multiple 𝟐 𝟐
𝟗 𝟓
IG (Jouer) = 𝟏− −
𝟏𝟒 𝟏𝟒

Pour Ciel=Soleil : 5 observations (2 oui et 3 Non)


I(Ciel=Soleil) =1-(2/5)2-(3/5)2= 12/25=0,48

Pour Ciel=Couvert : 4 observations (4 Oui,0 Non)


I(Ciel=Couvert ) = 1-(4/4)2-(0/4)2= 0

Pour Ciel=Pluie : 5 observations (3 oui et 2 Non)


I(Ciel= Pluie) =1-(3/5)2-(2/5)2= 12/25

IG(Ciel) = 5/14 x I(Ciel=Soleil) +4/14 x I(Ciel=Couvert )+5/14 I(Ciel= Pluie)


= 12/35 = 0,34
Arbre de décision
Indice de GINI
Exemple Cas division binaire 𝟐 𝟐
𝟗 𝟓
IG (Jouer) = 𝟏− −
𝟏𝟒 𝟏𝟒

Pour Ciel=Soleil, Pluie : 10 observations (5 oui et 5


Non)
I(Ciel=Soleil/Pluie) =1-(5/10)2-(5/10)2= 0,5

Pour Ciel=Couvert : 4 observations (4 Oui,0 Non)


I(Ciel=Couvert ) = 1-(4/4)2-(0/4)2= 0

IG(Ciel) = 10/14 x I(Ciel=Soleil/Pluie) +4/14 x I(Ciel=Couvert )


= 10/14 * 0,5= 0,36
Arbre de décision
Entropie et gain d’informations - Exemple 2

Données : un tableau d'observations

Problème :
Pourquoi certains attrapent un coup de soleil ? Comment prédire le résultat
pour une nouvelle personne (coup de soleil ou RAS : Rien A Signaler) ?
Arbre de décision
Indice de Gini et gain d’informations - Exemple 2

Données : un tableau d'observations

Problème :
Comment prédire le résultat internet pour un client (le client consulte ses
comptes sur internet ou non ) ?

Vous aimerez peut-être aussi