Ontologie (informatique)

En informatique et en science de l'information, une ontologie est un modèle de données contenant des concepts et relations permettant de modéliser un ensemble de connaissances dans un domaine donné.

Les concepts sont organisés dans un graphe dont les relations peuvent être :

Les ontologies sont employées dans l’intelligence artificielle, le web sémantique, le génie logiciel, l'informatique biomédicale ou encore l'architecture de l'information comme une forme de représentation de la connaissance au sujet d'un monde ou d'une certaine partie de ce monde. Les ontologies décrivent généralement :

Étymologie

Le terme est utilisé par analogie avec le concept philosophique, d'ontologie (de onto-, tiré du grec ὤν, ὄντος « étant », participe présent du verbe εἰμί « être ») qui est l'étude de l'être en tant qu'être, c'est-à-dire l'étude des propriétés générales de ce qui existe.

Historique

En 1993, Tom Gruber (en) définit une ontologie comme une « spécification explicite d’une conceptualisation »,. En 1997, W. N. Borst propose de définir une ontologie comme une « spécification formelle d’une conceptualisation partagée ». Finalement, en 1998, Rudi Studer, Richard Benjamins et Dieter Fensel (en) fusionnent les deux définitions et définissent une ontologie comme une « spécification formelle et explicite d’une conceptualisation partagée »,.

Principe

Approche abstraite

L'étymologie renvoie à la « théorie de l'existence », c’est-à-dire la théorie qui tente d’expliquer les concepts qui existent dans le monde et comment ces concepts s’imbriquent et s’organisent pour donner du sens. Contrairement à l'être humain, la connaissance pour un système informatique se limite à la connaissance qu'il peut représenter.

Chez l'être humain, les connaissances représentables (c'est-à-dire l'univers du discours) sont complétées par des connaissances non exprimables (sensations, perceptions, sentiments non verbalisables, connaissances inconscientes, connaissances tacites, etc.). Ces éléments non représentables participent pourtant aux processus de raisonnement et de décision, qui sont des processus cognitifs en gestion des connaissances. Les performances cognitives d'un agent informatique vont donc en partie reposer sur le champ des représentations auquel il aura accès, c'est-à-dire concrètement au champ des représentations qui aura été formalisé.

Les ontologies informatiques sont des outils qui permettent précisément de représenter un corpus de connaissances sous une forme utilisable par un ordinateur.

Une des définitions de l'ontologie qui fait autorité est celle de Gruber :

« Une ontologie est la spécification d'une conceptualisation. Une conceptualisation est une vue abstraite et simplifiée du monde que l'on veut représenter dans un certain but.. »

Cette définition s'appuie sur deux dimensions :

C'est une base de formalisation des connaissances. Elle se situe à un certain niveau d'abstraction et dans un contexte particulier. C'est aussi une représentation d'une conceptualisation partagée et consensuelle, dans un domaine particulier et vers un objectif commun. Elle classifie en catégories les relations entre les concepts.

Évaluation

D'après Gruber, cinq critères permettent de mettre en évidence des aspects importants d'une ontologie :

Approche opérationnelle

Parallèlement à cette définition assez théorique de ce que représente une ontologie, une autre définition, plus opérationnelle, peut être formulée ainsi :

« Une ontologie est un réseau sémantique qui regroupe un ensemble de concepts décrivant complètement un domaine. Ces concepts sont liés les uns aux autres par des relations taxinomiques (hiérarchisation des concepts) d'une part, et sémantiques d'autre part. »

Cette définition rend possible l'écriture de langages destinés à implémenter des ontologies. Pour construire une ontologie, on dispose d'au moins trois de ces notions :

  1. détermination des agents passifs ou actifs ;
  2. leurs conditions fonctionnelles et contextuelles ;
  3. leurs transformations possibles vers des objectifs limités.

Pour modéliser une ontologie, on utilisera ces outils :

  1. raffiner les vocabulaires et notions adjacentes ;
  2. décomposer en catégories et autres sujets ;
  3. prédiquer afin de connaître les transformations adjacentes et d'orienter vers les objectifs internes ;
  4. relativiser afin d'englober des concepts ;
  5. similariser afin de réduire à des bases totalement distinctes ;
  6. instancier afin de reproduire l'ensemble d'une « branche » vers une autre ontologie.

Types

On identifie trois types d’ontologies selon un niveau décroissant d’abstraction.

Apprentissage

Cette section est vide, insuffisamment détaillée ou incomplète. Votre aide est la bienvenue ! Comment faire ?

Alignement

Article détaillé : Alignement d'ontologies.

Pratique

Exemples

Quelques concepts et liens sémantiques d'une ontologie relative à la production manufacturière, présentés sous forme d'arbre heuristique

