Guide pour construire une ontologie

Voici un petit guide pour ceux qui veulent mettre en place une ontologie. Ce n’est bien sûr pas la seule façon de procéder, mais c’est celle que je trouve la plus pertinente.

Cette approche provient, entre autres, des travaux de Bruno Bachimont, Raphaël Troncy et Nathalie Aussenac-Gilles.

1. D’abord bien définir l’objectif de l’ontologie et comment son utilisation permettra d’atteindre ces objectifs.

2. Une ontologie est une représentation formelle des éléments, et de leurs relations, constitutifs d’un domaine de connaissance. L’ontologie n’est pas la représentation et la modélisation de l’expertise, ou des processus cognitifs de quelques personnes, c’est la modélisation d’un domaine qui correspond à un champ de pratique.

3. Il faut tout d’abord identifier les éléments de l’ontologie : pour cela travaillez avec des personnes ayant différents profils, mais qui tous ont une pratique dans le domaine de connaissance choisi.

4. S’il existe un corpus documentaire sur le sujet, aidez-vous de différents outils de traitement automatique des langues (par exemple SYNTEX pour repérer les éléments candidats, UPERY pour le regroupement de contexte et YAKWA pour le repérage de relations). Voir à ce sujet l’approche Terminae, qui émane du groupe « Terminologie et Intelligence Artificielle ».

5. Maintenant il va falloir fixer tout çà ensemble, et c’est la que c’est le plus dur. Pour ma part je suggère la méthodologie présentée par Bruno Bachimont, mise en place lors du projet MENELAS, qui vise à contraindre l’utilisateur à un engagement sémantique, en introduisant une normalisation sémantique des termes manipulés dans l’ontologie.

6. Il faut ensuite veiller à donner une signification précise aux termes de l’ontologie. Pour cela, il faut utiliser la sémantique différentielle de François Rastier pour laquelle le sens est intra-linguistique : il se construit par des relations d’opposition entre les unités du système linguistique. Les traits sémantiques qui déterminent le sens des termes sont appelés sèmes. Il y a deux sèmes :
-> les sèmes génériques qui permettent de regourper les unités entre elles.
-> les sèmes spécifiques qui permettent à une unité de se distinguer de celles avec qui on l’a regroupée.

7. Mais comme le sens est toujours fortement dépend du contexte, le mécanisme qui interprète l’attribution des sèmes aux termes doit être contrôlé. Le contrôle de cette interprétation est la normalisation sémantique.

8. La normalisation sémantique se met en place grâce à quatre principes :
->le principe de communauté avec le père
-> le principe de différence avec le père
-> le principe de différence avec la fratrie
-> le principe de communauté avec la fratrie
Les termes ainsi obtenus après être passés par la normalisation sémantique deviennent des primitives d’une taxinomie.

9. L’étape suivante va être la formalisation des connaissances. En liant les notions avec un ensemble de référents dans le monde on va donner une sémantique extensionelle qui va devenir une ontologie référentielle, composée de concepts qui vont agir comme des primitives formelles.

10. A présent il faut opérationnaliser les connaissances. Il s’agit pour cela de munir les concepts présents dans l’ontologie référentielle d’une signification en termes d’opération informatique. Cela donne l’ontologie computationnelle recherchée.

Pour vous outiller dans cette démarche utilisez DOE (Differential Ontology Editor). Puis reprenez le résultat de vos travaux avec Protégé pour finir le travail avec cet editeur de l’université de Stanford.

Pour exploiter votre ontologie il vous faudra :
-> une solution pour stocker l’ontologie (par exemple SESAME)
->une solution pour interroger et inter-agir avec l’ontologie ; c’est le moteur d’inférence.
Il y a deux catégories de moteurs d’inférence, ceux qui sont des langages et API programmables d’un côté (TRIPLE, KAON1, JENA2). Et de l’autre des raisonneurs généralement développés autour des logiques de description (FACT, RACER)

[…] hinTracker(); Christian Fauré Hypomnemata « Guide pour construire une ontologie Pourq […]

[…] Lu sur le blog de Christian Fauré, un guide pour construire une ontologie. […]

3 Mar 2007, 10:35
by Bitri Khemaies

reply

SVP,guidez moi a construire une ontologie des concepts de base des techeniques de modelisation des processus d’entreprise

[Reply]

Bonjour Bitri Khemales,
C’est un peu léger comme message… Par ailleurs, comment voulez-vous que nous échangions si vous ne laissez aucune coordonées ?
Envoyez-moi donc un mail.
Amitiés,
CF

[Reply]

salut
je suis étudiante et je fais un projet dont le sujet consiste à dévelloper une ontologie du droit tunisien ,j’utilise protégé-owl mais je veux l’interaction avec la framework java JENA et je n’ai pas pu coment faire je veux d’aide svp

