État de l’art : Annotation sémantique de documents, peuplement et enrichissement d’ontologie
L’annotation sémantique de documents
Cette section définit l’annotation et plus précisément l’annotation sémantique [Oren et al. 2006]. Elle explicite les procédés existants pour réaliser une annotation.
L’annotation est un processus qui vise à attacher des données complémentaires à d’autres données. En général, celle-ci concerne des documents textuels, mais on peut aussi annoter d’autres éléments, comme des images, procédé qui consiste à assigner automatiquement une légende ou des mots-clés à une image numérique. Cet état de l’art se focalise sur l’annotation de documents textuels. L’annotation de documents est un processus qui vise à attacher des informations complémentaires (métadonnées) au contenu textuel d’un document. L’annotation sémantique de documents est un type d’annotation bien précis. Les contenus textuels sont reliés à des informations sémantiques les concernant, c’est-à-dire en relation avec l’identité sémantique des données annotées.
Exemple 1. Prenons la phrase « Paris est la capitale de la France ». Supposons qu’on souhaite attacher des informations sémantiques à cette phrase, en utilisant la ressource Wikipédia, une encyclopédie universelle et multilingue. Un résultat d’annotation sémantique possible serait « (Paris, https://fr.wikipedia.org/wiki/Paris) est la capitale de la (France, https://fr. wikipedia.org/wiki/France) ». Ainsi, des méta données (pages Wikipédia) sont attachées à certains fragments de la phrase.
Les méthodes d’annotation sémantique : attachement d’informations complémentaires à des fragments textuels au sein d’un document
Les méthodes d’annotation sémantique de documents peuvent être classées en deux catégories [Reeve 2005] : (1) basées sur l’utilisation de patrons et (2) basées sur l’application de techniques d’apprentissage automatique [Manning & Schütze 1999]. Les annotations consistent en général à typer une entité. Les méthodes d’annotation sémantique basées sur l’utilisation de patrons utilisent des patrons, définis manuellement ou découverts. Un patron est une forme syntaxique qui, si elle est reconnue dans un texte, permet d’associer par règle, une annotation à l’un de ses composants. Par exemple, « X was born in Y » est un patron permettant d’annoter X comme une personne. Pour découvrir des patrons automatiquement, la plupart des approches suivent la méthode décrite dans [Brin 1998] : on utilise un ensemble de documents et un ensemble initial d’entités. Les documents sont analysés afin d’identifier les formes syntaxiques faisant intervenir ces entités. Par exemple, si on dispose d’une liste de livres avec leurs auteurs respectifs, nous pouvons trouver dans des documents des références à ces livres et examiner leur contexte. « X by Y » pourra être un patron trouvé reliant un livre X écrit par un auteur Y. Il permettra par la suite d’annoter les entités correspondantes à ce patron en tant que livre et auteur. De nouveaux patrons et de nouvelles annotations peuvent être découverts pendant ce processus, qui s’arrête quand plus rien de nouveau ne peut être découvert (ni patrons, ni annotations).
D’autres méthodes d’annotation sémantique appliquent des techniques d’apprentissage automatique. Les méthodes probabilistes se basent sur des modèles statistiques pour prédire l’annotation d’un élément en fonction des autres éléments d’un document. Elles sont par exemple utilisées pour annoter les mots d’une phrase en fonction de leur catégorie grammaticale (part-of-speech tagging) : nom, verbe, adjectif, etc. D’autres méthodes [Vargas-Vera et al. 2002, Handschuh et al. 2002] mettent en œuvre de l’induction et ont pour but de générer des règles d’extraction d’informations, plus précisément des règles permettant de découvrir des instances de concepts donc de faire des annotations. Pour cela, elles utilisent un ensemble d’entraînement annoté et généralisent les exemples issus de cet ensemble pour construire des règles linguistiques ou bien structurelles.
Dans ces deux types d’approche, l’idée est de rechercher les fragments textuels qui mentionnent une entité dans des documents.
Les méthodes d’extraction d’informations se sont beaucoup focalisées sur un processus d’annotation particulier : l’annotation (ou la reconnaissance) des entités nommées [Nadeau & Sekine 2007] dans des textes. Une entité nommée (EN) est une unité textuelle particulière qui réfère à un élément unique existant : un pays, un acteur, un livre, etc. La reconnaissance d’entités nommées est une sous-tâche de l’extraction d’information de documents textuels. Elle consiste à rechercher des objets textuels (c’est-à-dire un mot ou un groupe de mots) catégorisables dans des classes : noms de personnes, noms d’organisations ou d’entreprises, noms de lieux, quantités, distances, valeurs, dates, etc.
Exemple 2. Prenons la phrase : « William Bradley Pitt, dit Brad Pitt, est un acteur et producteur de cinéma américain né le 18 décembre 1963 à Shawnee, dans l’Oklahoma. » Cette phrase fait référence à de multiples entités nommées (noms de personnes, lieux, dates). Elle peut être annotée comme suit :
« (William Bradley Pitt, PERSONNE), dit (Brad Pitt, PERSONNE), est un acteur et producteur de cinéma américain né le (18 décembre 1963, DATE) à (Shawnee, LIEU) dans l’(Oklahoma, LIEU). » .
Diverses approches d’annotation et d’extraction d’informations ont été mises en œuvre au sein d’outils. Beaucoup de ces systèmes, comme KIM [Popov et al. 2004], SOFIE [Suchanek et al. 2009] ou C-PANKOW [Cimiano et al. 2005b] extraient des groupes nominaux correspondant à des entités nommées. Celles-ci sont repérables grâce à des grammaires formelles souvent manuellement définies ou bien apprises. Certaines approches se basent sur des frameworks d’extraction d’informations existants. Par exemple, KIM se base sur le framework GATE [Cunningham et al. 2011] qui contient beaucoup de composants utiles pour l’extraction d’informations (tokenizers, part-of-speech taggers, gazetteers, etc.).
Plusieurs outils d’annotation exploitent des bases de connaissances existantes (Wikipedia, DBpedia) afin d’annoter les entités nommées d’un texte. Ainsi, DBpedia Spotlight [Mendes et al. 2011, Daiber et al. 2013], Wikifier [Cheng & Roth 2013, Ratinov et al. 2011] ou encore AIDA [Yosef et al. 2011] sont des outils permettant d’associer à des fragments textuels les pages de DBpedia (dans le cas de DBpedia Spotlight) ou de Wikipedia (pour Wikifier et AIDA) qui leur correspondent.
L’identification d’entités qui ne sont pas des entités nommées est beaucoup plus délicate car aucune base ne répertorie a priori l’ensemble de ces entités et encore moins les expressions linguistiques qui leur sont associées. Ces ensembles d’entités et la terminologie propre au domaine doivent donc être recueillies pour construire la « gazeteer » (liste) adaptée à un domaine particulier. Par exemple, [Amardeilh & Damljanovic 2009] prétraitent l’ensemble des termes présents dans les différentes ressources d’une ontologie (classes, instances, propriétés, valeurs de propriétés) pour en extraire un ensemble de lemmes à partir desquels est constituée la « gazeteer » associée à cette ontologie. D’autres approches exploitent la structure du document à annoter. Par exemple, dans [Amardeilh et al. 2005], la structure d’un document est représentée sous la forme d’un arbre conceptuel dont chaque nœud est mis en correspondance avec un concept de l’ontologie via des règles définies manuellement. De même, [Aussenac-Gilles et al. 2013] définissent des règles d’extraction en exploitant la structure hiérarchique exprimée par les marqueurs typo-dispositionnels (police en gras, en italique, symbole de ponctuation’:’) au sein d’un ensemble de fiches de même format .
Les approches d’annotation décrites jusqu’ici font référence à l’attachement d’informations complémentaires (métadonnées) à des fragments textuels au sein d’un document. Les approches décrites par la suite cherchent à attacher des informations complémentaires non pas à des éléments mentionnés dans un document mais à un document tout entier. Ces approches évaluent la proximité entre la description d’une entité (texte plus ou moins long) et des éléments d’annotation (d’autres documents, des instances de concepts, des concepts).
Les méthodes d’annotation sémantique : évaluation de la proximité entre la description d’une entité et les éléments utilisables pour l’annoter
Cette section relate divers travaux visant à effectuer un lien entre une description d’entité et des éléments particuliers (documents, instances de concepts, concepts) utilisés pour annoter cette description considérée comme un tout. Tout d’abord, certains travaux se basent sur des mesures de similarité. Ainsi, l’objectif de [Kessler et al. 2012] est de vérifier l’adéquation entre des offres d’emploi et des candidatures à ces offres (CV et lettres de motivation), c’est-à-dire évaluer la proximité entre la description d’un élément général (une offre d’emploi) et celles d’éléments plus particuliers (des candidatures). Après avoir été soumis à différents traitements, tous les documents manipulés sont représentés par des vecteurs qui sont ensuite comparés en utilisant des combinaisons de diverses mesures de similarité (cosinus, Minkowski, …). Ceci permet de classer les candidatures. De plus, pour être sûr qu’une candidature ne soit pas trop vite écartée, sa similarité avec le vecteur représentant l’offre d’emploi, enrichie des candidatures jugées pertinentes par un recruteur, est aussi évaluée.
Dans [Béchet et al. 2011], l’objectif est d’annoter des mots ou expressions désignant des services d’hôtels décrits par des hôteliers. Par exemple, un même service peut être décrit comme « climatisation » par un hôtelier et par « air conditionné » par un autre. Il en va de même pour beaucoup de services (« wifi »/ »internet sans fil », « coffre-fort »/ »coffre »/ »coffre-fort électronique », etc). L’objectif de ce travail est d’associer une expression de service hôtelier à un concept la décrivant. La liste des services de chaque hôtel est définie par l’hôtelier avec son propre vocabulaire, sous la forme d’une liste. Les auteurs proposent une approche en deux étapes. La première étape consiste à définir une structure hiérarchique des services avec l’aide d’un expert qui va aussi choisir un premier ensemble d’instances pour peupler cette structure. Ces instances sont obtenues à partir d’une liste d’instances de services prédéfinie par un partenaire. Ainsi, le concept « remise en forme » est instancié par les services « salles de gym », « centre fitness », « centre de santé », etc. La seconde étape est le peuplement automatique de la structure hiérarchique avec les services des hôtels. Autrement dit, il s’agit de relier chacun des services définis par les hôteliers à la structure hiérarchique. On suppose que les nouveaux services sont littéralement proches des instances initialement créées. En effet, on ne peut rapprocher des termes comme « wifi » et « internet sans fil » que si le concept qui leur est associé a été instancié avec, différentes instances telles que chacun des termes est littéralement proche d’au moins une de ces instances. Chaque nouveau service est comparé aux instances existantes et sera considéré comme une instance du concept correspondant à l’instance dont il est le plus proche. La proximité entre un nouveau service et une instance pré-existante est basée sur un calcul de similarité utilisant les n-grammes.
Ces deux travaux évaluent une proximité grâce à des mesures de similarité. Ces mesures de similarité sont utilisées sur divers types d’objets : des mots ou expressions textuelles [Béchet et al. 2011] ou bien des vecteurs représentant les documents [Kessler et al. 2012]. D’autres travaux utilisent des techniques d’apprentissage automatique.
Dans [Alec et al. 2014b, Alec et al. 2014a, Alec et al. 2016f], on cherche à annoter des descriptions de produits avec des éléments qui ne sont pas des entités nommées. Par exemple, on aimerait associer une description d’un jouet à ses catégories (jeu de construction, jeu de hasard, etc.) et ses caractéristiques (concentration, dextérité, coopération, etc.). Les descriptions sont non structurées, sans aucune homogénéité, et ne mentionnent pas ces éléments. Comme des mesures de similarité ne sont pas possibles dans ce contexte, une première annotation manuelle est effectuée par un expert, aidé par un outil d’aide à l’annotation qui va orienter son choix en lui proposant et suggérant des annotations via une interface graphique. Par la suite, cet ensemble annoté est utilisé comme base d’exemples par une technique d’apprentissage automatique (SVM). Les documents sont représentés d’une manière vectorielle. Plusieurs représentations sont testées, de type sac-de-mots [Salton & McGill 1986]. Ainsi, l’approche peut prédire pour un document donné si celui-ci doit être annoté par un concept (une catégorie ou une caractéristique) ou non.
|
Table des matières
INTRODUCTION
1 Introduction
2 Cadre de travail et problématique
2.1 L’application de recommandation affinitaire proposée par Wepingo
2.1.1 La recommandation affinitaire
2.1.2 Un travail automatisé de peuplement d’ontologie
2.1.3 Description fonctionnelle du problème à résoudre
2.2 Problématique
2.2.1 Analyse approfondie du problème
2.2.2 Une approche basée sur une ontologie
Conclusion
I Annoter des documents via un peuplement et un enrichissement d’ontologie
3 État de l’art : Annotation sémantique, peuplement et enrichissement d’ontologie
3.1 L’annotation sémantique de documents
3.1.1 Les méthodes d’annotation sémantique : attachement d’informations complémentaires à des fragments textuels au sein d’un document
3.1.2 Les méthodes d’annotation sémantique : évaluation de la proximité entre la description d’une entité et les éléments utilisables pour l’annoter
3.2 Peuplement et enrichissement d’ontologie
3.2.1 Repérage d’éléments ontologiques dans des textes et leur extraction
3.2.2 Raisonnement pour dériver des concepts complexes non présents dans les textes à partir de concepts primitifs extraits
3.2.3 Extraction et formalisation de définitions de concepts
3.3 Positionnement de notre travail par rapport à l’état de l’art
Conclusion
4 Une approche de peuplement et d’enrichissement d’ontologie
4.1 Description de l’approche
4.1.1 Les entrées de l’approche
4.1.2 Description fonctionnelle
4.1.3 Une problématique sous l’hypothèse du monde clos
4.2 Les tâches de l’approche
4.2.1 Étape 1 : Extraction de données
4.2.2 Étape 2 : Raisonnement sur l’ontologie peuplée
Conclusion
5 Expérimentations
5.1 Procédure d’évaluation
5.2 Versions des outils utilisés
5.3 Les données utilisées
5.3.1 Le domaine des destinations de vacances
5.3.2 Le domaine des films
5.4 Résultats obtenus
5.4.1 Expérimentations sur l’ensemble de test
5.4.2 Expérimentations sur un autre ensemble de documents
5.4.3 Expérimentations sur les tâches d’extraction
5.5 Expérimentations évaluant l’intérêt de la complétion des données
5.6 Obtenir des définitions explicites : un avantage pour raffiner les annotations
Conclusion
II Peupler une ontologie avec des données du LOD
6 État de l’art : Acquisition de données du Web des données
6.1 L’incomplétude du Web des données
6.2 Accès aux données du LOD : problème d’hétérogénéité sémantique
6.3 Accès aux données du LOD : problème d’accès complexe
6.3.1 Intégration de données
6.3.2 Médiation de données
6.3.3 Facilitation de l’accès aux données
6.4 Positionnement de notre travail par rapport à l’état de l’art
Conclusion
7 Modèle d’acquisition de données du LOD
7.1 Cas d’utilisation illustrant nos objectifs
7.2 Modèle d’acquisition de valeurs de propriétés du LOD
7.2.1 Modèle de correspondance
7.2.2 Modèle de spécification de chemins d’accès à des propriétés
7.2.3 Mécanismes de traitement des valeurs de propriétés collectées
7.3 Conclusion
8 Génération automatique de requêtes à partir du modèle d’acquisition111
8.1 Génération automatique des requêtes SPARQL
8.1.1 Processus de génération de requêtes SPARQL 1.1
8.1.2 Présentation des différents patrons
8.2 Déroulement de la génération de requêtes
Conclusion
9 Conclusion et perspectives de travail
9.1 Conclusion
9.2 Perspectives
9.2.1 Les perspectives à court terme
9.2.2 Les perspectives à moyen terme
9.2.3 Les perspectives à long terme et les problèmes ouverts
CONCLUSION
Références