Vous êtes sur la page 1sur 23

Abdessamad youssfi alaoui

abdessamad.youssfialaoui@gmail.com
 Origines: Ces méthodes ont pris essentiellement leur essor dans le
cadre des approches d'apprentissage automatique (machine learning)
en Intelligence Artificielle.

 But: d'identifier les classes auxquelles appartiennent des objets à


partir de certains traits descriptifs.
 Particularités (de l'I.A. en général): met l'accent sur la convivialité et
l'intelligibilité (ou la lisibilité) des résultats
 en classification supervisée: sortie de résultats sous la forme de règles
logiques de classification: "SI tel ensemble de conditions sur telles
variables est satisfait ALORS le cas appartient à telle classe".
 résultats plus facilement interprétables et donc exploitables
 communication plus aisée avec les spécialistes du domaine traité.
 Exemple d'algorithme:
 ID3 (Inductive Decision Tree) et son successeur C4.5, CART (Classification
and Regression Tree),
 CHAID (Chi-Square Automatic Interaction Detection),
 QUEST (Quick, Unbiased, Efficient Statistical Trees), cf. TP.
 Exemple d’application:
 L'aide au diagnostic médical : à partir de la liste des symptômes
d'un malade (sa description) la procédure de classification
indique sa maladie probable (sa classe).
 Accord d'un prêt bancaire : à partir de la situation d'un client (sa
description) la procédure de classification donne la réponse à
la demande de prêt : oui / non (sa classe).
Avantages et désavantages des arbres de décision
Prise en compte simultanée de variables qualitatives et quantitatives
(discrètes ou continues);
Pas d'hypothèse au sujet des données (modèle non-paramétrique);
 Non affecté par les problèmes d'échelles de mesure des variables
quantitatives (pas de combinaison arithmétique des variables) et détermine
des seuils discriminants pour ces dernières;
Sélection des variables les plus informatives (en tenant compte des
interactions);
Avantages et désavantages des arbres de décision
peu d'influence des données erronées, SAUF aux frontières interclasses;
algorithmes très rapides en phase de construction des arbres et lors de la
classification de nouveaux cas (1 seul chemin est parcouru);
 règles logiques de classification aisément interprétables
 extraction de connaissances explicites d'un ensemble de données (= "data
mining")
meilleure compréhension du problème étudié.
 Objets essentiels:
 La population: les individus qu’on veut classifier (par exemple les malades, les
clients,…).
 Les descriptions: ensemble des attributs sur lesquels on se base pour construire
l’arbre de décision (par exemple les symptômes ou les revenus, âge, statut marital
d'un client).
 Les classes: les classes des individus de la population.

Remarque:
la donnée d'une description avec la classe correspondante est un exemple.
Exemples:
(30 ans, marié(oui), 8000 DH, oui (classe))
(50 ans, marié(oui), 3000 DH, Non (classe))
 Fonctionnement:
Un arbre de décision prend un objet décrit par un ensemble d’attributs
et nous retourne une décision (valeur de sortie prédite), d’après l’exécution
d’une séquence des tests.
 L’objectif:
Construire un arbre de décision sert à classifier les objets en utilisant un
algorithme de classification et un ensembles d’exemples bien choisis.
Nœuds: Attributs
Branches: Valeurs prises par les Attributs
Feuilles: Classes

Nœud interne correspond à un test sur un attribut

Branche est la valeur possibles du test (de l’attribut)


Cet arbre peut être représenter comme suivant:

 Si le candidat a un emploi stable et possède une maison


donc il est prêter.

 Si le candidat n’a pas un emploi stable donc


n’est pas prêter.
Ensembles d’exemples à utiliser pour l’apprentissage d’arbre de décision

Les exemples positifs (Play tennis est Yes).


Les exemples négatifs (Play tennis est No).
Les arbres sont construits de façon descendante. Lorsqu'un test est
choisi, on divise l'ensemble d'apprentissage pour chacune des branches et
on réapplique récursivement l'algorithme.

Sur notre exemple on initialise avec l'arbre vide. L'échantillon


contient 14 éléments dont 9 ont pour classe oui et 5 ont pour classe non.
Algorithme d'apprentissage générique
Dans toutes les méthodes, on trouve les trois opérateurs suivants :
1. Décider si un nœud est terminal, c.à.d. décider si un nœud est une
feuille.
Par exemple : tous les exemples sont dans la même classe
2. Sélectionner un test à associer à un nœud.
Par exemple : aléatoirement, utiliser des critères,…
3. Affecter une classe à une feuille. On attribue
Algorithme d'apprentissage générique
Entrée : Ensembles d’attributs ; Ensembles d’Exemples
Début
Initialiser à l'arbre vide ; la racine est le nœud courant
Répéter
Décider si le nœud courant est terminal
Si le nœud est terminal alors
Affecter une classe
Sinon
Sélectionner un test et créer le sous arbre
FinSi
Passer au nœud suivant non exploré s'il en existe
Jusqu'à obtenir un arbre de décision
Fin
Algorithme ID3
4 cas à considérer pour le problème récursif
1. S’il y a des exemples positifs et négatifs, choisir le meilleur attribut pour
les différentier.
Comment choisir un attributs?
2. Si les exemples restant sont tous positifs ou tous négatifs on a terminé on
peut répondre oui ou non.
3. S’il ne reste pas d’exemples cela signifie qu’on n’a observé aucun exemple
de cette sorte on retourne une value par défaut calculée à partir de la
classification majoritaire au niveau du parent du nœud.
4. S’il reste pas d’attributs mais qu’il reste des exemples positifs et négatifs
c’est le cas où certaines données.
Algorithme ID3
Fonction DECISION-TREE-LEARNING(exemples, attributs, défaut) retourne un arbre de
décision
Si (exemples est vide) alors retourner défaut
Si non Si tous les exemples ont la même classification alors retourner la classification
Si non Si (attributs est vide) alors retourner MAJORITY-VALUE(exemples)
Si non
Meilleur ← CHOOSE-ATTRIBUT(attributs, exemples)
Arbre ← un nouvel arbre de décision avec test à la racine de meilleur
M ← MAJORITY-VALUE(exemples)
Pour chaque valeur vi de meilleur faire
Exemples-i ←{éléments de exemples avec meilleur=vi}
Sous arbre ← DECISION-TREE-LEARNING(exemples-i, attributs-meilleur, m)
Ajouter une branche à l’arbre avec annotation vi et sous arbre
Retourner arbre
Choix des attributs à tester
 Pour avoir un arbre final dont la profondeur est minimal, il faut bien sélectionner
les attributs.
 Si un attribut divise les exemples à un ensemble des exemples positifs ou négatifs,
cet attribut est parfait.
 L’attribut ciel n’est pas parfait mais assez satisfaisant. Cependant temps est moins
satisfaisant.
 Il faut donc avoir une méthode nous permet de déterminer ce qui est satisfaisant et
inutile.
Choix des attributs à tester
Pour choisir le bon attribut, il faut simplement choisir l’attribut qui rapporte le gain
le plus important.
Le gain d’information par rapport au test de l’attribut est:

𝐺𝑎𝑖𝑛 𝑝 = 𝐼 𝑝 − 𝑀𝑜𝑦𝑒𝑛𝑛𝑒 𝑝
Or
𝑛

𝑀𝑜𝑦𝑒𝑛𝑛𝑒 𝑝 = 𝑃𝑗 ∗ 𝐼(𝑝𝑗 )
𝑗=1
Où p désigne une position, et Pj est la proportion d'éléments de S à la position p qui
vont en position pj (qui satisfont la j ème branche du test).
Choix des attributs à tester
Pour calculer la fonction I, on peut utiliser l’une des fonctions suivantes:
Fonction Entropie: 𝑐

𝐸𝑛𝑡𝑟𝑜𝑝𝑖𝑒 𝑝 = − 𝑝(𝑘 𝑝) ∗ log 2 𝑝(𝑘 𝑝)


𝑘=1
Fonction de Gini: 𝑐
2
𝐺𝑖𝑛𝑖 𝑝 = 1 − 𝑝(𝑘 𝑝) = 2 ∗ 𝑝(𝑘 𝑝) ∗ 𝑝(𝑘′ 𝑝)
𝑘=1 𝑘>𝑘′
Choix des attributs à tester
Exemple: Fonction Entropie
5 9
I(Humidity)=I ,
14 14
5 5 9 9
= − log 2 − log 2
14 14 14 14

7 3 4 7 1 6
Moyenne(Humidity)= I , + I ,
14 7 7 14 7 7

𝐺𝑎𝑖𝑛 𝐻𝑢𝑚𝑖𝑑𝑖𝑡𝑦 = 𝐼 𝐻𝑢𝑚𝑖𝑑𝑖𝑡𝑦 − 𝑀𝑜𝑦𝑒𝑛𝑛𝑒 𝐻𝑢𝑚𝑖𝑑𝑖𝑡𝑦


Choix des attributs à tester
Exemple: Fonction de Gini

5 9 5 9
I(Humidity)=I , =2∗ ∗
14 14 14 14

7 3 4 7 1 6
Moyenne(Humidity)= I , + I ,
14 7 7 14 7 7

𝐺𝑎𝑖𝑛 𝐻𝑢𝑚𝑖𝑑𝑖𝑡𝑦 = 𝐼 𝐻𝑢𝑚𝑖𝑑𝑖𝑡𝑦 − 𝑀𝑜𝑦𝑒𝑛𝑛𝑒 𝐻𝑢𝑚𝑖𝑑𝑖𝑡𝑦

Vous aimerez peut-être aussi