[Reply]

Jena est intégré dans Protégé.

[Reply]

merci pour votre réponse mais moi je veux exploiter le code owl généré par protégé-owl pour élaborer une interface homme machine car mon sujet consiste à faire l’annotation des textes jurididues mais je n’ai pas pu utiliser avec protégé-owl,merci d’avance pour votre aide

[Reply]

bonjour,
je suis intérresée par les ontologies, je veux savoir est ce qu’il existe une typologie pour classifier les ontologies , et selon quel critére?
merci d’avance….

[Reply]

22 Avr 2007, 12:57
by hicham sadi9i

reply

mon protégé ne veut meme pas demarré ,
comment faire pour qu il puisse marcher

[Reply]

[…] C’est d’abord parce qu’il est destiné à être utilisé par les machines, non par les hommes. Il est destiné à être utilisé par des machines car il repose sur les logiques descriptives dont le formalisme permet de faire du calcul. Attardons-nous quelques instants sur ces logiques descriptives qui sont au coeur même des démarches “sémantiques”. Une logique basée sur le calcul des prédicats est trop pauvre car elle ignore la notion de contextualité, c’est la raison pour laquelle, en matière d’ingénierie des connaissances, les logiques descriptives ont pris le dessus. Elles ont la prétention – c’est ce que dénote l’adjectif “descriptives”- de s’appuyer sur une représentation contextualisée des éléments qui la composent. Et pour ce faire, les logiques descriptives se proposent de regrouper les connaissances dans leur contexte d’application. Pour répondre à cette contextualisation de la connaissance, a été mis en place les Frames (Cadres). Je n’insisterai pas plus là dessus car la programmation orientée objet est issue de cette représentation des connaissances par des Frames (entités, classes, attributs, méthodes,…) Une représentation des connaissances ( ou Base de connaissances, ou ontologie) est la somme des T-Box et des A-Box : […]

bonjour,
je veux modeliser des concepts avec le OWL et je ne sais pas comment faire.

[Reply]

hicham sadi9i > je sais c’est un peu tard, et tu as déjà surement trouvé la réponse, mais pour ceux qui seraient dans le meme cas : il te faut java1.5 ou mieux. Protégé ne se lancera pas sinon. De plus, il ne faut pas fermer la fenetre de commande tant que tu comptes utiliser le logiciel.

jannet > la partie wiki du site officiel de Protégé est assez bien conçue pour répondre à tes questions (encore faut il avoir des notions d’anglais)
http://protege.cim3.net/cgi-bin/wiki.pl?ModelingTipsAndTricks
http://protege.cim3.net/cgi-bin/wiki.pl?ProgrammingTipsAndTricks
http://protege.cim3.net/cgi-bin/wiki.pl?UsageTipsAndTricks

[Reply]

salut

[Reply]

Bonjour, je tombe sur ce post un peu sur le tard, mais il m’évoque quand même un point que je trouve remarquablement absent de la méthodologie que tu décris, à savoir la prise en compte des _objectifs_ de l’ontologie qu’on est en train de construire. Ne nous y trompons pas, dans un contexte informatique l’ontologie est avant tout un _artefact_ du système d’informations/connaissances, et dans ce sens elle doit répondre à des objectifs; voir l’ontologie (au sens informatique) comme une simple « formalisation conceptuelle du monde réel », détachée de toute contrainte de mise en oeuvre, est le meilleur moyen de ne pas arriver à s’en servir.

Des exemples de questions à se poser sont : quelles types de requêtes vont être faites sur les instances de l’ontologie ? quelles informations veut-on en inférer ? y a-t-il des contraintes liées à l’outil qui utilisera cette ontologie ? veut-on l’utiliser pour annoter des documents, pour la « populer », pour aggréger plusieurs modèles de données disparates, etc. ?

[Reply]

Salut Thomas,
Ton premier paragraphe est étrange car le premier point de la méthodologie est précisément :
« 1. D’abord bien définir l’objectif de l’ontologie et comment son utilisation permettra d’atteindre ces objectifs. »

Cela dit je perçois tout à fait le fond de ta remarque et je suis d’accord avec toi.
Ce billet de 2005 est vraiment très daté pour moi, je peux même dire que je n’adhère plus du tout à cette démarche

[Reply]

guide sur l’utilisation de protégé_owl

[Reply]

comment réprésenter les relations sémantiques entre les concepts(synonimie,homonymie,…) sous protégé?

[Reply]

@wiem : ben tu vas dans l’onglet « properties » pour définir la sémantique des données.

[Reply]

bonjour .
actuellement, je réalise une application en utilisant java sur eclipse , je cherche comment je peut utiliser mon ontologie pour classifier des mots spécifiques a l’aide de l’api jena.
merci d’avance .

