Vous êtes sur la page 1sur 39

L’apprentissage automatique

L’apprentissage supervisé

Les arbres de decision


octobre 2023
Les arbres de decision

 L’une des grandes familles d’approches pour la


résolution de problèmes comme pour l’apprentissage
est la technique consistant à « diviser pour régner »

 Elle se résume à identifier des sous-problèmes, à leur


trouver une solution, puis à combiner ces solutions
pour résoudre le problème général

 C’est sur ce principe que sont fondés les algorithmes


d’apprentissage par arbres de décision
Les arbres de decision

Certaines applications spécifiques


comprennent

 le diagnostic médical,

 l'évaluation du risque de crédit des


demandes de prêt, la classification des
maladies,

 la classification de recherche Web,

 la reconnaissance de forme
Définitions

En théorie des graphes, un arbre est un graphe non


orienté, acyclique et connexe. L’ensemble des nœuds
se divise en trois catégories :

Nœud racine (l’accès à l’arbre se fait par ce nœud),

Nœuds internes : les nœuds qui ont des


descendants (ou enfants), qui sont à leur tour des
nœuds,

Nœuds terminaux (ou feuilles) : nœuds qui n’ont


pas de descendant.
Définitions

Les arbres de décision (AD) sont une catégorie


d’arbres utilisée dans l’exploration de données et en
informatique décisionnelle.

Ils emploient une représentation hiérarchique de la


structure des données sous forme des séquences de
décisions (tests) en vue de la prédiction d’un résultat ou
d’une classe.

Chaque individu (ou observation), qui doit être


attribué(e) à une classe, est décrit(e) par un ensemble de
variables qui sont testées dans les nœuds de l’arbre.

Les tests s’effectuent dans les nœuds internes et les


décisions sont prise dans les nœuds feuille.
Exemples de problèmes adaptés à une
approche par arbres de décision
Comment répartir une population d’individus (e.g.
clients, produits, utilisateurs, etc.) en groupes
homogènes selon un ensemble de variables
descriptives (e.g. âge, temps passé sur un site Web,
etc.) et en fonction d’un objectif fixé (variable de
sortie ; par exemple : chiffre d’affaires, probabilité de
cliquer sur une publicité, etc.).
Exemples de problèmes adaptés à une
approche par arbres de décision
 Le processus de décision est équivalent à une « descente » dans
l’arbre (de la racine vers une des feuilles) :

 à chaque étape un attribut est testé et un sous-arbre est choisi,


la parcours s’arrête dans une feuille (une décision est prise).
Prêt bancaire
 Accorder ou non un
prêt bancaire.

 Chaque individu est


évalué sur un ensemble
de variables testées dans
les nœuds internes.

 Les décisions sont prises


dans les feuilles.
Exemples de problèmes adaptés à une approche
par arbres de décision
 Un ensemble d’individus décrits par plusieurs variables
catégorielles (Toux, Fievre, Poids, Douleur).

 En bas on voit l’arbre de décision obtenu. La variable cible se


retrouve dans les feuilles.
Exemples de problèmes adaptés à une
approche
par arbres de décision
Exemples de problèmes adaptés à une approche
par arbres de décision : les oiseaux

 Pour un ensemble d’éléments décrits par des variables


catégorielles la classification résultante peut être vue
comme une combinaison de règles booléennes.
Arbre de décision

⚫ L’apprentissage par arbre de décision (Decision tree


learning) est basé sur l'utilisation d'un arbre comme
modèle prédictif.

⚫ L’arbre de décision est construit grâce aux données


d’apprentissage.

11
Arbre de décision

⚫ Il existe deux principaux types d'arbre de décision :

⚫ Les arbres de classification (Classification Tree)


permettent de prédire à quelle classe la variable-cible
appartient, dans ce cas la prédiction est une étiquette
de classe.

⚫ Les arbres de régression (Regression Tree) permettent


de prédire une quantité réelle (par exemple, le prix d'une
maison ou la durée de séjour d'un patient dans un
hôpital), dans ce cas la prédiction est une valeur
numérique. 12
Les algorithmes

 Il existe plusieurs algorithmes automatiques pour


construire les arbres de décision:

 ID3 (Iterative Dichotomiser 3): dévelopé en 1986


par Ross Quinlan. Il peut être appliqué seulement
sur les caractéristiques nominales.

 Il est utilisé pour le classement.


Les algorithmes

 C5.0: une extension commerciale de C4.5, toujours


par Ross Quinlan.

 CART (Classification and Regression Trees): comme


C4.5 mais utilise d’autres métriques. Aussi,
l’algorithme supporte la régression.
Algorithme General
1.Déterminer la meilleure caractéristique dans
l’ensemble de données d’entrainement.

2.Diviser les données d’entrainement en sous-


ensembles contenant les valeurs possibles de la
meilleure caractéristique.

3.Générez de manière récursive de nouveaux arbres


de décision en utilisant les sous-ensembles de
données créés.

4.Lorsqu’on ne peut plus classifier les données, on


s’arrête.
L’algorithme ID3

L’algorithme ne fonctionne que sur des


caractéristiques nominales.

Donc, si on a des caractéristiques continues, il faut


