Vous êtes sur la page 1sur 25

Arbre de décision

AI For You - Morgan Gautherot


Définition

u Les arbres de décision sont des algorithmes d'apprentissage automatique


polyvalent qui peuvent effectuer des tâches de classification et de régression.
Ce sont des algorithmes très puissants, capables de s'adapter à des ensembles
de données complexes.

AI For You - Morgan Gautherot 2


Vais-je jouer au tennis ?

Ciel
Couvert Pluie
Ensoleillé

Vent Oui Humidité

Fort Faible Basse


Élevée

Non Oui Non Oui

AI For You - Morgan Gautherot 3


Les points forts de l'arbre de décision

u L'une des nombreuses qualités des arbres de décision est qu'ils nécessitent
très peu de préparation de données. En particulier, ils ne nécessitent pas du
tout de mise à l'échelle ou de centrage des caractéristiques.

u Comme vous pouvez le voir, les arbres de décision sont assez intuitifs et leurs
décisions sont faciles à interpréter, nous appelons ce genre de modèle : des
boîtes blanches. En revanche, d’autres algorithmes comme le boosting ou les
réseaux de neurones sont généralement considérés comme des modèles de
boîte noire.

AI For You - Morgan Gautherot 4


Arbre de classification

AI For You - Morgan Gautherot


Le jeu de données

u Base de données iris

Sepal Sepal Petal Petal Espèce


length width length width

5.1 3.5 1.4 0.2 I. setosa

7.0 3.2 4.7 1.4 I. versicolor

6.3 3.3 6.0 2.5 I. virginica

⋮ ⋮ ⋮ ⋮ ⋮

AI For You - Morgan Gautherot 6


Le jeu de données

u Base de données iris

Sepal Sepal Petal Petal Espèce


length width length width

5.1 3.5 1.4 0.2 I. setosa

7.0 3.2 4.7 1.4 I. versicolor

6.3 3.3 6.0 2.5 I. virginica


Setosa Versicolor Virginica
⋮ ⋮ ⋮ ⋮ ⋮

AI For You - Morgan Gautherot 7


Votre premier modèle d'arbre de décision
Données
root node

u Base de données iris Depth 0


Sepal length ≥ 6
Sepal Sepal Petal Petal Espèce
length width length width
Non Oui node
5.1 3.5 1.4 0.2 I. setosa
I. setosa Petal length ≥ 5 Depth 1
7.0 3.2 4.7 1.4 I. versicolor

6.3 3.3 6.0 2.5 I. virginica Non Oui


⋮ ⋮ ⋮ ⋮ ⋮
I. versicolor I. virginica Depth 2

leaf node
AI For You - Morgan Gautherot 8
Estimation de la probabilité d’appartenance
population = [nb setosa, nb versicolor, nb virginica]

Un arbre de décision peut également Sepal length ≥ 6


estimer la probabilité qu'une pop. = [50, 50, 50]
observation appartienne à une classe
k particulière.
Non Oui
Par exemple : I. setosa Petal length ≥ 5
Nous voulons identifier une fleur pop. = [50, 0, 0] pop. = [0, 50, 50]
avec un sépale de 6 cm et un pétale
de 4 cm.

0/54 = 0% Setosa Non Oui


49/54 = 90.7% Versicolor I. versicolor I. virginica
5/54 = 9.3% Virginica
pop. = [0,
0 49
49, 55] pop. = [0, 1, 45]

AI For You - Morgan Gautherot 9


Frontière de décision
Petal length

6 Sepal length
AI For You - Morgan Gautherot 10
population = [nb setosa, nb versicolor, nb virginica]
Pureté
pop. = [50, 50, 50]

Sepal length ≥ 6
I. setosa False True
pop. = [50, 0, 0] pop. = [0, 50, 50]

Petal length ≥ 5

Pure
I. versicolor False True I. virginica
pop. = [0, 49, 5] pop. = [0, 1, 45]

Impure

AI For You - Morgan Gautherot 11


Indice Gini population = [nb setosa, nb versicolor, nb virginica]

Comment créer la bonne inéquation qui


conduira à une meilleure classification ? pop. = [50, 50, 50]
gini = 0.667
%

𝐺! = 1 − ) 𝑝!," ' Sepal length ≥ 6