[Reply]

comment connecter et manipuler une ontologie fait en protege (owl) avec java et comment manipuler jes donnees de ceete ontologie en java en utilisant l’api jena

[Reply]

24 Mai 2008, 11:43
by Ali EL MEZOUARRY

reply

bonjour Mr Christian,
Je m’appelle EL MEZOUARY Ali je travail sur un projet en relation ave les ontologie et Web Sémantique précisément une ontologie des document pédagogique afin d’exploiter cette ontologie pour d’indexer des document ou partie d’un document dans un but pédagogique.
Pour l’instant j’ai crée une petite ontologie pour ce but avec l’outil Protégé mais j’arrive pas à exploiter cette ontologie (le fichier OWL) c.à.d je sais pas comment faire pour lier les concepts de mon ontologie avec les document qui traitent chaque concept d’une paart d’autre par comment annoter les document afin de construire une base de documents.
Je vous demmande de m’envoyer quelque explications téchniques pour lier les concepts de l’ontologie avec les documents et s’il y’a des outils pour annoter les documents.
Merci

[Reply]

Bonjour Mr Christian
Je m’appelle HT Sabria, je suis étudiante en post graduation en Algérie. Mon théme c’est « Approche multicritére pour le choix d’une méthode pour la modélisation d’entreprise ».
Je suis nouvelle dans le domaine des ontologies mais trés interessée.
Je veux créer une ontologie du domaine en utilisant l’outil protégé pour une grille( les méthodes de modélisations et les différents critéres) pour qu’aprés l’exploiter dans ma méthode de surclassement (la méthode ELECTRE IV).

Pouvez vous S.V.P m’aider à la créer.
Merci d’avance Mr Christian

[Reply]

bonjour,
même si on utilise protégé, a-t’on besoin d’autres outils comme vous l’avez mentionnez plus haut pour le stockage et l’exploitation de l’ontologie??
Merci d’avance

[Reply]

@ sabrina : utilise protégé pour faire ta modélisation et tes tests. Quant tu auras maîtrisé va chez Got : http://www.lespetitescases.net

[Reply]

J’ai l’impression que c’est tous les universitaires nord africains qui font des ontologies d’entreprise. Organisez-vous pour ne pas réinventer la roue 🙂

[Reply]

bonjour,
Merci pour votre message.
SVP, comment tester mon ontologie??
Je vous rassure Mr que ce n’est pas tous les universitaires qui font de la modélisation et peut étre on reinventera autre chose 🙂
Mercii

[Reply]

Bonjour,

A la lecture de ces lignes, je vois que le sujet est loin d’être épuisé, y compris sur le sujet des ontologies d’entreprise.
Ma préoccupation est différente, encore que …
On parle beaucoup de processus, de grouvernance, de BPM, de cartographies, etc mais concenant le classement et les concepts, il y a autant de définitions que d’interlocuteurs.
La notion de processus (je dois avoir une quarantaine de définitions) est elle même très différente en fonction des interlocuteurs et contexte ce qui explique généralement une absence de consensus sur ce sujet. Même BPM (le standard) entretient la confusion autour de la notion d’activité, de tâche et d’action – Activité sous ensemble de processus, équivalent à task comprenant des actions (une task non décomposable). « l’urbanisation » des SI entretient la même confusion
Travaillant sur les systèmes d’information (et, accessoirement sur les architectures d’entreprise), je dois aujourd’hui construire un référentiel permettant de servir de base (fournisseur d’information) à des outils de réprésentation (les cartographies) tout en maîtrisant (tant que faire se peut) les problèmes liés au divergences de vues que je peux rattacher à la polysémie.
L’objectif de mon projet est de batir un référentiel permettant différentes représentations adaptées à la cible mais reposant sur un référentiel de préférence « unique ».
Les systèmes d’ontologies me semblent une bonne solution mais comment démarrer ? Comment trouver un partenaire sur ce sujet ?

Cordialement

Michel

[Reply]

C un bon site.
mais est ce que vous avez une idée sur la combinaison entre les deux approches F-logic(FLORA-2, TRIPLE) et OWL.
Merci

[Reply]

@ michel : votre demande est un peu flou.. essayez d’appeler Mondeca … ou Atos Origin 🙂
@ medos : non, c’est trop théorique pour moi, je crois qu’il n’y a que quelques universitaires qui peuvent donner des pistes de réponses à ce niveau.

[Reply]

Merci Christian
Connaissez vous qlq?

[Reply]

@medos : non, pas personnellement ( il y a quand même de la doc là dessus sur le web, mais j’imagine que vous l’avez déjà parcouru)

[Reply]

