Normalisation de termes complexes par sémantique distributionnelle guidée par une ontologie (Normalization of complex terms with distributional semantics guided by an ontology) (2017)

Abstract: Nous proposons dans cet article une méthode semi-supervisée originale pour la création de représentations vectorielles pour des termes (complexes ou non) dans un espace sémantique pertinent pour une tâche de normalisation de termes désignant des entités dans un corpus. Notre méthode s’appuie en partie sur une approche de sémantique distributionnelle, celle-ci générant des vecteurs initiaux pour chacun des termes extraits. Ces vecteurs sont alors plongés dans un autre espace vectoriel construit à partir de la structure d’une ontologie. Pour la construction de ce second espace vectoriel ontologique, plusieurs méthodes sont testées et comparées. Le plongement s’effectue par entraînement d’un modèle linéaire. Un calcul de distance (en utilisant la similarité cosinus) est enfin effectué pour déterminer la proximité entre vecteurs de termes et vecteurs de concepts de l’ontologie servant à la normalisation. La performance de cette méthode a atteint un rang honorable, ouvrant d’encourageantes perspectives.

## introduction la normalisation consiste à annoter des mots ou des combinaisons de mots avec une ou plusieurs catégories sémantiques. la normalisation rencontre plusieurs difficultés, comme la variabilité importante de la morphologie des termes, qu'ils soient représentés par un mot ou par plusieurs @xcite . les termes multi-mots présentant des structures morphosyntaxiques variées et des imbrications complexes, tels que les groupes nominaux complexes (complex noun phrase) sont particulièrement difficiles à étiqueter par des catégories. en effet, la morphologie des labels des catégories sémantiques n'est pas nécessairement proche de la morphologie des termes à annoter. or, dans les textes de la littérature spécialisée, les groupes nominaux complexes se retrouvent en abondance @xcite . une approche par similarité morphologique entre terme et étiquette sémantique apparaît donc limitée pour effectuer cette tâche @xcite . une autre difficulté vient du nombre important de catégories sémantiques souvent à utiliser, rendant une approche par classification supervisée coûteuse en annotation manuelle (e.g. plus de trois millions de concepts dans le metathesaurus biomédical de l'umls de catégories pour le thésaurus biomédical umls @xcite ). une ontologie informatique est une représentation formelle et partielle de propriétés générales d'un ensemble de connaissances, et représente donc un objet manipulable par un programme informatique. dans le cas de cette article, nous n'emprunterons aux ontologies que la notion de concept (e.g. un concept labélisé 'chien' qui représente l'abstraction de tous les animaux domestiques de l'espèce canis lupus) et celle de relation hiérarchique (e.g. le concept 'labrador' hérite du concept 'chien' qui hérite lui-même du concept 'animal', etc.). les concepts d'une ontologie peuvent alors être utilisés pour représenter des catégories sémantiques de façon formelle et structurée. une alternative aux approches par classification supervisée ou aux approches morphologiques consiste à calculer la proximité sémantique entre des termes par sémantique distributionnelle. c'est une approche fondée sur la corrélation entre la similarité de sens et la similarité de distribution des unités sémantiques (mot, combinaison de mots, phrase, documents, …) @xcite . une unité sémantique peut être représentée par un vecteur construit à partir de la distribution des informations de contexte dans lesquels elle est trouvée. la proximité des vecteurs dans cet espace est alors transposable à une proximité sémantique @xcite . il existe aujourd'hui de nombreuses méthodes de génération de tels espaces vectoriels, tel que word2vec @xcite , mais celles-ci se concentrent habituellement sur les jeux de données massifs @xcite dans lesquels l'information est relativement répétée. la question qui nous intéresse ici est : comment utiliser la sémantique distributionnelle pour normaliser les termes par une ontologie ? c'est-à-dire comment relier l'information distributionnelle aux concepts d'une ontologie ? et comment répondre à cette question pour des relativement petits corpus et un grand nombre de concepts ? cet article propose une méthode s'appuyant sur la génération de vecteurs dans un espace vectoriel des termes (evt) ainsi que sur l'étude et la comparaison de vecteurs générés pour former un espace vectoriel des concepts de l'ontologie (evo), puis sur le plongement de l'evt dans l'evo. les données utilisées sont celles de la tâche de catégorisation bacteria biotope (tâche 3) de bionlp shared task en 2016 @xcite . les documents sont des références de pubmed, composées de titres et de résumés d'articles scientifiques dans le domaine de la biologie. la tâche consiste, étant donné les entités du corpus dénotant les habitats bactériens (i.e. des termes extraits), à leur assigner un concept de l'ontologie. le corpus bacteria biotope est divisé en trois : le corpus d'entraînement, le corpus de développement et le corpus de test. dans le corpus d'entraînement et le corpus de développement les concepts des entités sont données : elles nous ont servi à entraîner notre méthode. le corpus de test est celui pour lequel les concepts sont à prédire : il nous servira à évaluer notre méthode pour la tâche de normalisation. chacun de ces corpus a été annoté manuellement. voici un résumé de leurs caractéristiques : bb entr. dév. test total documents 71 36 54 161 mots 16 295 8 890 13 797 38 982 entités 747 454 720 1 921 entités distinctes 476 267 478 1 125 concepts 825 535 861 2 221 concepts distincts 210 122 177 329