• Aucun résultat trouvé

Calcul d’un modèle de classification par les arbres de décision

Chapitre VI. Application : un outil d’aide à la décision pour un gestionnaire de vidéo-club

1. Calcul d’un modèle de classification par les arbres de décision

Un arbre de décision est une représentation graphique d'une procédure de classification. Les nœuds internes de l'arbre sont des tests sur les champs ou attributs, les feuilles sont les classes. Lorsque les tests sont binaires, le fils gauche correspond à une réponse positive au test et le fils droit à une réponse négative. Pour classer un enregistrement, il suffit de descendre dans l'arbre selon les réponses aux différents tests pour l'élément considéré. Voici un exemple d'arbre de décision illustrant notre procédure de classification.

Figure VI.30 : exemple d’arbre de décision

Nous utilisons la technique d’apprentissage pour le calcul de l’arbre de décision : en entrée, on dispose d’un échantillon de m enregistrements classés par des experts et l’algorithme d'apprentissage fournit en sortie un arbre de décision permettant de classer chacun des échantillons. Chaque nœud de l’arbre correspond à un test à effectuer sur l’ensemble à classer. Pour choisir le test, on utilise des fonctions qui mesurent le "degré de mélange" des différentes classes. Pour les problèmes à deux classes, il existe principalement deux méthodes d'apprentissage pour l’élaboration d’arbres de décision :

• CART de [Crawford et al., 1991] dans sa version ne considérant que des tests binaires ;

• C5, version la plus récente de l’algorithme ID3 développé par R. Quinlan [Quinlan, 1993].

Ces deux techniques bien connues sont décrites abondamment dans la littérature.

1.1. Modèles de classification et arbres décisionnels

Considérons un ensemble d’enregistrements. Chaque enregistrement a la même structure et est constitué des paires attribut/valeur. L’un de ces attributs est la classe de l’enregistrement. Le problème est de déterminer un arbre de décision qui sur la valeur des attributs autres que la classe prédise correctement la valeur de l’attribut classe. Généralement l’attribut classe prend

rôle ° Scénario Scénario :5% Acteur :5% Réalisation90% Absent Présent Scénario 5%: Acteur :90% Réalisation 5% Absent Présent acteur Absent Présent cinéma Absent Présent …….. ……… Effet Scénario 5%: Acteur :90% Réalisation 5% Absent Présent ………

Annexes seulement les valeurs (vrai, faux) ou quelque chose d’équivalent. Dans tous les cas, l’une de ses valeurs est significative d’une erreur.

Les idées de base derrière l’algorithme ID3 (C4.5 et C5.0 n’en sont que des extensions ; C4.5 est une extension de ID3 qui prend en compte les valeurs manquantes, les attributs à valeurs continues…) sont les suivantes :

• Dans un arbre de décision, chaque nœud correspond à un attribut différent de la classe et chaque arc à une valeur possible de cet attribut. Une feuille de l’arbre spécifie la valeur attendue de la classe pour les enregistrements décrits par le chemin menant de la racine à la feuille [c’est la définition de l’arbre de décision] ;

• Dans un arbre de décision, à chaque nœud devrait être associé l’attribut autre que la classe le plus informationnel parmi les attributs non encore considérés dans le chemin depuis la racine [ceci établit ce qu’est un bon arbre de décision] ;

• L’entropie pour R. Quinlan ou une autre fonction est utilisée pour mesurer la quantité d’information qu’apporte un nœud [ceci correspond à ce que l’on entend par bon. Cette notion est introduite en Théorie de l’information par Shannon].

1.2. Pouvoir de décision et quantité d’information

S’il y a n messages équiprobables alors la probabilité d’occurrence p de chacun d’eux est 1/n et l’information portée par le message est –log(p) = log(n) (dans ce qui suit tous les logarithmes sont en base 2). Ainsi, s’il y a 16 messages, alors log(16) = 4 et 4 bits seront nécessaires à l’identification de ce message.

En général, si l’on se donne une distribution de probabilité P = (p1, p2, …, pn) alors l’information portée par cette distribution, également appelée entropie P est :

= − = n i i i p p p I 1 log . ) ( VI-11

Par exemple, si P est (0.5, 0.5) alors la quantité d’information I(P) vaut 1 et si P est (0.67, 0.33) alors I(P) vaut 0.92, si P = (1, 0) alors I(P) vaut 0 : on peut noter que plus la distribution est uniforme et plus la quantité d’information est grande.

Si un ensemble T d’enregistrements est partitionné en classes disjointes C1, C2, …, Ck sur la base de la valeur de l’attribut classe, alors l’information nécessaire pour identifier la classe d’un élément de T est Info(T) = I(P), où P est la distribution de probabilité de la partition (C1, C2, …, Ck) : ) ,..., 2 , 1 (C T C T Ck T P= VI-12

Si l’on partitionne d’abord T sur la base de la valeur d’un attribut non-catégorique X en ensembles T1, T2, …, Tn alors l’information nécessaire à l’identification de la classe d’un élément de T devient la moyenne pondérée des quantités d’information I(Ti) nécessaires à l’identification de la classe d’un élément de Ti :

= = n i Ti I T Ti T X I 1 ) ( . ) , ( VI-13

On peut alors introduire la quantité Gain(X, T) définie comme : ) , ( ) ( ) , (X T I T I X T Gain = − VI-14

Annexes Cette quantité représente la différence entre l’information nécessaire à l’identification d’un élément de T et l’information nécessaire à l’identification d’un élément de T après que l’on a obtenu la valeur de l’attribut X, c’est-à-dire, le gain d’information dû à l’attribut X.

On peut alors ensuite utiliser cette information de gain d’information pour ranger les attributs et construire des arbres de décision où chaque nœud correspond à l’attribut avec le plus grand gain parmi les attributs encore non considérés dans le chemin depuis la racine.

Pour les attributs ayant des échelles continues on peut procéder de la façon suivante. Imaginons qu’un attribut Ci soit à valeurs continues. On examine les valeurs pour cet attribut sur l’ensemble d’apprentissage et on les range par ordre croissant A1, A2, …, Am. Alors pour chaque valeur Aj, j=1, 2, …, m, on partitionne l’enregistrement en une population qui prend des valeurs pour Ci inférieures ou égales à Aj et une population qui prend des valeurs supérieures à Aj. Pour chacune de ces partitions on calcule le gain, et on choisit la partition qui maximise le gain d’information.

1.3. Autre mesure du meilleur candidat

La méthode CART de [Crawford et al., 1991] utilise une autre fonction pour choisir le meilleur candidat à chaque étape du processus, qui mesure le "degré de mélange" des différentes classes. CART utilise la fonction de Gini : Gini I(p)

(

)

=4p 1- I(p)

(

)