appliquer la discritésation.

Aussi, il est utilisé pour le classement seulement.


L’algorithme ID3

Il se base sur le concept d’attributs et de classe de


l’apprentissage automatique.

Cet algorithme recherche l’attribut le plus pertinent


à tester pour que l’arbre soit le plus court et optimisé
possible.
1. Sélectionner la meilleure caractéristique

Cet algorithme utilise la fonction entropie et le


gain d’information pour décider quelle est la
meilleure caractéristique.

Etant donnée un ensemble de classes C, l’entropie


de ensemble de donnée S est exprimée par:
1. Sélectionner la meilleure caractéristique

Où (en divisant le nombre des échantillons d’une


certaine classe sur le nombre de tous les échantillons
dans les données d’entrainement):

 La caractéristiques ayant plus de gain d’information est


celle sélectionnée comme meilleure.

 Aussi, la valeur avec entropie null est considérée comme


feuille de l’arbre.
2. Calculer le gain d’information
 Etant donnée un vecteur de caractéristiques f , en
utilisant les valuers d’une caractéristique fj , on peut
diviser l’ensemble de donnée S en plusieurs sous
ensembles groupés dans un ensemble Sj .
Le gain d’information est mesuré en se basant sur
la différence entre l’entropie originale de S et celle
après sa division en se basant sur une caractéristique
fj .
Le gain d’information

• La caractéristiques ayant plus de gain d’information


est celle sélectionnée comme meilleure.

• Aussi, la valeur avec entropie null est considérée


comme feuille de l’arbre.
ID3 : application

On veut estimer une décision (jouer ou non) en se


basant sur 4 caractéristiques:

 temps,
 température,
 humidité et
 vent.

On va construire un arbre de décision en se basant sur


les données suivants:
ID3 : application

1. On calcule la probabilité de chaque classe:

P(jouer=oui) = 9/14
P(jouer=non) = 5/14

2. On calcule, ensuite, l’entropie de l’ensemble des


données:

H(S) = - P(jouer=oui) * log2(P(jouer=oui)) - P(jouer=non) *


log2(P(jouer=non))

H(S) = - 9/14 * log2(9/14) - 5/14 * log2(9/14)


H(S) = 0.41 + 0.53 = 0.94
ID3 : application

3. Pour chaque caractéristique, on calcule le gain


d’information:
•Temps:
Le caractéristique “temps” divise les données sur 3 sous
ensembles. Voici le nombre des occurrences de chaque
classe dans chaque sous-ensemble:
On calcule la probabilité de chaque
ensemble:

P(S_ensoleilé) = 5/14
P(S_nuageux) = 4/14
P(S_pluvieux) = 5/14

On calcule l’entropie de chaque ensemble:


H(S_ensoleilé) = - 2/5 * log2(2/5) - 3/5 * log2(3/5) = 0.971
H(S_nuageux) = - 4/4 * log2(4/4) - 0/4 * log2(0/4) = 0
H(S_pluvieux) = - 3/5 * log2(3/5) - 2/5 * log2(2/5) = 0.971
Le gain d’information de la caractéristique
“temps”:

IG(S, temps) = H(S) - P(S_ensoleilé) * H(S_ensoleilé) -


P(S_nuageux) * H(S_nuageux) - P(S_pluvieux) *
H(S_pluvieux)

IG(S, temps) = 0.94 - 5/14 * 0.971 - 4/14 * 0 - 5/14 * 0.971

IG(S, temps) = 0.247


Continuer

Calculer le gain d informations des attributs :

• Temperature
• humidité
• Vent
La temperature
Humidité
Le vent
Calcul du gain d’information des autres
caractéristiques

 Donc, la première caractéristique à vérifier dans l’arbre


sera “temps”.

 Comme l’entropie du temps étant “nuageux” est 0, cet


ensemble contient des échantillons de la même classe.
Donc, cet ensemble forme une feuille.
Division selon le temps
Suite….

• Il faut maintenant continuer à mettre des nœuds


après Ensoleillé et Pluvieux car tous les exemples
ne donnent pas le même résultat.

• Déterminons donc pour Ensoleillé quel est le


meilleur attribut à tester en utilisant à nouveau le
gain.
• Cependant il n’est plus utile de tester le gain du
Temps étant donné qu’il vient d’être utilisé.
Resultat
Resultat

Il nous reste à continuer l’arbre du côté de Pluvieux. Voici les


gains pour les différents attributs (à nouveau, il n’est pas
nécessaire de tester Prévisions qui vient de l’être mais il faut
tester Humidité qui n’a pas été testé de ce côté-là de la branche) :
Resultat

 Le plus grand gain est à nouveau de 0.971 et est pour Vent.


 Il nous faut donc tester Vent et vu que le gain est égal à l’entropie
de SPluvieux, chaque nœud fils de Vent sera une étiquette.
Resultat
Problèmes

Il vaut mieux avoir des données exhaustives,


ensuite, la quantité de calcul est assez importante.

Cet algorithme n’applique pas une recherche totale,


mais permet de se fier aux probabilités des attributs
qui ont le plus de chance d’aiguiller le résultat.

Vous aimerez peut-être aussi