IKBS est développé à
lInstitut de Recherche en Mathématique et Informatique Appliquée
de lUniversité de la Réunion
Auteur : David Grosser Dernières modifications : 6 août 1998 |
Table des matières
1 - Introduction
2 - Les bases dune méthode de gestion des connaissances descriptives
3 - Représentation des connaissances
3.1 - Lobservable : le modèle descriptif
3.1.1 Les composants
3.1.2 Les attributs
3.2 - LObservé : cas et bases de cas
4 - Classification et discrimination
4.1 - Classification
4.1.1 Gain dinformation et gain ratio
4.1.2 Extensions de lalgorithme de construction darbres de décision
4.2 - Identification
5 - Léditeur de modèle
5.1 - Édition dun modèle
5.1.1 Chargement d'un modèle |
5.1.7 Mise en forme de larbre 5.1.8 Choix dune racine 5.1.9 Afficher ou masquer la liste dattributs 5.1.10 Mode édition ou visualisation 5.1.11 Création dun objet 5.1.12 Création dun attribut 5.1.13 Création dune relation 5.1.14 Changer la forme des relations |
5.2 - Édition dun objet
5.2.1 Modifier le libellé de lobjet |
5.2.4 Modifier la liste des descripteurs 5.2.5 Modifier la liste des relations 5.2.6 Associer un URL à lobjet 5.2.7 Associer un commentaire à lobjet |
5.3 - Les éditeurs dattribut
5.3.1 Léditeur dattribut symbolique |
5.3.3 Léditeur dattribut
numérique 5.3.4 Léditeur dattribut de type texte |
6 - Léditeur de cas5.4 - Tableau récapitulatif des actions souris
6.1 - Utiliser une base de cas existante
6.1.1 Charger une base de cas |
6.1.3 Naviguer dans la base de cas 6.1.4 Options daffichage 6.1.5 Sélectionner un élément |
6.2 - Créer une nouvelle base de cas
6.2.1 Créer un nouveau cas |
6.2.4 Saisie dune valeur multiple 6.2.5 Filtre 6.2.6 Sauvegarder la base de cas |
7 - Léditeur darbre de décision
7.1 - Larbre de décision
7.1.1 Nud attribut
7.1.2 Nud composant
7.1.3 Nud de classe
7.2 - Léditeur de décision
7.3 - Consultation de larbre de décision
8 - Portabilité et exécution dIKBS
8.1 - Comment utiliser le système par Internet
8.2 - Comment utiliser le système en local
1 - Introduction
Ce document est un guide pratique dutilisation du système IKBS version 1.1 (Iterative Knowledge Base System). Il est destiné aux utilisateurs qui souhaitent rapidement utiliser des bases de connaissances existantes ou bien développer leur propre base de connaissances.
IKBS est une plate-forme logicielle générique de construction et de gestion de bases de connaissances. Un système de gestion de base de connaissances est une application qui permet de stocker de manière structurée des informations disponibles dans un domaine donné (par exemple en biologie moléculaire, en systématique des coraux, etc). En tant que reflet dune réalité, elle doit être robuste (bonne tolérance aux erreurs) et consistante, ce qui est une condition nécessaire pour utiliser en toute confiance son contenu. Il propose un système de représentation des connaissances descriptives dans un formalisme objet. Les connaissances de fond, appelées connaissances observables, sont représentées sous la forme darbres de descriptions, appelés modèles descriptifs. Les connaissances observées, appelées cas, sont représentées par des arbres possédant la même structure que le modèle et sont stockées dans des bases de descriptions, appelées bases de cas. A partir de ces données structurées, IKBS peut calculer des règles de classification représentées par des arbres de décision et générer un questionnaire en vue de lidentification de nouvelles descriptions.
Le processus de construction dune base de connaissances nest ni simple, ni immédiat. Il est très difficile détablir, dès le début du processus de création, la meilleure représentation de la réalité du fait de la complexité de lacte de modélisation. Elle requiert un processus par essais erreurs qui nécessite des remises en cause dune partie du contenu de la base, parfois sur plusieurs niveaux de représentation. La construction est donc itérative : la connaissance sajoute au fur et à mesure de son obtention (des résultats dobservations, dexpériences, de calculs et de nouvelles formalisations). Le problème de lincohérence et de linconsistance de la base de connaissances apparaît dans divers contextes : lorsque la connaissance du domaine évolue ou lorsque plusieurs acteurs, par exemple des experts du domaine, cherchent à mettre au point de manière coopérative une base de connaissances consensuelle.
Dans ce document sont exposés les principes méthodologiques sous jacents à la construction dune base de connaissances robuste [2], les logiques de représentation utilisées [3] ainsi que les bases du système de classification et didentification utilisée [4]. Ensuite, les fonctions dédition de modèle descriptif [5], de bases de cas [6] de construction et de consultation de larbre de décision [7] sont détaillées. Enfin, la mise en uvre pratique du système est détaillée pour une utilisation dIKBS via le réseau Internet [8]. Pour utiliser rapidement IKBS, passer directement à [5].
Mots-clefs : bases de connaissances, connaissances structurées, classification, identification, arbre de décision, Internet.
2 - Les bases dune méthode de gestion des connaissances descriptives
Les processus de construction et de gestion de base de connaissances dans des domaines évolutifs, lorsque la théorie du domaine nest pas encore achevée, nécessitent dadopter une démarche expérimentale. Cest le cas de nombreux domaines des sciences de la vie où les experts appliquent une méthode inductive fondée sur lobservation des faits, lénoncé dhypothèses et la pratique de tests expérimentaux pour mettre ces hypothèses à lépreuve. Nous avons développé une méthodologie de gestion de bases de connaissances qui suit un développement incrémental et itérativf qui reproduit ces trois étapes de la manière suivante :
- Acquisition des connaissances : définition dun modèle descriptif du domaine étudié puis description des cas en utilisant un questionnaire comme guide dobservation,
- Traitement des connaissances : génération darbres de décision par apprentissage inductif puis identification de nouvelles observations en utilisant le raisonnement à partir de cas,
- Validation des connaissances et itération : vérification de la cohérence des résultats et des descriptions par rapport au modèle de base et éventuellement remise en cause de la base de connaissances.
Deux types de connaissances sont distingués : les informations contextuelles et le savoir-faire de lexpert. La base de connaissances que nous construisons est constituée par un noyau dexpertise en relation avec un ensemble dinformations de différentes natures relatives au domaine (Fig.1).
Fig.1. Le processus itératif de transfert dexpertise
3 - Représentation des connaissances
Le modèle de représentation retenu à lheure actuelle est celui dune représentation objet-attribut-valeur. Il peut être qualifié de représentation à objet, tel que défini dans [MAS&al, 89] et [CHO, 96], dans la mesure où la notion délément descriptif peut être associé à la notion de classe des modèles à objets (un élément descriptif peut être décomposé et spécialisé) et les descriptions (appelées cas) peuvent être vues comme les instances dun modèle descriptif. Lobjectif majeur de ce modèle de représentation est de permettre une meilleure lisibilité que les représentations de type logique, une bonne visualisation graphique de la description des objets et enfin de nombreuses facilités de manipulation de la structure de la connaissance.
Ce modèle est également très proche des représentations utilisées dans le formalisme des objets symboliques tels que définit dans [DID, 1998].
Nous exposerons les principes conceptuels de la modélisation des connaissances descriptives, ainsi que certains des aspects pragmatiques et informatiques retenus au travers dune implémentation dans un langage orienté objet (Java). En particulier, les hiérarchies de classes permettant de représenter un modèle descriptifs et une base de cas seront exposées.
Au niveau pragmatique, trois niveaux de représentations sont distinguées :
- Les connaissances de base ou connaissances du domaine (lobservable), représentées par le modèle descriptif du domaine.
- Les connaissances instanciées (lobservé), représentées par les cas ou instances du modèle descriptif.
- Les connaissances dérivées, produits des algorithmes dapprentissage : arbres de décision, treillis de généralisation, règles de cohérences, etc.
Le niveau conceptuel (sémantique) sous-jacent à ces trois niveaux de représentation à été exposé dans [LE R 96] où sont exposées des "logiques descriptives" en sciences de la vie. Celles-ci définissent un cadre rigoureux permettant de modéliser un domaine, de façon naturelle, cest-à-dire très proche de la pratique des experts.
3.1 - Lobservable : le modèle descriptif
Également appelé Schéma ou arbre de description, un modèle descriptif [fig. 2] désigne une représentation abstraite, organisée (structurée sous forme dun arbre), dun domaine particulier. On peut considérer le modèle descriptif comme le plan dorganisation des descriptions portant sur lensemble des individus couverts par le domaine. La mise au point dun modèle descriptif (arbre de description) est essentiellement un travail dexpert du domaine. Sous sa forme la plus simple, le modèle descriptif est un arbre dont chaque nud est un objet du domaine décrit par un ensemble dattributs et chaque relation, un lien de composition symbolisant la dépendance mutuelle des objets. Un modèle descriptif est donc composé déléments descriptifs, qui peuvent être soient des composants (également appelés objets) soient des attributs (ou caractères) et de relations entre ces éléments. Notons que la mise au point dun modèle descriptif (arbre de description) est essentiellement un travail dexpert du domaine.
Fig.2 : Exemple darbre de description des Pocilloporidae (famille de coraux)
3.1.1 Les composants
Chaque objet de lunivers dobservation que lexpert souhaite faire apparaître peut être représenté par un composant du modèle descriptif. Cet objet peut être quelque chose de réel, concret et tangible, une partie bien identifié de lunivers dobservation. Dans une application ou lon souhaiterait représenter les êtres humains, ce pourrait être la tête ou les bras par exemple. Cet objet peut également être un point de vue du domaine dobservation : la personne décrite vue sous le point de vue sociologique ou génétique par exemple.
Les objets sont organisés entre eux par des liens de dépendances. Ces liens ne correspondent pas à une relation dordre, ni à une relation hiérarchique, mais à une relation de composition. Lobjet de plus bas niveau dépend de lobjet de plus haut niveau, en particulier, du point de vue de son existence. Un objet est qualifié par un autre type dobjets : les attributs. Ceux-ci portent de linformation et viennent préciser les états (ou valeurs) possibles que lobjet peut adopter. Les objets ont par ailleurs 9 états possibles donnés par la combinaison de 3 statuts :
- Labsence possible de lobjet : vrai si lobjet peut ne pas exister pour une description particulière, faux si lobjet est nécessairement présent.
- La fictivité : vrai si lobjet est un point de vue, faux sil correspond à une entité concrète, observable.
- La multiplicité : vrai si lobjet représente une collection dobjets. Un ensemble de personnes ou une colonie de coraux par exemple.
La racine de larbre de description est appelée Schéma de larbre de description. Elle joue un rôle particulier en ce sens quelle est unique et que les autres objets nexistent que pour détailler, raffiner, expliciter cette racine.
3.1.2 Les attributs
La complexité des observations issues du monde réel implique la nécessité de disposer de différents types dattributs. On voudra par exemple quun attribut prenne des valeurs simples ou bien multi-valuées. Les valeurs observées pourront être inconnues, absentes ou bien impossibles (on dit aussi inapplicables) selon le contexte dobservation.
Appelé également descripteur dans la littérature, chaque attribut est défini par un des quatre types de base : symbolique, taxinomique, numérique et textuel, ainsi que par un domaine de définition.
Un attribut symbolique est défini par un ensemble de symboles représentant les valeurs quun attribut est susceptible de prendre. Ce domaine na pas de structure particulière. Dès lors que ces valeurs sont liées entre elles par des relations dordre, lattribut taxonomique est mieux adapté.
Selon que lon sintéresse à une grandeur physique : unitaire, spatiale ou temporelle, lattribut le plus adapté est de type numérique. Un attribut numérique peut adapter des échelles. Il autorise de restreindre par des bornes inférieures et supérieures, lespace des valeurs.
Un attribut taxonomique établi une hiérarchie de valeurs, des valeurs les plus général (plus haut niveau) aux plus précis (plus bas niveau). Le domaine de valeur dun attribut Taxonomique est un arbre dont la racine est une pseudo valeur étiquetée par le nom de lattribut et les composants, des objets taxonomique. Les objets taxonomiques sont donc liés entre eux, par des relations dordre total ou partiel. Tout objet taxonomique peut être comparé à un un autre objet taxonomique et capable de déterminer lobjet le plus spécifique commun. Cette propriété est utilisée notamment lors de la construction du graphe didentification.
Par exemple, lobjet le plus spécifique commun des deux objets taxonomiques : aigue et arrondis est lobjet grêle.
Fig.3 : Exemple de hiérarchie taxonomique
Le quatrième type dattribut défini dans IKBS est lattribut texte. Cet attribut ne spécifie pas de contrainte particulière sur les valeurs. Son rôle est de représenter une information libre, sans contraintes particulières.
3.2 - LObservé : cas et bases de cas
Un cas correspond à la description dune observation particulière. Ce peut être un échantillon, un spécimen observé, un individu, etc. Cest une structure arborescente contenant toutes les valeurs de cette observation. Lidée majeure est quune Observation correspond à la représentation concrète, réelle dun modèle, dans un contexte particulier spécifié par le modèle. En termes de conception orientée objet, on parlerait dinstanciation : un cas est une instance du modèle, dans le même sens quun objet est instance dune classe. De même, une valeur est instance dun attribut, une base dobservation est instance dun schéma. En effet, les valeurs, les cas et les bases de cas ont toutes été créés à laide du modèle et nexistent que dans le contexte de celui-ci. Donc, pas de base de cas sans modèle correspondant.
Une base de cas est une instance dun schéma, racine de larbre de description. Cest donc une valeur particulière, structurée et typée par un objet de type schéma. Elle référence un ensemble de cas décrits.
Fig.4 : Exemple dune partie de description structurée
La figure 4 présente une partie dune description dun spécimen de damicornis acuta du genre pocillopora.. Le composant identification décrit léchantillon du point de vue des caractères utiles à son identification : sa classe (nom despèce), la référence (Lamarck 1816) et laffinité (lespèce la plus proche) de léchantillon, inconnue pour ce cas. Le composant contexte décrit différents paramètres connexes tels que la profondeur de récolte de léchantillon, ici 2 mètres ou bien la personne qui a décrit le spécimen, appelée descripteur. Enfin, le sous-arbre de racine description correspond à la description proprement dite de léchantillon. Notez que lobjet calices des verrues est absent ce qui induit labsence des composants qui lui sont liés (septes, muraille, columelle, etc.), afin de conserver une cohérence logique de la description.
4 - Classification et discrimination
4.1 - Classification
Pour la classification, une procédure par arbre de décision est utilisée.
Un arbre de décision, également appelé arbre de segmentation, est un graphe acyclique orienté. Il peut être visualisé sous la forme dun arbre (voir Fig.5) en dupliquant chaque nud terminal en autant de fois quil est la cible dune relation. Ses instances terminales représentent les classes du problème. Les nuds internes du graphe correspondent à des descripteurs qui sont appliqués aux cas durant le processus de construction de larbre. Les arcs du graphe sont valués par les différentes valeurs que peuvent prendre les descripteurs, en élaguant les branches vides. La construction dun arbre de décision se fonde sur loptimisation dun critère numérique local permettant de séparer récursivement un ensemble de cas en sous-ensembles généralement disjoints. Lintérêt de ce type de structure comme le souligne [Fayyad, 96] est quelle peut être adaptée à tout type de données et peut facilement être interprété. Cest une des techniques dapprentissage les plus étudiée depuis les années 80.
À partir de la donnée dune base de cas et dun modèle descriptif, lalgorithme utilisé par IKBS propose une extension de lalgorithme classique ID3 de création darbres de décision [Quinlan 83]. Il est descendant, et procède pas à pas sans retour arrière. La méthode de création du graphe consiste à sélectionner pas à pas le meilleur descripteur selon un critère numérique local (ce critère peut être du gain dinformation ou du type gain ratio [SHA 49], [Qui 86]), pour former un nud du graphe. Une fois la racine identifiée, lespace de description est subdivisé en sous-régions généralement disjointes, les segments ou nud de décision. Un segment est donc une région de lespace de description. Les nuds de larbre représentent les différents segments obtenus par dichotomies successives et les arêtes la relation de filiation associée aux partitions. A chaque étape, la subdivision dun segment est réalisée par une fonction binaire appelée question [voir CAR&al 1997]. La construction en profondeur est interrompue quand un certain critère darrêt est vérifié. Ce critère darrêt peut-être définit par un seuil limite préalablement fixé, par exemple un nombre minimal de cas correspondant à un nud donné, ou bien lorsque le gain dinformation de tout descripteur restant est nul.
4.1.1 Gain dinformation et gain ratio
IKBS propose deux critères numériques de sélection des attributs, le gain dinformation et le gain ratio. Sans entrer dans les détails de calcul du gain dinformation, disons simplement que le critère du gain dinformation permet de quantifier la capacité dun descripteur à séparer un ensemble de cas en n partition. Cest donc une mesure du pouvoir séparateur des descripteurs. Cette mesure a été élaborée par Quinlan (1986) à partir des travaux de Shannon (1949). Le gain ratio est une amélioration du gain dinformation classique qui permet de minimiser le biais dapprentissage induit par les attributs possédant beaucoup de valeurs possibles. En effet, lorsquun attribut possède un domaine de valeur important, le partitionnement résultant est également important, ce qui provoque un gain dinformation élevé pour ce descripteur qui est alors choisi comme attribut le plus discriminant. Les attributs qui ont un nombre élevé de valeurs possibles ne sont pas nécessairement ceux qui offrent le meilleur pouvoir séparateur. Il est donc souvent utile dutiliser une mesure normalisatrice qui rectifie ce biais, comme la mesure du gain ratio.
Le système dapprentissage dIKBS développe certaines des extensions proposées par Quinlan [C4.5] concernant les types de descripteurs pouvant intervenir dans le processus inductif. Traditionnellement, deux types dattributs de base sont distingués : les attributs continus (de type numérique) et les attributs discrets (de type symbolique).
4.1.2 Extensions de lalgorithme de construction darbres de décision
Pour les attributs dont le domaine de définition est structuré par une relation dordre, par exemple les attributs taxonomiques, une extension de linduction sur les attributs discrets est proposée. La méthode consiste, lorsquun descripteur taxinomique est sélectionné, à créer un ensemble de partitions correspondant au premier niveau de la hiérarchie de valeur de la taxonomie. Chaque cas est affecté à la partition correspondante, de la même manière que les attributs symboliques. Ensuite, dans chacune des partitions est créé temporairement un nouveau descripteur potentiel, de type taxonomique qui possède comme domaine de valeurs, la hiérarchie de deuxième niveau de la hiérarchie initiale. Cette nouvelle hiérarchie est donc le sous-arbre de la hiérarchie initiale, dont la racine correspond à la valeur affectée à la partition. Cet attribut temporaire pourra à nouveau être choisi et discriminera selon un niveau plus précis de la taxonomie.
Lorsque les attributs sont valués par des disjonctions conjonctives de valeurs (a ET b OU C) qui permettent dexprimer limprécision de variation, lobservation ainsi qualifiée est répartie dans toutes les partitions correspondant à chaque forme disjonctive contenue dans lexpression (a ET b, C). Lorsquune valeur est de type inconnu, lobservation correspondante est répartie dans toutes les branches. Dans les deux cas, les partitions créées ne sont plus disjointes, ce qui a pour effet de diminuer le pouvoir discriminant du descripteur. Un descripteur qui est mal renseigné dans la plupart des cas nintervient à un nud de décision que pour séparer le faible pourcentage de cas qui ont renseigné ce descripteur, donc tardivement. Pour un attribut symbolique, lorsque la forme conjonctive est utilisée fréquemment pour un descripteur particulier, lensemble des partitions est augmentée de lensemble des formes disjonctives possibles créées à partir des combinaisons des valeurs de base de lattribut. Cela a pour effet daugmenter de manière importante le nombre de partitions. Le nombre de combinaisons étant exponentiel par rapport à la taille du domaine de base. Une manière déviter de calculer toutes les combinaisons conjonctives de tout attribut symbolique (on ne connaît pas à priori les disjonctions qui napparaissent dans aucun cas) consiste à parcourir lensemble des cas au préalable, de manière à recenser les occurrences de formes conjonctives. Dans la pratique, il est préférable dajouter dynamiquement les branches correspondant formes conjonctives rencontrés, lors du premier parcours de lensemble des valeurs, nécessaire pour calculer le gain dinformation.
Jusque-là, linformation que constituent les propriétés structurelles du modèle descriptif ne sont pas exploitées dans la procédure de discrimination. Une manière dutiliser une partie de la connaissance structurelle consiste à établir au préalable, pour chaque objet qui peut être absents (voir III, cest une propriété des composants) et de générer un attribut de type symbolique de domaine de valeur {présent, absent} pour cet objet particulier [voir Joclad 97]. Les descripteurs (objets et attributs) de cet objet sont considérés à ce stade, non éligibles par la procédure de discrimination, étant donné que lobjet quils renseignent un objet possiblement non décrit. Ils seront éligibles une fois la présence de lobjet assurée, cest-à-dire une fois lattribut correspondant à la présence de lobjet choisit, et uniquement dans la partition où lobjet est présent.
4.2 - Identification
Lun des intérêts de cette méthode est que les règles daffectation, appelées diagnoses en biologie, sont relativement simples et rapides à calculer. Laffectation dun élément de lespace dobservation se fait par parcours en profondeur de larbre de segmentation. Le cheminement suivi est déterminé par les réponses rencontrées. La classe daffectation de lélément est létiquette du segment terminal atteint en fin de parcours. La réunion des segments terminaux étiquetés par une même classe forme dans lespace dobservation la région daffectation de cette classe. Soit lexemple illustré figure 4. Il présente une règle daffectation empirique assimilable à un diagnostique portée sur lappartenance dun échantillon de corail à une espèce de la famille des Pocilloporidae (une des famille principale de coraux). Il a été construit à partir dune base dexemples de cinquante cas décrits chacun par plus de 100 attributs. La règle daffectation peut se définir sous la forme de règles de production. Par exemple, la classe meandrina peut être caractériser par les règles suivantes :
Règle 1 : [verrues[parties-apicales]="oui"] ET [sillon-inter-calicinal="présent"] ET [diamètre[parties-apicales] > 21.0 mm]
Règle 2 : [diamètre[parties-apicales]<= 21.0] ET [taille-maximale[colonie]<=9.0 mm]
Cette écriture de la règle daffectation montre le pouvoir explicatif de cette approche. Les règles engendrées sont facilement interprétables car elles sont écrites en utilisant le langage de description que lexpert du domaine a défini pour décrire ces données. Ainsi, les fonctions de décisions obtenues par ce type de méthode, dite de segmentation ont deux représentations principales : lune sous-forme dun arbre de décision, lautre sous forme de règles de production.
Noter quaucune heuristique minimisant la taille de larbre na été choisit pour la construction de cet exemple (fig.5). Cest un des aspects de notre méthodologie descriptive que de privilégier la qualité des descriptions (grand nombre de descripteurs) et dutiliser toute la richesse de celle-ci, lors de la construction de larbre de décision. Il est cependant possible de modifier les critères darrêt, ainsi que délaguer certaines branches de larbre, de manière à réduire la profondeur de larbre. En effet, cette démarche peut conduire à générer des arborescences trop spécifiques des exemples. Elle donne des arbres très ramifiés qui deviennent rapidement difficiles à appréhender, comme souligné dans [CAR 97], qui ont des performances anormalement optimistes sur les exemples. Il peut alors être intéressant de procéder à une phase délagage de larbre dans le but de trouver larbre présentant le meilleur compromis taille performance. La qualité des descriptions est également un critère à prendre en compte dans le choix du degré délagage.
Une autre approche proposée par IKBS utilise une information (une méta connaissance) portant sur la qualité des descripteurs du modèle descriptif. Lutilisateur a accès à cette information, mais peut choisir de laisser le système gérer lui-même ce paramètre. Celui-ci peut sexprimer sous la forme dun paramètre numérique ou bien sous la forme dun treillis de nuance, exprimant lincertitude associée à ce descripteur. Lutilisation de techniques dapprentissage par renforcement pour équilibrer les paramètres des différents descripteurs est envisageable. Une combinaison du degré dincertitude et dun critère de gain dinformation permet dobtenir un arbre de décision correspondant de manière plus pertinente à la réalité que lon cherche à caractériser, car il tient compte.
Loriginalité de la procédure didentification développée dans IKBS consiste à référencer à chaque segment lensemble de linformation ayant permis sa construction. La liste des cas vérifiant lensemble des critères préalablement visités depuis la racine, lensemble des critères potentiellement éligible, ainsi que leur gain dinformation. Il est alors possible monter quels ont été les critères de sélection et surtout pourquoi ils ont été choisis. Le pouvoir explicatif de la méthode se trouve augmenté de la possibilité de trouver à chaque nud du graphe didentification la répartition des cas dans les différentes branches. Référencer la liste des attributs éligibles à chaque noeud permet également de sélectionner un autre descripteur, et donc de reconstruire manuellement une partie de larbre selon le nouveau critère choisi. Cette fonction est notamment utilisée lorsque lutilisateur répond inconnu à une question particulière. La procédure didentification choisie alors le deuxième descripteur le plus discriminant dans la liste des attributs éligibles et génère le nouveau sous arbre en conséquence.
Fig.5 : Arbre de décision (partiel) calculé à partir dune quinzaine de cas
1 : Attribut possédant le meilleur pouvoir discriminant,
2 : Discrimination sur la présence dun objet,
3 : Partitionnement sur un attribut multi-valué,
4 : Partitionnement sur un attribut numérique,
5 : Une feuille de larbre de décision correspond à une classe
5 - Léditeur de modèle
Léditeur de modèle est la fenêtre principale dIKBS. Cette interface permet de visualiser un modèle descriptif (appelé également arbre de description), déditer les différents composants de cet arbre et de créer de nouveaux composants.
Fig.6 : Léditeur de modèle
1 - visualiser l'illustration associée à l'attribut sélectionné
2 - charger un modèle descriptif
3 - sauver le modèle courant
4 - charger un modèle via Internet
5 - agrandir/réduire le modèle6 - ouvrir la fenêtre de zoom
7 - mise en forme de l'arbre
8 - afficher/masquer les attributs
9 - mode édition ou visualisation
10 - liste des éléments du modèleLes options dédition et de visualisation disponibles sont accessibles de trois manières différentes : par des actions de la souris éventuellement associées à des modificateurs (touches contrôle, majuscule, option ou commande), par lintermédiaire de la barre de menu ou par lintermédiaire des boutons intégrés à linterface.
5.1 - Édition dun modèle
La figure 6 présente une vue de léditeur de modèle et les boutons daction accessibles directement. La liste des actions possibles par ce biais est présentée ci-dessous :
5.1.1 Chargement d'un modèle
Il existe plusieurs moyens dacquérir un modèle descriptif, selon que le fichier contenant la description textuelle du modèle que lon souhaite charger se trouve sur un disque local ou sur un serveur accessible par le réseau au moyen dune adresse Internet, appelée URL.
Pour charger un fichier local, il faut actionner le menu fichier (voir fig.7a) et sélectionner litem Charger modèle local.. La fenêtre standard de chargement de fichier apparaît (fig.7b). Choisissez alors le fichier que vous souhaiter charger. Ce fichier est un fichier textuel (ASCII) que vous pouvez éditer et éventuellement modifier sous nimporte quel éditeur de texte. Ceci est cependant déconseillé, il est préférable dutiliser léditeur de modèle pour effectuer les modifications à apporter au modèle et sauver le nouveau modèle. Il est également possible douvrir la fenêtre de fichier par lintermédiaire du bouton fig.6 [2].
Fig.7a : Le menu daccès aux fichiers
Fig.7b : interface choix de fichiers
Pour charger un modèle se trouvant sur un serveur distant, il faut sélectionner litem Charger modèle distant du menu fichier. La fenêtre de chargement dun modèle distant apparaît (voir fig.7c) et propose une liste de modèles accessibles. Vous pouvez entrer une adresse non présente dans la liste si vous connaissez le nom complet daccès au fichier (protocole http).
Fig.7c : Fenêtre de chargement dun modèle distant
Il est également possible de charger des modèles prédéfinis (programmés dans lapplication) par lintermédiaire des menus Charger modèle Hyalonema (famille déponges marines), etc. Le résultat de lopération est identique à lopération précédente. Le temps de chargement est beaucoup plus rapide, mais il nest pas possible de modifier ces modèles.
5.1.2 Sauvegarde du modèle
Il suffit de choisir le menu Sauver modèle du menu fichier, ou bien de cliquer sur le bouton fig.6 [3] ce qui a pour effet douvrir la fenêtre standard de sauvegarde. Un modèle ne peut être sauvegardé directement sur un serveur distant, mais uniquement en local.
5.1.3 Effacer le modèle courant
CTRL+clic dans la fenêtre de léditeur permet de faire apparaître le menu contextuel de léditeur fig.8a. Litem tout effacer détruit tout élément du modèle courant. Une autre manière consiste à invoquer le menu contextuel des composants (contrôle + clic sur un composant) sur lobjet racine et dactiver litem Effacer sous arbre. La même action effectuée sur un autre composant a pour effet deffacer le sous-arbre de racine le nud sélectionné.
fig. 8a: menu contextuel de léditeur
fig.8b : menu contextuel des composants
fig.8c : menu contextuel des attributs
5.1.4 Sélection dun élément
Les éléments, objets ou attributs du modèle descriptif peuvent être sélectionnés de deux manières. Soit par un clic souris (clic gauche sur Sun et PC, simple clic sur Mac), soir par lintermédiaire du menu déroulant [voir fig.6 [10]), en choisissant dans la liste lélément que lon souhaite sélectionner.
5.1.5 Agrandir et réduire la taille du modèle
Il est possible dagrandir ou de réduire la taille du modèle soit par lintermédiaire du menu Affichage en sélectionnant les items Zoom- et Zoom, soit par lintermédiaire des boutons Fig.6 [5].
5.1.6 Navigation dans le modèle et fenêtre de zoom
Lorsque le modèle dépasse largement la taille de la fenêtre et de lécran (grand nom dobjets et dattributs), il devient nécessaire de pouvoir sélectionner la zone que lon souhaite visualiser. Il existe pour cela plusieurs méthodes.
La première consiste à cliquer dans sur le fond de larbre ailleurs que sur un objet ou un attribut et de déplacer la souris tout en maintenant le clic, ce qui a pour effet de déplacer larbre tout entier, et de relâcher le bouton souris lorsque la position désirée est atteinte. La vitesse daffichage du défilement peut être réglé au moyen de la fenêtre de réglage des préférences du menu affichage. Lorsque le mode daffichage est positionné sur rapide, le défilement est très fluide, mais le mécanisme daffichage utilise beaucoup de mémoire, ce qui peut occasionner des problèmes lorsque larbre à afficher est très grand. Le mode daffichage moyen offre une bonne alternative entre la vitesse daffichage et lespace mémoire occupé, il est préconisé pour la navigation dans des arbres de grande taille.
La deuxième méthode consiste à choisir dans le menu déroulant, voir fig. 4 [10] le composant ou attribut que lon souhaite visualiser, ce qui a pour effet de placer cet élément au centre de lécran.
5.1.7 Mise en forme de larbre
Larbre de description peut être formaté de quatre manières différentes : Arbre simple, arbre équilibré horizontal, arbre équilibré vertical ou graphe. La méthode arbre simple permet de formater larbre de sorte quil ne dépasse pas la taille de la fenêtre. Cette méthode peut être satisfaisant lorsque larbre nest pas trop grand. Les méthodes arbre équilibré horizontal et verticales sont les plus adaptées dès lors que larbre est supérieur à la taille de la fenêtre. La méthode graphe est bien adaptée pour représenter des graphes cycliques orientés. Ces quatre méthodes peuvent êtres sélectionnés par les boutons formatage fig. 6 [7], ou bien par le menu fichier. Noter que ces méthodes ne peuvent sappliquer que lorsquun objet particulier a été affecté en temps que racine de larbre descriptif.
5.1.8 Choix dune racine
La plupart des fonctions dIKBS ne fonctionnent que lorsquune racine (un composant particulier de larbre a été sélectionné. Dans ce dessein, deux méthodes sont possibles : clic sur lobjet tout en maintenant la touche option, clic avec le bouton central pour les souris a trois boutons, ou bien en activant le menu contextuel sur un objet (contrôle+clic) en choisissant litem Affecter racine. Une fois la racine choisie, le composant racine change de couleur.
5.1.9 Afficher ou masquer la liste dattributs
Il est possible dafficher ou de masquer la liste des attributs de tous les composants en une action. Ceci peut être réalisé soit par clic sur le bouton fig.6 [8] ou bien par litem afficher attributs du sous-menu attributs du menu affichage.
Fig.10 : Le menu affichage
5.1.10 Mode édition ou visualisation
Par défaut, léditeur de modèle se trouve en mode visualisation. Ce mode implique quaucune modification du modèle courant nest possible. Il nest pas non plus possible de créer un nouveau modèle. Ceci permet de ne pas faire de " fausses manuvres " et deffacer une partie de linformation par mégarde. En mode édition, toute action de modification, création ou suppression est possible. Pour passer du mode visualisation au mode édition vice-versa, deux manières : soit par clic sur le bouton fig. 6 [9], soit par action de litem mode édition du menu Edition.
5.1.11 Création dun objet
La création dun nouveau composant peut seffectuer à laide du menu contextuel de léditeur par litem Créer objet. Ceci est également possible par un simple clic sur le fond de la fenêtre de léditeur en maintenant la touche option (pomme sur Mac), ou bien à laide du bouton droit de la souris pour les souris à trois boutons. Il est nécessaire déditer lobjet par la suite pour renseigner les différents champs du composant nouvellement créé. Cette option nest disponible quen mode édition.
Un nom de libellé et didentificateur sont arbitrairement affectés au composant nouvellement créé. Il faut éditer lobjet en mode édition pour pouvoir les modifier.
5.1.12 Création dun attribut
Cette fonction nest à lheure actuelle disponible que par lintermédiaire de léditeur dobjet.
5.1.13 Création dune relation
Créer une relation de dépendance entre objet seffectue à la souris en cliquant sur le composant origine de la relation tout en maintenant la touche option (ou par simple clic droit sur les souris à trois boutons) et en relâchant le bouton souris sur le composant destination. Une relation de dépendance entre le composant destination et le composant source sera créée. Noter que lordre dans le liste des relations définit également lordre daffichage des composants de larbre. Pour modifier cet ordre daffichage, il faut effacer les liens et les créer à nouveau dans lordre souhaité.
5.1.14 Changer la forme des relations
Les relations peuvent être visualisées de plusieurs manières : avec ou sans flèches de destination, sous forme rectiligne ou ligne brisée ou horizontales ou verticales. Ces paramètres peuvent être modifiées par lintermédiaire du menu affichage des relations.
5.2 - Édition dun objet
Lédition dun objet seffectue via le menu contextuel des objets en activant litem Editer objet. Ceci fait apparaître la fenêtre dédition dobjet (voir fig.11). Il faut nécessairement que le mode édition soit activé pour effectuer une modification de lobjet, sinon aucun paramètre ne pourra être modifié.
Fig.11 : Exemple dun éditeur dobjet
1 - nom de l'objet (libellé)
2 - nom d'identificateur de l'objet (unique)
3 - statut de l'objet
4 - liste des attributs
5 - actions sur les attributs6 - liste des composants liés à l'objet
7 - actions sur les composants
8 - adresse internet de la page HTML ou de l'image illustrant l'objet
9 - commentaires associés à l'objet
10 - valider ou annuler les modificationsUn objet contient deux noms différents : un nom de libellé et un nom didentificateur. Plusieurs objets peuvent avoir le même nom de libellé, mais il est très important que le nom didentificateur soit unique. Cest à lutilisateur de veiller à ce que tout objet a un identificateur unique.
5.2.1 Modifier le libellé de lobjet
Le champ texte édition (fig.11 [1]) de lobjet correspond au nom visible de lobjet. Il peut être modifié puis affecté à lobjet en actionnant la touche valider.
5.2.2 Modifier lidentificateur de lobjet
Le champ texte identificateur (fig.11 [2]) peut être modifié de la même manière que le champ édition.
5.2.3 Modifier le statut de lobjet
Le statut dun objet peut être modifié en cochant simplement loption fictif, multiple ou absence possible. Ces trois options peuvent être combinées pour définir par exemple un objet fictif, multiple et absent possible.
5.2.4 Modifier la liste des descripteurs
Différentes fonctions de manipulation des descripteurs associés à lobjet sont possibles
(fig.11 [7]) :
- Créer : permet de créer un nouvel attribut,
- Copier : permet de créer un nouvel attributs par duplication dun attribut existant. Cette option nest pas disponible dans la version actuelle,
- Editer : permet de modifier lattribut sélectionné dans la liste,
- Effacer : efface lattribut sélectionné.
Dautre part, il est possible dafficher ou de masquer spécifiquement pour un objet particulier la liste de ses attributs, respectivement en cochant ou décochant loption afficher des descripteurs.
5.2.5 Modifier la liste des relations
Il est possible deffacer une relation en la sélectionnant dans la liste des relations de lobjet et en choisissant le bouton effacer. La boîte à cocher affichage permet de masquer tout le sous-arbre de lobjet courant. Loption créer nest pas disponible à ce jour.
5.2.6 Associer un URL à lobjet
Le champ texte URL (fig.11 [8]) correspond au nom de limage ou de la page HTML (page Web) associé à lobjet. Il est ainsi possible dillustrer chaque composant dun modèle par des images et du texte explicatif au format HTML. Lexemple illustré figure 11 indique que lobjet est illustré par la page HTML Pcpa.html située dans le répertoire French. Il est possible dindiquer un URL complet du type : http://www.bidon.com/monImage.html.
5.2.7 Associer un commentaire à lobjet
Un commentaire peut être associé à lobjet (fig.11 [9]) pour par exemple expliciter ce que représente lobjet.
Toute modification de lobjet doit se solder par le bouton valider, auquel cas, aucune modification ne sera apportée à lobjet.
5.3 - Les éditeurs dattribut
Il existe quatre éditeurs dattribut différent correspondant aux quatre type dattributs du modèle de représentation des connaissances dIKBS : type symbolique, numérique, texte et taxonomique.
De la même manière que les composants, les attributs sont définis par un nom libellé et un nom didentificateur unique. Ce nom didentificateur ne doit pas contenir despace entre les mots se terminer par le nom du composant auquel lattribut est lié, entre crochet. Ceci est très important, car lors de la sauvegarde et le chargement du modèle, les attributs sont associés aux objets par lintermédiaire de ce nom didentificateur.
A chaque attribut peut être associée une question qui sera utilisée lors de la génération du questionnaire. Si aucune question nest associée, IKBS génère automatiquement une question du type " Quelle est la valeur de lattribut nom de lattribut ?".
5.3.1 Léditeur dattribut symbolique
Il permet de définir la liste des valeurs possible (domaine de valeurs) dun attribut symbolique, le commentaire associé, et éventuellement une adresse URL et une valeur par défaut. Cette valeur par défaut est la valeur inconnue si aucune autre valeur nest renseignée.
Il est possible de modifier le type de lattribut en choisissant un autre type, auquel cas un processus de conversion sera appliqué. Un attribut symbolique peut ainsi être converti en attribut taxonomique et vice-versa, tout en conservant lensemble des valeurs possibles pour cet attribut.
Fig.12 : Léditeur dattribut symbolique
1 - nom de l'attribut (libellé)
2 - nom d'identificateur de l'attribut (unique)
3 - type de l'attribut
4 - question associée
5 - domaine de valeur de l'attribut6 - commentaire
7 - pour éditer une valeur
8 - adresse HTML associée
9 - visualiser la page HTML
5.3.2 Léditeur dattribut taxonomique
Un attribut de type taxonomique est défini par un ensemble de valeur structurée par une relation dordre total et visualisé sous la forme dun arbre taxonomique. La racine de larbre taxonomique porte le nom de lattribut.
- Ajouter une valeur : de la même manière que pour créer un nouveau composant du modèle, il est possible de créer une nouvelle valeur par laction contrôle + clic. Vous pouvez également taper le nom de la nouvelle valeur et ensuite lajouter.
- Modifier une valeur : il faut pour cela sélectionner la valeur par lintermédiaire du menu contextuel (contrôle + clic sur la valeur). La valeur apparaît alors dans le champ éditer et peut être modifiée.
- Effacer une valeur : sélectionner la valeur et activer loption effacer.
Fig.13 : Léditeur dattribut taxonomique
1 - nom de l'attribut (libellé)
2 - nom d'identificateur de l'attribut (unique)
3 - type de l'attribut
4 - question associée
5 - domaine de valeur de l'attribut6 - pour éditer une valeur
7 - affecter une valeur par défaut
8 - commentaire
9 - adresse HTML associée
10 - visualiser la page HTML
5.3.3 Léditeur dattribut numérique
Un attribut de type numérique est défini par un intervalle de valeur. Les champs borne inférieur et borne supérieur permettent de contraindre le domaine des valeurs possibles. Si aucune borne nest renseignée, aucune contrainte ne sera appliquée.
Fig.14 : Léditeur dattribut numérique
1 - nom de l'attribut (libellé)
2 - nom d'identificateur de l'attribut (unique)
3 - type de l'attribut
4 - question associée
5 - bornes du domaine de valeur de l'attribut6 - commentairepour éditer une valeur
7 - adresse HTML associée
8 - visualiser la page HTML
5.3.4 Léditeur dattribut de type texte
Seuls les champs question et commentaire associés à lattribut peuvent être renseignés. Un attribut de type texte ne spécifie aucune contrainte sur la valeur que peut prendre cet attribut.
Fig.15 :Léditeur dattribut de type texte
5.4 - Tableau récapitulatif des actions souris
Modificateurs
Action souris
Résultats
Aucun
Clic et déplacement
Déplacement de la zone affichée de larbre
Aucun
Clic sur un objet
Sélectionner lobjet cliqué
lobjet peut être déplacé en mode éditionAucun
Clic sur un attribut
Sélectionner lattribut cliqué
Commande ou bouton souris droit
Clic
Création dun nouvel objet
Commande ou bouton souris droit
Cliquer sur un objet et relâcher sur un autre
Créer une relation de dépendance entre deux objets
Option ou bouton souris central
Clic sur un objet
Lobjet cliqué devient la racine de larbre et le Schéma du modèle descriptif.
Option ou bouton souris central
Clic sur un attribut
Lattribut cliqué devient le caractère que lon cherche à identifier lors de la procédure darbre de décision (la cible du système inductif)
Contrôle
Clic
Activation du menu contextuel de léditeur (voir fig.8a)
Contrôle
Clic sur un objet
Activation du menu contextuel des objets (voir fig. 8b)
Contrôle
Clic sur un attribut
Activation du menu des attributs (voir fig.8c)
Majuscule
Clic sur un objet et déplacement
Déplacement du sous-arbre de racine lobjet sélectionné
Contrôle + majuscule
Clic sur un objet
Effacement du sous-arbre de racine lobjet cliqué
Noter que les modificateurs utilisés suivent une certaine logique :
- La touche commande (ou bouton droit) est associée à des actions de création (de composant ou de relation),
- La touche contrôle est associée à des appels de menu contextuel,
- La touche majuscule est associée à des actions effectuées sur un sous-arbre (déplacement et effacement).
6 - Léditeur de cas
Léditeur de cas permet de visualiser et de modifier une base de cas. Cette interface est ouverte à partir de léditeur de modèle en par litem afficher base de cas du menu cas.
Fig.16 : Léditeur de cas
1 - visualiser l'illustration associée à l'attribut
2 - charger une base de cas
3 - sauver une base de cas
4 - charger une base de cas via Internet
5 - réduire / agrandir
6 - ouvrir la fenêtre de zoom
7 - mise en forme de l'arbre
8 - afficher/masquer les attributs9 - mode édition ou visualisation
10 - navigation dans la base de cas
11 - numéro du cas courant
12 - affecter la valeur
13 - valeur inconnue
14 - filtre
15 - saisie
16 - attribut sélectionné
6.1 - Utiliser une base de cas existante
Il est nécessaire davoir chargé au préalable le modèle descriptif correspondant à la base de cas que vous souhaitez utiliser.
6.1.1 Charger une base de cas
De la même manière que pour charger un modèle descriptif, il existe plusieurs moyens dacquérir une base de cas, selon que les données se trouvent sur le disque local ou sur un serveur accessible par Internet.
En local, laction sur le bouton Fig.16 [2] ou sur le menu Fichier Charger base de cas locale de léditeur descriptif ouvre la fenêtre daccès aux fichiers contenant les bases de cas. Choisissez alors une base de cas et litem afficher base de cas du menu cas de léditeur descriptif pour afficher la base de cas que vous venez de charger.
A distance, laction sur le bouton Fig.16 [4] ou sur le menu Fichier Charger base de cas distante de léditeur descriptif ouvre la fenêtre daccès aux fichiers disponibles sur les serveurs IKBS. Vous pouvez également coder une adresse complète correspondant à une base de cas accessible par les réseaux, mais non référencée.
6.1.2 Fusionner une base de cas
Même méthode que pour charger une base de cas, sauf que si une base de cas à déjà été chargée préalablement, les deux bases de cas sont fusionnées.
6.1.3 Naviguer dans la base de cas
Le panel de navigation Fig.16 [10] permet de se déplacer dans la base de cas de la manière suivante :
Retour au cas précédent. Aucun effet si le cas courant est le cas n°1.
Aller au cas suivant. Aucun effet si le cas courant est le dernier.
Retour au cas n°1.
Aller au dernier cas.
Le champ Fig.16 [11] permet daller directement numéro du cas entré. Pour cela, entrer le numéro du cas et valider par la touche Retour.
6.1.4 Options daffichage
Les options daffichage disponibles (agrandir, réduire, afficher les attributs, etc.) sont équivalentes à celles qui sont proposées pour léditeur descriptif.
6.1.5 Sélectionner un élément
Deux méthodes sont possibles :
- Cliquer sur lattribut ou le composant. Ceci a pour effet de dessiner lélément en rouge, et de positionner le liste des éléments Fig.16 [16] sur lélément choisit.
- Choisir dans la liste des éléments Fig.16 [16]. Ceci a pour effet de dessiner lélément en rouge et de centrer le composant choisit au centre de la fenêtre.
6.2 - Créer une nouvelle base de cas
Pour créer une nouvelle base de cas, il suffit douvrir léditeur de cas. Un nouvel éditeur de cas apparaît ne contenant aucun cas.
6.2.1 Créer un nouveau cas
Actionner litem nouveau cas du menu Cas de léditeur de cas. Un nouveau cas apparaît ne contenant que des valeurs inconnues.
6.2.2 Effacer un cas
Actionner litem effacer cas du menu Cas de léditeur de cas. Le cas courant est effacé de la base.
6.2.3 Affecter une valeur
Il faut dans un premier temps sélectionner lattribut que lon souhaite renseigner. Selon le type de lattribut sélectionné, la barre doutil sadapte. Il y a cinq barres doutils adaptables disponibles correspondant aux quatre types dattributs et au type composant. Dans un deuxième temps, choisir ou entrer la valeur dans le champ (pour les attributs de type Texte ou les numériques) puis actionner le symbole =.
La barre doutil des composants permet de mentionner que le composant sélectionné est présent ou absent, si cest un composant qui peut être absent (Fig.17a). Si la valeur est inconnue, il suffit dactionner le symbole ?.
Fig.17a : Barre doutil des composants
La barre doutil des attributs taxonomiques permet daffecter la valeur de lattribut sélectionné par une des valeurs de larbre taxonomique.
Fig.17b : Barre doutil des attributs taxonomiques
Fig.17c : Barre doutil des attributs numériques
Fig.17d : Barre doutil des attributs symboliques
Fig.17e : Barre doutil des attributs de type Texte
6.2.4 Saisie dune valeur multiple
Lorsque lattribut (de type symbolique dans la version 1.1 dIKBS) sélectionné appartient à la liste des attributs dun objet multiple, il est possible de renseigner sa valeur par une conjonction de valeur (valeur multiple), ce qui permet dindiquer que plusieurs valeurs sont observées simultanément (conjonction de variation). La liste des conjonctions de valeurs possibles est automatiquement créée et disponible dans la liste des valeurs possibles.
Exemple : soit un attribut A de type symbolique avec comme domaine de valeur D = {a, b, c}. Si A appartient à la liste des attributs du composant C qui a comme statut multiple (composant correspondant à un ensemble dobjet observables), alors la liste des valeurs possible est :
V = {a, b, c, a&b, a&c, b&c, a&b&c}
6.2.5 Filtre
Le filtre Fig.16 [14] permet de filtrer la base de cas, cest à dire ne conserver dans léditeur de cas que les cas qui correspondent à la valeur entrée. Les critères peuvent être cumulés. Pour rétablir la liste des cas initiale, il faut fermer léditeur de cas et louvrir à nouveau.
Exemple : Je dispose dune base de cas de 1000 spécimen de coraux décrits par 3 personnes : Gérard, Mireille et Noël. Je souhaite ne conserver que les cas décrits par Mireille dont la classe est eydouxi. Je sélectionne tout dabord lattribut descripteur de lobjet Contexte, jentre le Mireille dans le champ de saisie des attributs de type Texte, puis jactionne loption Filtre. Ma base de cas ne contient alors plus que les cas décrits par Mireille. Ensuite, je sélectionne lattribut classe, je sélectionne la valeur eydouxi et jactionne à nouveau loption Filtre. Je ne dispose alors plus que des cas décrit par Mireille de class eydouxi.
Cette sous-base peut alors être modifiée, sauvegardée, etc.
6.2.6 Sauvegarder la base de cas
Il suffit dactionner loption Fig.16 [3] pour faire apparaître le menu de sauvegarde et dentrer le nom de la base. Il est conseillé dutiliser un nom composé par le nom du modèle et le nombre de cas décrits dans la base.
La base de cas est sauvegardée sous la forme dun tableau de données qui peut être ouvert sous nimporte quel tableur.
La première ligne contient lensemble des attributs du modèle.
La deuxième ligne contient le type des attributs.
Chaque ligne à partir de la troisième contient la description dun cas.
Les caractères séparateurs des valeurs sont des tabulations.
7 - Léditeur darbre de décision
Pour utiliser la procédure de classification et didentification, il est nécessaire quun modèle et une base de cas aient été définis. Dautre part, il est nécessaire de choisir une cible, cest-à-dire de définir lattribut que le système va chercher à caractériser. Il est alors possible de générer un arbre de décision : option générer arbre de décision du menu induction de léditeur descriptif. La procédure peut prendre un certain temps de calcul, proportionnel aux nombres de cas décrits dans la base (complexité linéaire) et au nombre dattributs présents dans le modèle (complexité quadratique). Une fois la procédure terminée, litem afficher arbre de décision du menu induction permet douvrir léditeur darbre de décision (voir Fig.18).
Fig. 18 : Exemple darbre de décision
1 - charger un arbre de décision
2 - sauver l'arbre de décision
3 - charger un arbre de décision via Internet
4 - réduire / agrandir
5 - mise en forme de l'arbre
6 - options d'affichage7 - retour en arrièrere
8 - question associée à l'attribut
9 - l'attribut choisit par la fonction de décision
10 - le noeud de décision courant
11 - un noeud terminal
7.1 - Larbre de décision
Larbre de décision construit par IKBS est constitué dun ensemble de nud, que nous appelons nud inductif. Chaque nud inductif qui nest pas une feuille de larbre est constitué dune liste dattributs, de la liste des gains dinformation et gain ratio correspondants à chaque attribut, et de la liste des cas qui nont pas encore été discriminés.
Larbre de décision construit par IKBS est composé de trois types de nuds différents :
- Nud attribut : lélément le plus discriminant est un attribut.
- Nud composant : lélément le plus discriminant est un composant de statut absence possible.
- Nud de classe : ce sont les feuilles de larbre de décision.
7.1.1 Nud attribut
On distingue deux types de nud attribut : les nuds continus (de type numériques) et les nuds discrets (de type symbolique).
Nud continus : lorsque lattribut est de type numérique, un seuil correspondant à la moyenne des différentes valeurs des cas est calculé. Deux partitions sont crées, lune caractérisant les cas dont les valeurs sont supérieures au seuil, lautre caractérisant les cas dont les valeurs sont inférieures ou égales au seuil.
Nud discret : lorsque lattribut est de type discret (symbolique ou taxonomique), une partition est créée pour chacune des valeurs possible du domaine, ainsi que pour toutes les combinaisons possibles
7.1.2 Nud composant
Uniquement sur les nud absent possible. Un nud composant permet de discriminer les cas selon la présence ou labsence du composant. Deux partitions sont créées : lune caractérisant les cas pour lesquels lobjet est présent, lautre pour les cas dont lobjet est absent.
7.1.3 Nud de classe
Chaque feuille de larbre correspond à une valeur de la classe et est étiquetée par le nom de la valeur.
7.2 - Léditeur de décision
Léditeur de décision permet dobserver la liste des attributs discriminants pour un nud donné, la liste des gains et gains ratio calculés pour chacun de ces attributs, ainsi que de visualiser lensemble des cas discriminés à ce nud (voir fig. 19). Il est accessible par lintermédiaire du menu contextuel (contrôle + clic) sur un nud inductif.
Fig.19 : Exemple déditeur de décision
1 - visualiser les illustrations et commentaires
2 - retour en arrière
3 - question associée à l'attribut courant4 - liste des réponses possibles
5 - réponse inconnueIl est possible deffacer un attribut en le sélectionnant dans la liste et en activant loption Effacer suivit de Valider. Il est également possible de choisir un autre attribut - qui nest pas le plus discriminant en le sélectionnant dans la liste, en activant loption Choisir puis Valider. Enfin, loption Visualiser permet douvrir un éditeur de base de cas contenant lensemble des cas présents à ce nud.
7.3 - Consultation de larbre de décision
Larbre de décision peut être consulté de manière interactive à laide dun questionnaire dans le but didentifier un nouvel échantillon.
A chaque nud inductif correspond la question qui a été renseignée dans le modèle pour lattribut sélectionné. Lutilisateur peut alors donner une réponse de deux manières. La première consiste à actionner la liste des valeurs possibles (fig.20 [4]) et à positionner la liste sur la valeur correspondant à son observation. Une nouvelle question correspond au nud inductif correspondant à la réponse donnée sera alors posée jusquà ce quune feuille de larbre soit atteinte. Une réponse est alors apportée à lutilisateur. Une deuxième méthode pour répondre aux questions consiste à cliquer directement dans larbre de décision sur le nud inductif où lon souhaite se positionner.
A tout moment, si la question ne trouve pas de réponse, lutilisateur peut actionner loption inconnu : ? (voir fig.20 [5]). Auquel cas, larbre sera modifié dynamiquement par le système et une nouvelle question sera posée.
Fig.20 : Aperçu du questionnaire
8 - Portabilité et exécution dIKBS
Le programme IKBS v1.1 est développé en langage Java 1.1 afin de pouvoir être utilisé sur tout système dexploitation supportant un interpréteur Java 1.1 standard. En effet, le langage Java a cette particularité que le code exécutable de lapplication nest pas spécifiquement créé pour une machine physique précise ou pour un système dexploitation particulier, à linverse de beaucoup dautres langages classiques tels que le langage C ou Pascal, mais pour une machine virtuelle Java, appelé interpréteur. Java offre de plus la possibilité de développer des applications (appelées applets) destinées à être exécutées par lintermédiaire dun navigateur Web (Netscape, Internet Explorer ou HotJava) dont les dernières versions intègrent un interprète Java 1.1.
8.1 - Comment utiliser le système par Internet
IKBS est une applet Java et peut donc être utilisée avec uniquement un navigateur et un accès Internet, en accédant au site Web de lUniversité de la Réunion , à ladresse :
http://www.univ-reunion.fr/~ikbs
À noter que lors que lutilisation distante dIKBS ne permet pas de sauvegarder les modifications apporter aux modèles disponibles, pour des raisons de sécurité.
8.2 - Comment utiliser le système en local
Vous devez disposer pour cela du logiciel IKBS sur votre ordinateur ainsi que dun interprète Java 1.1 (Apple MRJ2.0 sur MacIntosh, HotJava sur PC ou bien le JDK1.1 sous Unix) ou bien dun navigateur Web. Lapplet IKBS se lance à partir du fichier ikbs.html que vous devez ouvrir à partir du navigateur ou de linterprète JAVA.
[ Page d'Accueil | Coraux des Mascareignes | Page d' IKBS | Présentation | Top ]
© IREMIA - Equipe IKBS - 08/1998