Résumé
L'interface visuelle
L'interface visuelle est divisée en trois zones : une pour les données, une pour les arbres et la
dernière pour les informations textuelles complémentaires.
La visualisation des données se fait par une grille dans laquelle
chaque ligne représente un élément d'apprentissage ou de test et
chaque colonne une variable (y compris la classe) décrivant les
données.
La zone d'affichage des arbres est séparée en deux, la partie gauche
est réservée à l'arbre initial et la droite à l'arbre élagué. De cette
façon, la comparaison entre les deux est plus facile. Ces arbres sont
représentés avec les informations de base utiles à la compréhension
de la classification réalisée. Chaque noeud est identifié par un
numéro entre crochets. À chacun d'entre eux est associé l'effectif des
données correspondantes et leur répartition selon la classe. La
dernière information concerne la variable et la valeur utilisée pour
la création du noeud. Enfin, s'il s'agit d'une feuille, sa classe est
indiquée.
Des informations plus détaillées à propos des noeuds sont accessibles
interactivement. En cliquant sur un noeud plusieurs événements sont
déclenchés. Le premier concerne les données : chaque enregistrement de
la base d'apprentissage (et de la base de test s'il y en a une de
sélectionnée) se trouve sélectionné et surligné dans la grille. Ainsi,
l'utilisateur accède à tous les détails concernant la nature des
données associées à un noeud. De plus, d'autres renseignements
concernant ce noeud sont affichés dans la zone textuelle. La
combinaison de paires attribut/valeur menant au noeud est précisée
ainsi que l'ensemble des mesures de pureté et de qualité phi,
1-phi, IQN, IQA, IQR et CQA (uniquement pour les noeuds
internes avec ces trois dernières). Enfin, si une base de test est
activée, le détail du test au niveau du noeud est précisé : les
erreurs commises et la matrice de confusion en résultant.
Enfin, la zone textuelle ne se limite pas à afficher des informations
détaillées sur les noeuds. Un résumé des données et des paramètres
employés est inscrit lors de l'induction d'un arbre. Enfin, une
matrice de confusion sur les données d'apprentissage est affichée.
L'utilisation
L'interface d'utilisation d'UnDeT reste assez classique : une barre de
menus permet d'accéder aux différentes fonctions disponibles. Le menu
Donnees assure le chargement et la
sauvegarde des données (par l'intermédiaire d'une boite de dialogue)
et l'arrêt du programme. Le menu Arbre permet la construction et
l'élagage des arbres ainsi que les procédures d'apprentissage et test
et la validation croisée. Enfin, le menu Options permet de
sélectionner le critère de partition associé à la construction de
l'arbre, l'amortissement associé aux indices de qualités et enfin le
type d'élagage à appliquer. Les Préférences... offrent à
l'utilisateur la possibilité de choisir les paramètres utiles au
fonctionnement du programme.
Compléments d'information
Chargement des données
Deux fichiers de données sont nécessaires, un pour la description et
un autre contenant les exemples. Le format de ces fichiers est
identique à celui de C4.5 \cite{quinlan93}.
Pour charger les données, il faut passer par le menu Donnees/Ouvrir
qui déclenchera l'ouverture successive de deux boites de dialogue
permettant la sélection du fichier de description puis du fichier
d'exemples.
Les arbres
La construction, l'élagage et la sauvegarde de l'arbre se font par le
menu Arbre.
Deux sauvegardes sont possibles.
- Arbre/Sauver Arbre sauve dans un fichier la structure
de l'arbre initial qui peut alors être ouvert directement par
Arbre/Ouvrir Arbre, de même avec Arbre/Sauver
Arbre Elague pour l'arbre élagué s'il existe.
- Arbre/Sauver Trace sauve dans un fichier la trace
apparaissant dans la zone de texte.
Il est aussi possible de gérer un fichier de test ou faire de la
validation croisée. La sélection d'un fichier de test est demandée par
le menu Arbre/Tester, ce dernier est alors pris en compte
lors de chaque opération sur l'arbre et lors de l'affichage des
résultats et détails sur les noeuds dans la zone de texte.
Après avoir défini le nombre de partitions voulu dans les préférences,
la validation croisée est réalisée à partir des fichiers de
descriptions et d'exemple choisis en sélectionnant le menu
Arbre/CrossValidation. Le détail des résultats est
ensuite affiché dans la zone de texte de l'interface.
Les options
Les options permettent de sélectionner :
- le critère de sélection de la meilleure variable qui sera employée
lors la construction des arbres.
- La fonction d'amortissement utilisée pour évaluer la qualité.
- Le critère d'élagage (pour l'amélioration de l'arbre ou des feuilles).
Il est également important de régler divers paramètres avant la
construction des arbres en passant par la boite de dialogues
Options/Preferences.
- [NBEXEMPLESMIN(%) :] taille (en pourcentage de la base totale) à
partir de laquelle les noeuds ne seront plus divisés, la valeur par
défaut est 5%.
- [NB_CROSSVALIDATION :] nombre de partitions utilisées pour la
validation croisée (15 par défaut).
- [X_3/4 :] valeur de x_3/4 lorsque l'amortissement par seuil
est sélectionné.
- [X_1/2 :] valeur de x_1/2 pour l'amortissement.
- [REPERTOIRE_BASES :] répertoire où sont archivés les bases
d'exemples utilisées.
Quelques Détails Supplémentaires
Dans les options disponibles dans le menu Options/CritereElagage de nombreux
choix sont maintenant obsolète et il faut que je les élimine de l'interface.
Seul deux types d'élagage sont utiles ADIR et IQNElagage qui correspondent
respectivement à l'élagage optimisant la qualité de l'arbre et à l'élagage
optimisant la qualité des feuilles. Ces deux stratégies sont présentées dans la
thèse au chapitre 7.
L'amortissement sert à pénaliser les éléments trop profond de l'arbre.
Différentes fonctions d'amortissement sont disponibles. Personnellement je
préfère le seuillage qui permet un paramétrage plus souple. Les autres
(linéaire, inverse et exponentielle) n'ont besoin que d'un paramêtre x_1/2
qui indique la profondeur à laquelle la qualité est pénalisée de moitié.
Le Seuillage nécessite un deuxième parametre x_3/4 qui indique la
profondeur pour laquelle la qualité est amputée d'un quart. Ceci
implique donc x_3/4 > x_1/2. De plus le seuillage atteind sa valeur pivot
en x_1/2 donc X_1/4 la profondeur ou la qualité est pénalisée au 3/4 vaut
x_1/2 +(X_1/2-X_3/4).
Lorsque vous cliquez sur un noeud vous pouvez soit développer/fermer le
sous-arbre associé (il faut cliquer sur le symbole situé avant l'identifiant
du noeud. soit faire afficher dans la zone textuelle le détail du noeud :
son impureté Phi, sa pureté 1-Phi, la qualité du Noeud IQN.
De plus s'il s'agit d'un noeud interne, s'affichent : IQR l'indice de
qualité relatif du sous arbre, IQA l'indice de qualité absolu du sous-arbre
et CQA la composante du sous-arbre pour la qualité de l'arbre entier.
Enfin lorsque vous selectionnez ainsi un noeud, les données associées
à ce dernier se trouvent elles-aussi selectionnées ce qui permet
d'en observer facilement le détail.
Le taux d'erreur données après construction de l'arbre est le taux
d'erreur en apprentissage. Cependant il est possible d'utiliser des
fichiers de test par le menu "Arbre/Tester", il faut simplement indiquer un
fichier de données test au meme format que le fichier d'exemples
nécessaire à l'apprentissage.
Pour faire de la validation croisée, choisir le nombre de partitions
dans options/preference et charger le fichier de description et de
données par Arbre/CrossValidation. La synthèse des résultats
s'affiche dans la zone textuelle et sur la console. De plus, un boite
de dialogue demande un nom racine pour sauvegarder les échantillons
d'apprentissage et de test générés pour la validation croisée.
Le critère ORT disponible pour l'induction des arbres repose sur un
produit scalaire et ne traite que les données binaires et continues.
Il serait possible de le généraliser en faisant la recherche de tous
les regroupements possibles pour les descripteurs ayant plus de 2
modalités mais ce ne serait pas forcement explicite au niveau du
résultat et de plus ce serait lourd en calcul.
Last modified: Mon Apr 22 15:44:17 CEST 2002