Par exemple, pour décrire les concepts entrant en jeu dans la conception de cartes électroniques, on pourrait définir l'ontologie (simplifiée ici) suivante :

Langages

Le langage de spécification est l'élément central sur lequel repose l'ontologie.

La plupart de ces langages se basent sur ou sont proches de la logique du premier ordre, et représentent donc les connaissances sous forme d'assertion (sujet, prédicat, objet). Ces langages sont typiquement conçus pour s'abstraire des structures de données et se concentrer sur la sémantique. Parmi les formalismes les plus employés se basant sur la logique des prédicats, on retrouve des langages comme N3 ou N-Triple. On peut aussi évoquer le langage DEF-*.

Par ailleurs, dans le cadre de ses travaux sur le Web sémantique, le W3C a mis en place en 2002 un groupe de travail consacré au développement de langages standards pour modéliser des ontologies utilisables et échangeables sur le Web. S'inspirant de langages précédents comme DAML+OIL et des fondements théoriques des logiques de description, ce groupe a publié en 2004 une recommandation définissant le langage OWL (Web Ontology Language), fondé sur le standard RDF et en spécifiant une syntaxe XML. Plus expressif que son prédécesseur RDFS, OWL a rapidement pris une place prépondérante dans le paysage des ontologies et est désormais, de facto, le standard le plus utilisé.

Bien que développé pour la représentation des vocabulaires contrôlés et structurés (thésaurus), SKOS peut être utilisé pour élaborer et gérer des ontologies légères multilingues.

Évaluation des langages de spécification

Les langues utilisées pour la représentation des ontologies peuvent être évaluées en prenant compte des critères généraux suivants: une syntaxe compacte, un cadre sémantique bien défini pour comprendre ce qui est représenté, l'expressivité adéquate qui permet de représenter la connaissance humaine (plus l'expressivité est grande, moindre sont les capacités d'inférence d'une langue), un mécanisme de raisonnement adéquat, l'utilisabilité pour la construction des bases de connaissances larges, ainsi que l'interopérabilité avec des standards web existants,,.

De plus, le langage ontologique devrait être capable de décrire la connaissance d'une manière qui permettrait à une machine de le lire. Donc, il doit inclure non seulement la capacité à définir le vocabulaire, mais de le faire d'une manière qui fonctionne pour le raisonnement automatique.

Il faut aussi prendre en compte la formalité de la langue utilisée pour la création d'une ontologie, plus la langue est formelle moins elle est expressive. La formalité implique la présence de syntaxe, de sémantique et de pragmatique, la présence de seulement un de ces aspects signifie que le langage est informel ou semi-formel,.

Il existe d'autres critères à prendre en compte :

Finalement, les questions d'ordre plus concret peuvent se poser quant à la possibilité d'une langue d'en faire :

Outils

Si ce bandeau n'est plus pertinent, retirez-le. Cliquez ici pour en savoir plus.Si ce bandeau n'est plus pertinent, retirez-le. Cliquez ici pour en savoir plus.

Cet article ou cette section contient trop de liens externes (avril 2012).

Les liens externes doivent être des sites de référence dans le domaine du sujet. Il est souhaitable — si cela présente un intérêt — de citer ces liens comme source et de les enlever du corps de l'article ou de la section « Liens externes ».

Les éditeurs d'ontologie suivants sont gratuits et téléchargeables :

Avec l'émergence du marché des technologies du Web sémantique, on peut noter l'apparition depuis 2005 d'outils logiciels proposés par des éditeurs commerciaux. On peut citer :

Il existe d'autre part des outils informatiques permettant de construire une ontologie à partir d'un corpus de textes. Ces outils parcourent le texte à la recherche de termes récurrents ou définis par l'utilisateur, puis analysent la manière dont ces termes sont mis en relation dans le texte (par la grammaire, et par les concepts qu'ils recouvrent et dont une définition peut être trouvée dans un lexique fourni par l'utilisateur). Le résultat est une ontologie qui représente la connaissance globale que contient le corpus de texte sur le domaine d'application qu'il couvre. Le projet WordNet (voir les liens) en est l'exemple le plus important.

Approche normative

En Europe, la norme qui fait actuellement l'objet d'une attention particulière est une norme permettant notamment de décrire les ontologies sur le patrimoine culturel immatériel (bibliothèques, musées et archives…).

Ses références exactes sont ISO 21127 : « Ontologies nécessaires à la description des données concernant le patrimoine culturel ».

Exemples publiés

Notes et références

Notes

  1. (en) « An ontology is an explicit specification of a conceptualization. A conceptualization is an abstract, simplified view of the world that we wish to represent for some purpose. ».
  2. En anglais : « Ontological commitment can be minimized by specifying the weakest theory (allowing the most models) and defining only those terms that are essential to the communication of knowledge consistent with that theory ».