"#$ I. setosa Non Oui
𝑝!," est le ratio du nombre
d’individus de la classe k parmi pop. = [50, 0, 0] pop. = [0, 50, 50]
la population du 𝑖 è)* noeud. gini = 0 gini = 0.5
Petal length ≥ 5
+, ' +, ' +, '
gini = 1 − − − = 0.667
$+, $+, $+,
+, ' , ,
gini = 1 − − − =0 I. versicolor Oui I. virginica
+, +, +, Non
, +, ' +, '
gini = 1 − − − = 0.5 pop. = [0, 49, 5] pop. = [0, 1, 45]
$,, $,, $,,
, -. ' + ' gini = 0.168 gini = 0.043
gini = 1 − − − = 0.168
+- +- +-
, $ ' -+ '
gini = 1 − − − = 0.043
-/ -/ -/ AI For You - Morgan Gautherot 12
Coût du nœud
On veut calculer pour la pureté de notre nœud k

)!"#$%& )'()*+&
𝐽 𝑘 = 𝐺01234* + 𝐺567!8*
) )

𝐺01234*/567!8* 𝑚𝑒𝑠𝑢𝑟𝑒 𝑙: 𝑖𝑚𝑝𝑢𝑟𝑒𝑡é 𝑑𝑢 𝑠𝑜𝑢𝑠 𝑒𝑛𝑠𝑒𝑚𝑏𝑙𝑒 𝑑𝑟𝑜𝑖𝑡𝑒/𝑔𝑎𝑢𝑐ℎ𝑒


𝑂𝑢 7
𝑚01234*/567!8* 𝑒𝑠𝑡 𝑙𝑎 𝑝𝑟𝑜𝑝𝑜𝑟𝑡𝑖𝑜𝑛 𝑑𝑒 𝑛𝑜𝑡𝑟𝑒 𝑝𝑜𝑝𝑢𝑙𝑎𝑡𝑖𝑜𝑛 𝑑𝑢 𝑠𝑜𝑢𝑠 𝑒𝑛𝑠𝑒𝑚𝑏𝑙𝑒 𝑑𝑟𝑜𝑖𝑡𝑒/𝑔𝑎𝑢𝑐ℎ𝑒

𝐺01234* = 0 𝐺567!8* = 0.5


𝑚567!8*
𝑚01234* = 100/150
= 50/150 𝑚
𝑚
+, $,,
𝐽 0 = 0+ 0.5 = 0.33
$+, $+,

AI For You - Morgan Gautherot 13


Choisir les noeuds
𝐺01234* = 0
𝑚01234* = 50/150 +, $,,
1) 𝐽 0 =
$+,
0+
$+,
0.50 = 0.33
𝐺567!8* = 0.5
𝑚567!8* = 100/150

𝐺01234* = 0.41
𝑚01234* = 70/150
2) 𝐺567!8* = 0.47 𝐽 0 =
;,
$+,
0.41 +
<,
$+,
0.47 = 0.44

𝑚567!8* = 80/150

𝐺01234* = 0.60
𝑚01234* = 92/150
3) 𝐺567!8* = 0.27 𝐽 0 =
.'
$+,
0.0 +
+<
$+,
0.27 = 0.41

𝑚567!8* = 58/150
AI For You - Morgan Gautherot 14
Construction d’un arbre

pop. = [50, 50, 50]

Sepal length ≥ 6
I. setosa False True
pop. = [50, 0, 0] pop. = [0, 50, 50]

AI For You - Morgan Gautherot 15


Arbre de régression

16

AI For You - Morgan Gautherot


Le jeu de données

u Base de données prix de maison

Nb pièces surface Garage Année Prix (k€)

3 72 1 2017 180

2 58 1 2010 140

3 76 0 1998 160

⋮ ⋮ ⋮ ⋮ ⋮

AI For You - Morgan Gautherot 17


Arbre de régression 𝑚𝑜𝑦𝑒𝑛𝑛𝑒 = 𝑦J
Données

Exemple : surface = 60 pop.1 = 200


𝑦J=7=.$ = 140

Non surface ≥ 60 Oui

pop.5 = 44 pop.2 = 156


𝑦J=7=.+ = 120 𝑦J=7=.' = 190