bonjour M R Christian
je m’appelle imen, je suis entrain de faire le projet de mon mastere qui consiste à l’indexation semantique des comptes rendus medicale en utilisant une ontologie
j’utilse eclipse 3.2 pour le developpement et je veux charger mon ontologie deja construite avec protege en utilisant jena.
pouvez vous m’aider pour trouver le demarche

[Reply]

salut imen as tu des doc à propos du Web sémantique et ontologies

[Reply]

Bonjour,

je crois que j’ai les même problèmes que ceux de Imen et Azoul, à savoir l’exploitation et la manipulation des concepts d’un fichier OWL avec l’utilisation de Jena et java, en d’autres termes la comparaison des concepts de différentes ontologies pour faire un alignement;

pouvez vous m’aider sur ça ? et je veux demander à Imen et Azoul s’ils ont une solution de me le faire passer SVP.

Merci.

[Reply]

bonjour,
j’ai concu une petite ontologie sur les techniques de modelisation, maintenant comment savoir qu’elle est juste et comment vais je l’exploiter????

Merciii

[Reply]

23 Oct 2008, 10:56
by hadj tayeb sabria

reply

Bonjour
Je prépare mon magister en informatique.
J’ai conçu une ontologie du domaine avec l’outil protégé dont le but est de présenter un canevas des méthodes de modélisation d’entreprises et une liste de critères que j’ai conçu. je l’es testé par RACER et je dois par la suite exploiter cette ontologie pour dérouler ma méthode de surclassement afin d’en choisir la méthode de modélisation répondant aux objectifs de chaque entreprise.
Je voulais vous demander comment faire en sorte d’exploiter mon ontologie pour dérouler ma méthode sachant que je vais programme avec builder.
Merci d’avance
Sabria

[Reply]

Bonjour Professeur Christian;
Je m’appelle Katia et je travaille sur le domaine des ontologies.
Permettez moi de vous demandez comment puis-je télécharger les outils de traitements automatiques de textes: Syntex, Upery et Yakawa.

En espérant avoir une réponse, je vous remercie d’avance.

[Reply]

« professeur christian », on me l’avait pas encore faite celle-là 🙂
Ces outils, bien qu’encore utilisés dans certaines universités françaises, ne sont plus/pas distribués.

[Reply]

Bonjour Christian,

Un peu tardivement, merci.
Le projet est toujours d’actualité.
Je poursuis mes investigations.
Avant de remplir le modèle, il convient d’en définir les concepts et relations. Travaillant seul sur le sujet, je vais poursuivre avec DOE qui a changé d’adresse (http://homepages.cwi.nl/~troncy/DOE/)

Potentiellementn afin d’approfondir les connaissances sur le sujet, vers quelle formation (type M2) se tourner

A bientôt et merci

Michel

[Reply]

Bonjour Mr Christian je suis chargé à développer des ontologies pour le pilotage de programmes distribué en fait je sais pas comment utiliser protégé alors j’espère avoir un guide pour la créations des ontologies via Protégé, si vous en avez ou quelqu’un d’autre qui en avait merci d’avance

[Reply]

Bonjour Mr Christian
Est-ce qu’il existe des outils de traitements automatiques de textes distribués ?
Sinon, comment peut-on procéder pour la construction d’une ontologie à partir du texte ?
∞ Merci
Mania

[Reply]

comment construire une ontologie sous protege 2000?

[Reply]

salu
je suis en train d’étudier comment on peut utulisier les ontologies floue dans l’indexation; pouvez vous m’aider, me conseiller!!
merci

[Reply]

salut
j’ai trois methodes de semilarité d’alignement des ontologies(levenstain,ola ,wordnet) et je veux les combiner comment programmer ça
svp j’ai tres besoin de ça.

[Reply]

bonjour,
ou peut-on télécharger des ontologies déjà existantes pour pouvoir les réutiliser pour la construction d’une autre ontologie de domaine.
sachant que je suis en master2 et que je dois construire une ontologie pour l’annotation de photos numériques. merci de votre aide

[Reply]

@ clariss par exemple en cherchant sur http://swoogle.umbc.edu/ , un moteur de recherche d’ontologies ?

Il faut se sortir le doigt un peu !

C’est incroyable le nombre d’étudiants qui passent par ici pour me demander de faire leur travail …

[Reply]

bonjour monsieur christian
y’a til un exemple detaillé sur la creation d’une ontologie à l’aide de l’outil protégé ?
je demande n’importe quel exemple pour comprendre en detaille la creation des classes des propriétés des intances ..etc
merci par avance

[Reply]

@sabria
Pouvez vous me montrer comment vous aviez créé votre ontologie avec l’outil protégé ?
Merci

[Reply]

Pouvez vous me donner le guide de protege3.4.4 version francaise?
Merci.

[Reply]

 

Répondre à imen Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.