Références

  1. Voir Classe (mathématiques), Classe (informatique), et Classe (philosophique) (en), chacun étant pertinent, mais non identique à la notion de « classe » ici.
  2. Guarino, Oberle et Staab 2009, p. 2.
  3. (en) Thomas R. Gruber, « A translation approach to portable ontology specifications », Knowledge Acquisition, vol. 5, no 2,‎ juin 1993, p. 199–220 (DOI 10.1006/knac.1993.1008, lire en ligne, consulté le 10 septembre 2022)
  4. (en) Rudi Studer, V.Richard Benjamins et Dieter Fensel, « Knowledge engineering: Principles and methods », Data & Knowledge Engineering, vol. 25, nos 1-2,‎ mars 1998, p. 161–197 (DOI 10.1016/S0169-023X(97)00056-6, lire en ligne, consulté le 10 septembre 2022)
  5. (en) Thomas R. Gruber, Towards Principles for the Design of Ontologies Used for Knowledge Sharing in Formal Ontology in Conceptual Analysis and Knowledge Representation, Kluwer Academic Publishers, 1993, .
  6. Tom Gruber, article « Ontology » dans l'Encyclopedia of Database Systems, Springer-Verlag, 2009, .
  7. Henri Briand, Fabien Gandon et Fabien Picarougne, Atelier « Modélisation des connaissances », conférence Extraction et Gestion des Connaissances, 8es Journées Francophones, Sophia Antipolis, 29 janvier 2008.
  8. (en) Oscar Corcho et Asunción Gómez-Pérez, « A Roadmap to Ontology Specification Languages », Knowledge Engineering and Knowledge Management Methods, Models, and Tools, Springer,‎ 2000, p. 80–96 (ISBN 978-3-540-39967-4, DOI 10.1007/3-540-39967-4_7, lire en ligne, consulté le 9 novembre 2022)
  9. (en) J. R. G. Pulido, M. A. G. Ruiz, R. Herrera et E. Cabello, « Ontology languages for the semantic web: A never completely updated review », Knowledge-Based Systems, creative Systems, vol. 19, no 7,‎ 1er novembre 2006, p. 489–497 (ISSN 0950-7051, DOI 10.1016/j.knosys.2006.04.013, lire en ligne, consulté le 9 novembre 2022)
  10. Diana Kalibatiene et Olegas Vasilecas, « Survey on Ontology Languages », dans Perspectives in Business Informatics Research, vol. 90, Springer Berlin Heidelberg, 2011 (ISBN 978-3-642-24510-7, DOI 10.1007/978-3-642-24511-4_10, lire en ligne), p. 124–141
  11. (en) Alan Gilchrist, « Thesauri, taxonomies and ontologies – an etymological note », Journal of Documentation, vol. 59, no 1,‎ 1er février 2003, p. 7–18 (ISSN 0022-0418, DOI 10.1108/00220410310457984, lire en ligne, consulté le 9 novembre 2022)
  12. (en) Alberto Olivares-Alarcos, Daniel Beßler, Alaa Khamis et Paulo Goncalves, « A review and comparison of ontology-based approaches to robot autonomy », The Knowledge Engineering Review, vol. 34,‎ 2019, e29 (ISSN 0269-8889 et 1469-8005, DOI 10.1017/S0269888919000237, lire en ligne, consulté le 9 novembre 2022)
  13. (en) N. Baumgartner, « A SURVEY OF UPPER ONTOLOGIES FOR SITUATION AWARENESS », sur www.semanticscholar.org, 2006 (consulté le 9 novembre 2022)
  14. (en) Angelo A. Salatino, Thiviyan Thanapalasingam, Andrea Mannocci et Francesco Osborne, « The Computer Science Ontology: A Large-Scale Taxonomy of Research Areas », dans The Semantic Web – ISWC 2018, vol. 11137, Springer International Publishing, 2018 (ISBN 978-3-030-00667-9, DOI 10.1007/978-3-030-00668-6_12, lire en ligne), p. 187–205
  15. A. Gomez-Perez et O. Corcho, « Ontology languages for the Semantic Web », IEEE Intelligent Systems, vol. 17, no 1,‎ janvier 2002, p. 54–60 (ISSN 1941-1294, DOI 10.1109/5254.988453, lire en ligne, consulté le 9 novembre 2022)
  16. (en) Ying Ding et Schubert Foo, « Ontology research and development. Part 1 - a review of ontology generation », Journal of Information Science, vol. 28, no 2,‎ avril 2002, p. 123–136 (ISSN 0165-5515 et 1741-6485, DOI 10.1177/016555150202800204, lire en ligne, consulté le 9 novembre 2022)
  17. (en) « IDEAS Group », Site officiel (consulté le 6 octobre 2018).

Voir aussi

Articles connexes

Bibliographie

Ouvrages Articles

Liens externes