Non surface > 50 Oui Non Oui


surface > 80
pop.7 = 20 pop.6 = 24 pop.4 = 110 pop.3 = 46
𝑦J=7=.; = 110 𝑦J=7=./ = 145 𝑦J=7=.- = 180 𝑦J=7=.? = 220

AI For You - Morgan Gautherot 18


Frontière de décision

220
Prix

180

145

110

50 60 Surface 80
AI For You - Morgan Gautherot 19
Pureté 𝑚𝑜𝑦𝑒𝑛𝑛𝑒 = 𝑥̅
Données

1 ' pop.1 = 200


𝑀𝑆𝐸 = ) 𝑦J%75* − 𝑦 (!)
𝑝𝑜𝑝. 𝑛𝑜𝑑𝑒 𝑦J=7=.$ = 140
! ∈ %75*
mse = 978

Non surface ≥ 60 Oui

pop.5 = 44 pop.2 = 156


𝑦J=7=.+ = 120 𝑦J=7=.' = 190
mse = 377 mse = 740

Non surface > 50 Oui Non Oui


surface > 80
pop.7 = 20 pop.6 = 24 pop.4 = 110 pop.3 = 46
𝑦J=7=.; = 110 𝑦J=7=./ = 145 𝑦J=7=.- = 180 𝑦J=7=.? = 220
mse = 176 mse = 131 mse = 151 mse = 359

AI For You - Morgan Gautherot 20


Coût du nœud
On veut calculer pour la pureté de notre nœud k
)!"#$%& )'()*+&
𝐽 𝑘 = )
𝑀𝑆𝐸01234* + )
𝑀𝑆𝐸567!8*
1 '
𝑀𝑆𝐸01234*/567!8* = ) 𝑦S%75* − 𝑦 (!)
𝑝𝑜𝑝. 𝑛𝑜𝑑𝑒
! ∈ %75*
𝑂ù
1
𝑦S%75* = ) 𝑦 (!)
𝑚%75*
! ∈ %75*

𝑀𝑆𝐸01234* = 377 𝑀𝑆𝐸567!8* = 740


𝑚567!8*
𝑚01234* = 156/200
= 44/200 𝑚
𝑚
-- $+/
𝐽 0 = 377 + 740 = 660
',, ',,

AI For You - Morgan Gautherot 21


Choisir les noeuds
𝑀𝑆𝐸,-./01 = 377
𝑚,-./01 -- $+/
= 44/200
1) 𝑚 𝐽 0 =
',,
377 +
',,
740 = 660
surface > 60 𝑀𝑆𝐸234561 = 740
𝑚234561
= 156/200
𝑚

𝑀𝑆𝐸,-./01 = 549
𝑚,-./01
= 80/200
𝑚
2) 𝑀𝑆𝐸234561 = 710 𝐽 0 =
<,
',,
549 +
$',
',,
710 = 646
𝑚234561
= 120/200
𝑚

𝑀𝑆𝐸,-./01 = 879
𝑚,-./01
= 150/200
𝑚
3) 𝑀𝑆𝐸234561 = 200 𝐽 0 =
$+,
',,
879 +
+,
',,
200 = 709
𝑚234561
= 50/200
𝑚
AI For You - Morgan Gautherot 22
Des solutions raisonnablement bonne

u L'algorithme CART est un algorithme gourmand : il recherche avidement une


répartition optimale au niveau supérieur, puis répète le processus à chaque
niveau. Il ne vérifie pas si la scission conduira ou non à une impureté aussi
faible que possible plusieurs niveaux plus bas. Un algorithme gourmand
produit souvent une solution raisonnablement bonne, mais il n'est pas garanti
que ce soit la solution optimale. Parce que l'arbre optimal est connu pour être
un problème NP-Complet.

AI For You - Morgan Gautherot 23


Limitation de l'arbre de décision

u Les arbres de décision aiment les limites de décision orthogonales, ce qui les
rend sensibles à la rotation des ensembles d'entraînement.

u Ils sont également instables car ils sont très sensibles à de petites variations
des données d’entraînement

AI For You - Morgan Gautherot 24


Le random forest

u Le random forest vient combler certaines limites des arbres de décision.

AI For You - Morgan Gautherot 25

Vous aimerez peut-être aussi