Le Web sémantique et les Ontologies
Le Web sémantique
Le World Wide Web (WWW) actuel est une immense bibliothèque de documents reliés entre eux et qui sont transférés par des ordinateurs et présentés aux différents utilisateurs. Cela signifie également que la qualité de l’information ou même la persistance des documents peut ne pas être garantie en général. Le WWW actuel contient beaucoup d’informations et de connaissances, mais les machines servent généralement à livrer et à présenter le contenu des documents décrivant les connaissances. Les utilisateurs doivent se connecter à toutes les sources d’information pertinentes et les interpréter eux-mêmes. Le web sémantique est un effort pour améliorer le web actuel afin que les ordinateurs et les utilisateurs puissent travailler et coopérer entre eux efficacement, traiter les informations présentées sur le WWW, les interpréter et les connecter, pour aider les humains à trouver les connaissances requises. De la même manière que le WWW est un énorme système hypertexte distribué, le web sémantique est destiné à former un énorme système distribué à base de connaissances. L’objectif du web sémantique est de partager des données au lieu de documents. En d’autres termes, il s’agit d’un projet qui devrait fournir un cadre commun qui permet aux données d’être partagées et réutilisées par les différentes applications, entreprises et communautés. La vision du web sémantique a été présentée la première fois par Tim BernersLee [Berners-Lee et al. (2001)]. L’utilité du web sémantique peut être vue à travers les exemples suivants : supposons que vous cherchiez à comparer les prix des canapés qui se fabriquent dans votre région (c-à-d, le même code postal que le votre), ou que vous cherchiez les catalogues en ligne des différents fabricants de pièces de rechange d’une voiture de marque Peugeot 406. Les réponses à ces questions peuvent être disponibles sur le web, mais pas sous une forme exploitable par la machine. Vous avez toujours besoin d’une personne capable de discerner et de vous donner la signification de ces réponses et de leur importance par rapport à vos besoins [Elbyed (2009)]. Le Web sémantique aborde ce problème de deux manières. Il permet d’une part aux communautés d’exposer leurs données et d’autre part, il permet à des personnes d’écrire (de produire) les dossiers qui expliquent “à une machine” les rapports entre différents ensembles de données.
Architecture du web sémantique
L’évolution des travaux réalisés dans le cadre du web sémantique est marquée par différents niveaux de complexité [Bonenfant et Vachon (2002)]. Quel que soit le niveau de complexité, toutes ces applications reposent sur une architecture en couches commune exprimée par la figure 1.1. — La couche URI et Unicode : URI (Uniform Resource Identifiers) est un protocole simple et extensible et il est considéré comme un composant fondamental du Web actuel [Obitko (2006)]. Il fournit une identification unique des ressources et les relations entre ces ressources. Il existe plusieurs types d’identificateurs de ressources. Un URI peut être classé en 3 catégories, selon qu’il soit destiné à la localisation, au nommage ou aux deux. Le terme URL (Uniform Resource Locator) représente un sous-ensemble d’URI qui identifie les ressources via une représentation de leur mécanisme d’accès, plutôt que par le nom ou une autre attribut de cette dernière, comme il en est le cas pour l’URN (Uniform Resource Name). L’URL et l’URN sont donc des cas particuliers d’URI. Par ailleurs, il est à noter que les données sont toujours encodées avec le jeu de caractères Unicode pour un maximum d’interopérabilité. C’est pourquoi cet élément figure dans cette couche de bas niveau, au même titre que l’URI. — La couche XML 1 (eXtensible Markup Language), NS(XML namespace) 2 et XML Schema 3 : à ce niveau d’architecture, nous ne sommes toujours pas au point d’affecter une sémantique à l’information, c’est-à-dire de la décrire et la donner un sens [Bray et al. (1996)]. Il s’agit seulement d’une couche syntaxique, de bas niveau, qui permet de structurer les données et de les organiser selon un format de message standard, et ce, grâce au langage de balisage XML. C’est un composant fondamental pour l’interopérabilité syntaxique. XML namespace offre une méthode simple pour employer des éléments et des attributs nommés dans un document XML. XML Schema sert à exprimer le schéma d’un ensemble particulier de documents XML. — La couche RDF et RDFS : après avoir référencé les ressources avec le protocole URI et structuré les informations avec le XML [Bonenfant et Vachon (2002)], l’étape suivante consiste à les annoter, afin de les doter d’un sens interprétable par la machine. C’est justement le rôle de la couche RDF et RDFS dans l’architecture du web sémantique. RDF(Resource Description Framework) 4 est un cadre pour re présenter des informations sur les ressources sous forme de graphe. Il a été principalement destiné à représenter des métadonnées sur les ressources de web, comme le titre, l’auteur et la date de modification d’une page web, mais il peut être utilisé pour stocker d’autres données. Il est basé sur le triplet sujet-prédicatobjet qui forme le graphe des données. RDF est un moyen d’encoder, d’échanger et de réutiliser des méta-données structurées. C’est un idiome XML développé par le W3C (World Wide Web Consortium) 5 et ayant fait l’objet d’une recommandation en 1999. Le RDFS (RDF Schema) 6 est une prolongation de RDF. Un schéma RDF permet de décrire un vocabulaire et une sémantique des types de propriétés utilisées par une communauté d’utilisateurs et il fournit des éléments de base pour la définition d’ontologies ou vocabulaires destinés à structurer des ressources RDF. — La couche OWL(Ontology Web Language) 7 : OWL est un langage de web sémantique conçu pour représenter la connaissance riche et complexe sur les choses, les groupes de choses, et les relations entre les choses. OWL est un langage basé sur la logique qui permet d’exprimer une connaissance exploitable par des programmes informatiques. — La couche logique : repose sur les langages ontologiques dans l’architecture recommandée par le W3C. En général, nous utilisons la couche logique pour exprimer les règles d’inférence [Bonenfant et Vachon (2002)]. — La couche preuve : exécute et évalue les règles utilisées, elle a pour but de prouver la pertinence de l’information retournée par les couches de plus bas niveau et des déductions obtenues à partir des inférences. Une des façons de le faire est de garder trace des sources d’information et des raisonnements effectués. Un langage de preuve constitue un moyen simple pour prouver si une déclaration est juste ou pas. Une instance de ce dernier consiste en général en une liste de toutes les étapes d’inférence par lesquelles a transité l’information en question [Palmer (2001)]. — La couche confiance : fournit des mécanismes pour que les applications décident s’il faut faire confiance à la preuve indiquée ou pas. — Des signatures digitales sont employées pour détecter les éventuels changements de documents. Dans la section suivante, nous allons présenter l’ontologie ; la notion de base du web sémantique.
|
Table des matières
Liste des figures
Liste des tableaux
Introduction
I Etat de l’art
1 Le Web sémantique et les Ontologies
1.1 Le Web sémantique .
1.1.1 Architecture du web sémantique .
1.2 Les ontologies
1.2.1 La notion d’ontologie .
1.2.2 Les composants d’une ontologie .
1.2.3 Exemple d’ontologie . .
1.2.4 Les types d’ontologie . .
1.2.4.1 Ontologie de représentation de connaissances .
1.2.4.2 Ontologie de haut niveau / supérieure (Top-level / Uppermodel) .
1.2.4.3 Ontologie Générique (Generic ontology) . .
1.2.4.4 Ontologie du domaine (Domain ontology)
1.2.4.5 Ontologie de tâches (Task ontology) .
1.2.4.6 Ontologie d’application (Application ontology) .
1.2.5 Les langages d’ontologies .
1.2.5.1 KIF
1.2.5.2 RDF et RDF Schéma .
1.2.5.3 DAML+OIL
1.2.5.4 OWL
1.2.6 Le processus de développement d’ontologie .
1.2.7 Les outils de construction d’ontologies .
1.2.7.1 Protégé
1.2.7.2 OntoEdit . .
1.2.7.3 OntoStudio
1.3 Conclusion .
TABLE DES MATIÈRES
2 Alignement d’ontologies
2.1 Introduction .
2.2 Les différents types d’hétérogénéité
2.3 Domaines d’application .
2.4 Définition formelle
2.4.1 Les contraintes de cardinalités .
2.5 Exemple d’alignement d’ontologies .
2.6 Mesures de similarité .
2.6.1 Les différentes stratégies d’agrégation
2.7 L’extraction d’un alignement
2.7.1 Le seuil . .
2.7.2 La similarité globale .
2.8 Les différentes approches pour l’extraction d’un alignement
2.9 Les systèmes d’identification d’un alignement basés sur l’apprentissage
automatique
2.9.1 Les systèmes basés sur les techniques de l’apprentissage supervisé
2.9.2 Les systèmes basés sur les techniques de l’apprentissage semi-supervisé
2.10 Les systèmes d’alignement existants
2.11 Conclusion
3 Algorithmes de résolutions
3.1 Introduction .
3.2 Les algorithmes utilisés dans l’extraction d’un alignement
3.2.1 Algorithme de Karp .
3.2.2 Algorithme Hongrois .
3.2.3 Algorithme de flot .
3.2.3.1 Trouver un flot compatible .
3.2.3.2 Circuit de coût strictement négatif
3.3 Les algorithmes d’apprentissage .
3.3.1 La méthode des K plus proches voisins
3.3.2 La méthode des centres mobiles .
3.3.3 La méthode Kmeans .
3.3.4 La méthode des nuées dynamiques .
3.3.4.1 Algorithme
3.4 Conclusion .
II Contribution 59
4 L’extraction d’un alignement d’ontologies 61
4.1 Introduction .
4.2 L’optimisation de l’extraction d’un alignement d’ontologie
4.3 L’approche proposée
4.4 Modélisation basée sur la théorie des flots .
4.4.1 Exemple .
TABLE DES MATIÈRES
4.5 Modélisation sous forme d’un problème d’affectation .
4.6 Plateforme informatique
4.7 Expérimentation .
4.7.1 Comparaison avec l’algorithme de Karp (Données synthétiques)
4.7.2 Comparaison avec l’algorithme de Karp (Données réelles)
4.7.2.1 L’ensemble de données Anatomy
4.7.2.2 L’ensemble de données Directory .
4.7.2.3 L’ensemble de données LargeBio .
4.7.3 Comparaison avec l’algorithme Hongrois .
4.7.4 Autres mesures d’évaluations
4.8 Discussion . .
4.9 Conclusion . .
5 L’identification d’un alignement d’ontologies
5.1 Introduction . .
5.2 L’approche proposée .
5.2.1 Le cadre conceptuel .
5.2.2 Le modèle proposé 5.3 Transformation du problème de l’alignement des ontologies en un problème de classification . B
5.4 Description des différentes méthodes .
5.4.1 La méthode des K moyennes (Kmeans)
5.4.2 La méthode des centres mobiles
5.4.3 La méthode des nuées dynamiques
5.4.4 la méthode des K plus proche voisins (KNN)
5.5 Plateforme Informatique
5.6 Expérimentation
5.6.1 Description des cas de tests
5.6.2 Critères d’évaluation . .
5.6.3 Comparaison entre les différentes méthodes d’apprentissage non
supervisé avec et sans la disponibilité de l’alignement de référence 99
5.6.4 Comparaison entre l’apprentissage supervisé et non supervisé
5.6.5 Comparaison entre l’apprentissage non supervisé et les autres systèmes. .
5.6.6 Comparaison selon la métrique temps d’exécution
5.6.7 Discussion .
5.7 Conclusion .
Conclusion générale
Télécharger le rapport complet