Par ailleurs le liage des bases de connaissances, qui permet d’inter-connecter celles-ci et de favoriser leur uniformisation ou standardisation en terme de format d’échange grâce au web
Trang 1UNIVERSITÉ NATIONALE DU VIETNAM À HANỌ INSTITUT FRANCOPHONE INTERNATIONAL
SONFACK SOUNCHIO Serge
LIAGE DES JEUX DE DONNÉES COMPLÉMENTAIRES
A L’AIDE DE MÉTHODES D’AUGMENTATION DES GRAPHES DE CONNAISSANCES ET PLONGEMENT MULTIMODALS
MEMOIRE DE FIN D’ETUDE DE MASTER EN INFORMATIQUE
HANỌ-2019
Trang 2UNIVERSITÉ NATIONALE DU VIETNAM À HANỌ INSTITUT FRANCOPHONE INTERNATIONAL
SONFACK SOUNCHIO Serge
LIAGE DES JEUX DE DONNÉES COMPLÉMENTAIRES
A L’AIDE DE MÉTHODES D’AUGMENTATION DES GRAPHES DE CONNAISSANCES ET PLONGEMENT MULTIMODALS
spécialité: Systèmes Intelligents et Multimédia (SIM)
Code: Programme pilote
MEMOIRE DE FIN D’ETUDE DE MASTER EN INFORMATIQUE
Sous la direction de :
• PhD, enseignant chercheur au LIRMM, Kontantin TODOROV
• PhD, chargé de recheche à IRD Hanoi, Pierre LARMANDE
HANỌ-2019
Trang 3ATTESTATION SUR L’HONNEUR
J’atteste sur l’honneur que ce mémoire a été réalisé par moi-même et que les données et les résultats qui
y sont présentés sont exacts et n’ont jamais été publiés ailleurs La source des informations citées dans
ce mémoire a été bien précisée.
LI CAM ÐOAN
Tôi cam đoan đây là công trình nghiên cu ca riêng tôi Các s liu, kt qu nêu trong Lun văn là trung thc
và cha tng đc ai công b trong bt k công trình nào khác Các thông tin trích dn trong Lun văn đã đc ch
rõ ngun gc
SONFACK SOUNCHIO Serge
Trang 4SONFACK SOUNCHIO Serge
LIAGE DES JEUX DE DONNÉES COMPLÉMENTAIRES
A L’AIDE DE MÉTHODES D’AUGMENTATION DES GRAPHES DE CONNAISSANCES ET PLONGEMENT MULTIMODALS
LIÊN KT TRỊ CHI D LIU B SUNG
S DNG CÁC PHNG PHÁP S DNG CÁC HÌNH NH KIN THC
VÀ ÐA NĂNG DIVING
spécialité: Systèmes Intelligents et Multimédia (SIM)
Code: Programme pilote
MEMOIRE DE FIN D’ETUDE DE MASTER EN INFORMATIQUE
Sous la direction de :
• PhD, enseignant chercheur au LIRMM, Kontantin TODOROV
• PhD, chargé de recheche à IRD Hanoi, Pièrre LARMANDE
HANỌ-2019
Trang 5la chaleureuse collaboration
Cette année de Master Recherche n’était pas facile nécessitant beaucoup d’efforts A ceteffet je remercie ma famille pour le soutient moral, qu’elle m’a apporter durant tout ceparcours
Trang 6LIST OF FIGURES
2.1 Exemple de base de connaissances 5
2.2 Exemple de triplet 6
2.3 Exemple de plongement de mots dans un espace de deux dimensions 7
2.4 Plongement de graphe 8
2.5 Exemple de liage 9
2.6 Logo de AgroLD 10
2.7 La base de connaissances AgroLD 10
2.8 Problème visé 11
2.9 Données multimodales 12
3.1 Représentation des mots dans un espace à 2 dimensions 14
3.2 Architectures de CBOW et Skip-gram Efficient Estimation of Word Rep-resentations in Vector Space, Tomas Mikolov et al [15] 15
3.3 Régularité sémantique: Linguistic Regularities in Continuous Space Word Representations, Tomas Mikolov et al [17] 16
3.4 Extraction des triplets des tables: Annotating and searching web tables using entities, types and relationships, Limaye et al [13] 22
4.1 Plongement du corpus 30
4.2 Génération de poids TF-IDF 31
4.3 Agrégation des vecteurs 32
4.4 Workflow de méthode 34
4.5 représentation de l’évaluation 35
4.6 Importance des mots sur les tf-idf 37
4.7 Exemple de modèle sac à mots 38
4.8 Workflow de approche de base 38
Trang 75.1 Logo Debian 40
5.2 Logo Python 40
5.3 Logo Emacs 40
5.4 comparaison de du nombre d’entités 42
5.5 comparaison des mots utilisés 43
5.6 Visualization of corpus embeddings 44
5.7 Extracting properties information from graphs 45
5.8 TF-IDF des bases de mots des graphes de connaissances 45
5.9 Comparaison de l’approche de base et la solution proposée 47
Trang 8LIST OF TABLES
2.1 Classification des modèles de plongements lexicaux 84.1 Nombre de possibilité pour le choix de modèle de plongement du corpus 364.2 Nombre de possibilité pour le choix de modèle de plongement et le poids àutiliser pour 364.3 Nombre de possibilité pour le choix de modèle de plongement et le choix
de la propriété description des graphes de connaissances 36
Trang 9GLOSSAIRES ET ACRONYMES
AgroLD Agronomic Linked Data (AgroLD) C’est le projet créé pour mettre en place un
portail pour bioinformaticien et aux experts du domaine pour exploiter les modèles
de données homogènes en vue de générer efficacement des hypothèses de recherche
BOW Bag Of Words.
CBOW Continuous Bag Of Words.
IRD Institut de recherche pour le développement.
LIRMM Laboratoire d’Informatique, de Robotique et de Microélectronique de
Mont-pellier
NLP Natural Language Processing.
OBO Open Biological and Biomedical Ontology.
OWL Web Ontology Language.
RDF Resource Description Framework.
SPARQL SPARQL Protocol and RDF Query Language.
URI Uniform Resource Identifier.
W3C Le World Wide Web Consortium, abrégé par le sigle W3C, est un organisme de
standardisation à but non lucratif, fondé en octobre 1994 chargé de promouvoir
la compatibilité des technologies du World Wide Web telles que HTML5, HTML,
Trang 10WEB World Wide Web.
XML eXternded Markup Language.
Trang 11Ce rapport présente les travaux réalisés durant le stage de Master sur la problématique
de liage des bases de connaissances et dont la solution devrait inclure l’enrichissementmultimodal des dites bases et faire usage de techniques de plongement de mots
Dans la première partie du rapport nous analysons le sujet à fin de comprendre les termes
et concepts liés au sujet et dégager le problème principal A cet effet, les termes Web mantique, ontologie, RDF, plongement de mots, plongement de graphe, liage de donnéesont été définis, suivis par la présentation de la plate-forme AgroLD et le problème visé
sé-A la suite de cette analyse du sujet, nous exposons les différentes recherches liées auxliages de bases de connaissances et leurs enrichissements de façon générale, des méthodesd’augmentations des graphes de connaissances ainsi que les techniques de plongement demots et de graphes Ces outils et méthodes nous permettrons d’apporter une solution auproblème posé
Après cette étape qui constitue notre état de l’art, nous proposons une méthode menant
à une solution du problème soumis à notre étude et nous montrons par la suite commentnous avons implémentés la méthode
Cette implémentation est suivie par une expérimentation et une évaluation En ce quiconcerne l’évaluation, nous l’avons fait en deux partie; l’une avec les métriques comme
la précision, le rappel et le F-mesure et l’autre par comparaison à une méthode de base,utilisant les techniques similaires
Pour terminer, le document présente des perspectives qui peuvent non seulement améliorerles résultats obtenus mais aussi ouvrir d’autre champs de recherche
Mots clés: Données Ouvertes et Liées, Liage de Données, Enrichissement de Données,
Plongement de mots, Extration de Connaissances, AgroLD
Trang 12This report presents the work done during my Master’s internship on the problem ofknowledge graph linkage and whose solution should include the multi-modal enrichment
of these graphs and also make use of word embedding techniques
In first, we analyze the topic in order to understand the terms and concepts related to
it and to identify the main problem For this purpose, the terms like semantic Web,ontology, RDF, word embedding, graph embedding, graph linkage were defined, followed
by the presentation of the AgroLD platform and the problem we addressed
After this analysis, we expose research papers on based systems and based enrichments in whole, as well as graphs embedding techniques These tools andmethods will help us to build a solution to the problem we intended to solve
knowledge-After these, we propose a method to solve the problem and we show later how we mented the method This implementation is followed by experimentation and evaluation
imple-As far as evaluation is concerned, we did it in two parts; one with metrics such as cision, recall and F-measure and the other by comparison with a baseline using similartechniques
pre-Finally, the document presents perspectives that may not only improve the results tained but also open other research fields
ob-Key words:Linked Open Data, Data Linking, Knowledge Base Augmentation,
Knowl-edge Extraction, Words Embedding, AgroLD
Trang 132.1 Définitions 4
2.1.1 Web sémantique 4
2.1.2 Ontologie 4
2.1.3 Resource Description Format(RDF) 6
2.1.4 Plongement de mots ou Plongement lexical (Word embedding) 6
2.1.5 Plongement de graphe 8
2.1.6 Liage de données 9
2.2 Présentation AgroLD 10
2.3 Problème visé 11
3 État de l’art 13 3.1 Plongement 14
3.1.1 Plongement de mots 14
3.1.2 Plongement de graphes 16
3.2 Augmentation de graphes de connaissances 20
3.3 Liage des graphes de connaissances 23
3.3.1 Étapes fondamentales de liage 24
3.3.2 Liage entre texte et graphe de connaissances 26
3.3.3 Évaluation des systèmes de découverts de liens 27
4 Solution proposée et méthode d’évaluation 29 4.1 Solution proposées 30
4.2 Méthode d’évaluation 34
Trang 144.2.1 Métrique 34
4.2.2 Construction de l’évaluation 35
4.3 Plan d’évaluation 35
4.4 Approche de base 37
5 Expérimentation et résultats obtenus 39 5.1 Analyse des données 40
5.1.1 Environnement de développement 40
5.1.2 Hétérogénéité et complémentarité des données 41
5.1.3 Le nombre d’entités 41
5.1.4 Les mots utilisés 42
5.2 Expérimentation 43
5.2.1 Plongement des mots du corpus 43
5.2.2 Distribution de mots dans les graphes 44
5.2.3 Agrégation des vecteurs de chaque entité des graphe 45
5.2.4 Comparaison avec l’approche de base 47
6 Conclusion et perspectives 48 7 Annexe 50 7.1 Librairies Python utilisées 50
7.1.1 Requirements 50
Trang 151 INTRODUCTION
Dans l’article de Agronomic Linked Data (AgroLD): A knowledge-based system
to enable integrative biology in agronomy de Venkatesan et al [31], l’agronomie
est présentée comme un domaine de recherche pluridisciplinaire qui inclue la biologiemoléculaire végétale, la physiologie et l’agro-écologie, donc l’objectif vise à améliorer laproduction végétale et à étudier l’impact environnemental sur les cultures En d’autreterme, l’agronomie se trouve au centre de plusieurs disciplines scientifiques bien distinctes.Ces disciplines qui contribuent à celle-ci existent de façon indépendantes et chacune dis-pose de sa base de connaissances, souvent sous un format différent des autres et accessibleavec un langage de requêtes différent des autres Par conséquent les données et connais-sances de ces disciplines complémentaires se trouvent éparpillés, difficiles d’accès par tous,peu exploitables et parfois avec des doublons
Par ailleurs le liage des bases de connaissances, qui permet d’inter-connecter celles-ci et
de favoriser leur uniformisation ou standardisation en terme de format d’échange grâce
au web sémantique seraient d’une importance capitale pour les chercheurs de chaquediscipline et ceux de l’agronomie en particulier, car cette interconnexion leur permettrad’accéder aux différentes données par le biais d’un même protocole et langages de requêtesimplifié Toutes choses qui contribuera non seulement à la mutualisation des connais-sances, mais aussi au développement de nouvelles connaissances et par conséquent de faireavancer les sciences et l’agronomie en particulier
De ce fait, la problématique sur laquelle nous travaillerons consistera à trouver une ode de liage des bases de connaissances complémentaires sur les entités qui renvoient à
méth-la même réalité en fessant usage de l’augmentation de ces bases de connaissances avecd’autres types de données comme du texte et du plongement des mots En d’autres ter-mes, nous devons trouver un moyen d’enrichir les graphes de connaissances avec d’autres
Trang 16une transformation des graphes de connaissances en vecteurs.
Dans la suite de ce document, nous avons une partie contexte qui présente l’environnementdans le quel nous nous trouvons ainsi que le problème que nous avons à résoudre Par lasuite nous avons une partie solution et une partie expérimentation
Dans la partie solution, nous présentons notre apport qui dans un premier temps estl’élaboration et développement d’une méthode de détection d’entités des graphes de con-naissances renvoyant à la même réalité, qui va de l’extraction des caractéristiques desentités des graphes de connaissances au calcul de similarité cosinus et euclidien en pas-sant par le filtrage des mots pertinents, le calcul de leurs pondérations et leur agrégation.Par la suite, nous présentons une méthode de base que nous avons développés en utilisant
la technique de sac à mots pour construire les vecteurs des graphes de connaissances.C’est cette dernière qui sera utilisée pour la comparaison avec notre solution dans lapartie expérimentation
Trang 172 CONTEXTE ET PROBLÉMATIQUE
Pour une bonne compréhension de notre sujet et dans l’optique d’en proposer une solutionadéquate, nous allons dans cette partie de notre travail commencer par la définition destermes et concepts clés relatifs à notre sujet Par la suite, nous présenterons l’outil etl’environnement dans lesquels nos données sont extraites et finirons par une exposition
du problème visé et à résoudre
Trang 182.1 Définitions
2.1.1 Web sémantique
Le web sémantique est une évolution du Web basée sur le liage de données et doté d’un
vocabulaire d’annotation En se basant sur le fait que le contenu est aussi compréhensibles
par les humains, ses données sont stockées dans un format (RDF 1) traitable pour lesmachines et dotés d’une sémantique formelle Ainsi, ce format permet aux machinesd’inférer des nouvelles connaissances et de tirer des conclusions à partir de ces graphes
de connaissances Pour faciliter l’échange d’informations sémantiques, la W3C à définir
un certain nombre de standards pour la représentation ces informations, comme le RDF,
le OWL2, Turtle,N-Triples, Json-LD,
Étant donné, le web sémantique permet de rendre tout type de ressource accessible surInternet et grâce aux ontologies et langages de représentation de fournir une sémantiquecommune à ces ressources et par de même rendre possible leur interprétation
2.1.2 Ontologie
L’ontologie, bien qu’ayant une étymologie philosophique dispose de plusieurs définitions
au sens informatique La définition qui retient notre attention est celle de Rudi Studer
et al dans leur article knowledge engineering : principles and methods [26] qui
stipule qu’une ontologie est une spécification formelle et explicite d’une conceptualisationpartagée
Ainsi une ontologie permet de définir un vocabulaire commun et accepté entre des sonnes, pour partager les connaissances dans un domaine donné Elle permet aussi dedéfinir une interprétation de concepts du domaine et les relations entre ces concepts Lafigure 2.1 montre un exemple de graphe de connaissances avec la partie ontologie
per-Une ontologie permet non seulement le partage, mais aussi la réutilisation de sances d’un domaine, impliquant une compréhension sans ambiguïté de celle-ci et sert demoyen de communication entre les personnes et les machines
connais-1 Resource Description Framework
2 Web Ontology Language
Trang 19Figure 2.1 – Exemple de base de connaissances
Selon Marzanah A Jabar et al dans l’article Overview of types of ontology in the
software development process [11], il existe plusieurs types d’ontologies :
• ontologies supérieurs ou ontologies fondamentales
Elles expriment des idées communes, telles que l’espace, le temps, les matériaux et lesobjets Elles ne sont pas spécifiques à un domaine ou un problème particulier Ex-emple Basic Formal Ontology (BFO), Business Objects Reference Ontology(BORO)
Trang 202.1.3 Resource Description Format(RDF)
Bob DuCharme [4] dans son ouvrage Learning SPARQL présente le RDF
simple-ment comme un mode de stockage de données dans le quel une unité d’information est
appelé triplet (voir figure 2.2).
Un triplet est constitué d’un sujet, un prédicat/propriété, et un objet; les sujets et prédicats sont des ressources accessibles de façon unique sur Internet, grâce à leur URI Lorsqu’on parle de Resource: il s’agit de tout ce qui peut avoir une URI Exemple:
personne, page, table
Desciption:ce sont les caractéristiques de la ressource et la relation entre une ressource
et d’autre
Framework: c’est la formalisation de la représentation des données c’est-à-dire le
lan-gage, la syntaxe
Figure 2.2 – Exemple de triplet
Notons que les triplets RDF sont stockés sur fichier texte aux chaînes sérialisés Il existe
plusieurs formats de stérilisation parmi les quels le RDF/XML, Turtle, OWL qui sont desstandards de la W3C , le N-triples qui dérive de N3 et le XML qui était la spécification
en 1999
2.1.4 Plongement de mots ou Plongement lexical (Word embedding)
C’est un ensemble de méthodes de représentation des mots sous forme de vecteurs continuspermettant de saisir les informations sémantiques et syntaxique des dits mots venant d’ungrand corpus de textes non labelisés (voir figure 2.3)
Trang 21Figure 2.3 – Exemple de plongement de mots dans un espace de deux dimensions
Les modèles de plongement de mots sont conçus de façon à se que l’hypothèse
distri-butionnelle selon laquelle les mots apparaissant dans des contextes similaires ont tendance à avoir le sens similaire soit vraie Ces propos viennent de l’article
How to generate a good word embedding de Sai et al [12]
Selon le même auteurs, deux critères permettent de classer les modèles de plongement demots:
• La relation entre le mot w et son contexte c
Dans un premier cas, utiliser une probabilité conditionnelle p(c|w) pour prédire un
mot donné en se basant sur son contexte Dans un deuxième cas, utiliser une
prob-abilité conjointe de la paire (c, w) dans le corpus pour prédire les représentation de
score élevé
• La représentation du contexte c
On peut utiliser des stratégies simples qui consiste à utiliser un des mots de la fenêtredonnée comme la représentation du contexte Ces stratégies ignorent l’ordre de motspour accélérer les calculs Soit utiliser la moyen des représentations vectorielles desmots du contexte comme le contexte Cette méthode ignore l’ordre des mots pouraccélérer les calculs soit utiliser la concaténation de la représentation des mots
du contexte Ce qui conserve l’ordre des mots Soit utiliser la compositionnalitésémantique des mots du contexte en tant que représentation du contexte
La figure 2.1 ci-dessous présente une classification de modèles de plongements lexicaux
Trang 22Modèle Relation entre w et c Représentation de c
Continuous bag of words (CBOW) c predict w Average
Log-bilinear language (LBL) model c predict w Compositionality
Neural network language model (NNLM) c predict w Compositionality
Collobert and Weston (C&W ) Scores w, c Compositionality
Table 2.1 – Classification des modèles de plongements lexicaux
2.1.5 Plongement de graphe
Soit G un graphe, G = (V, E), le plongement de graphe est définie par Goyal et al.
dans l’article Graph embedding techniques, applications, and performance: A
survey [7] comme une fonction
f : v i → y i ∈ R d , ∀i ∈ N tel que d |V |
La fonction f préserve certaines mesures de proximités définies dans le graphe G La
figure 2.4 illustre une exemple de transformation d’un graphe en vecteur dans une espace
de deux dimensions Nous pouvons voir que, ce plongement conserve un rapprochemententre les groupes d’entités ayant des liens directs
Figure 2.4 – Plongement de graphe
Après plongement, les auteurs présentent des tâches qui peuvent être appliquées sur lesgraphes ainsi que les méthodes utilisées pour mener ces tâches:
1 Classification des noeuds
Il existe en général deux catégories d’approches:
• random walk
• extraction des caractéristiques des noeuds
2 Prédiction des liens
Pour la prédiction des liens, nous avons:
• les approches basées sur la similarité
Trang 23• les approches basées sur le maximum de vraisemblance (likelihood model)
• les approches basées sur les modèles probabilistes
3 Clustering
Cette tache est possible généralement avec deux techniques:
• modèles basées sur les attributs
• modèles qui maximisent/minimisent la distance inter-cluster/extra-cluster
4 Visualisation
2.1.6 Liage de données
Le liage d’entité est décrit par Achichi et al dans l’article A survey on web data
linking [1] comme la tache qui consiste à identifier des entités des bases de connaissances
différentes qui renvoient à la même réalité et à leur lier au travers de leur propriété
sameAs (confère figure 2.5) Selon ces auteurs, la problématique de liage s’appelle aussi résolution d’entité, résolution de co-référence ou duplication de référence dans
les autres domaine comme NLP ou des bases de données relationnelles.
Une définition formelle du liage de données est celle de Nentwig et al décrite dans leur
article A survey of current link discovery frameworks [18] Elle est illustrée comme
suit:
Soit S et T deux ressources
Soit R une relation
Lier S et T consiste à rechercher la paire {s, t} de sorte que:
s ∈ S et t ∈ T tel que la relation R est satisfaite
Lorsque S et T sont les bases de connaissances, alors la paire {s, t},tel que s ∈ S et t ∈ T sont en relation si s et t renvoient à la même réalité
Figure 2.5 – Exemple de liage
Trang 242.2 Présentation AgroLD
Figure 2.6 – Logo de AgroLD
AgroLD dont le logo est la figure 2.6 disponible sur le lien www.agrold.org, [31] est uneplate-forme basée sur les technologies de Web Sémantique, qui regorge des données deplusieurs espèces de plantes parmi lesquels le riz, le blé, les arabidopsis Elle intègre desconnaissances venant des ontologies suivantes: Gene Ontology (GO) très utilisée pourl’annotation de gènes, Plant Ontology (PO) très utilisée pour les plantes, Plant TraitOntology (TO) and Plant Environment Ontology (EO)
Figure 2.7 – La base de connaissances AgroLD Source:Agronomic Linked Data (AgroLD): A knowledge-based system to enable integrative biology in
agronomy [31]
Trang 25De plus, ces données bien connues et utilisée par les chercheurs des domaines de la biologie
et l’agronomie viennent des plates-formes et bases de données différentes (confère figure2.7) qui se veulent complémentaires Parmi les plates-formes et données qui s’y trouvent,
de requêtes sur plusieurs noeuds pour ainsi faciliter la résolution de certains problèmebiologique et agronomique
2.3 Problème visé
Pour apporter une solution à la préoccupation de liage des graphes de connaissancescomplémentaire avec augmentation multimodale et plongment de mots, trois grandes in-terrogations nous interpelle Les réponses à ces questions constitueront la solution à notresujet
D’abord, notons que nos données ont une particularité, qui est le fait qu’elles sont plémentaires C’est-à-dire que les entités des différents graphes partagent des propriétés
com-en commun et qui peuvcom-ent avoir des valeurs différcom-entes
Figure 2.8 – Problème visé
Trang 26C’est en raison de cette complémentarité que nous devons enrichir nos graphes de naissances pour faciliter la correspondance des entités qui renvoient à la même réalité,d’ó notre première préoccupation, à savoir:
con-Comment enrichir nos bases de connaissances avec des données externes? L’objectif estd’augmenter les possibilités de retrouver les éléments qui se ressemblent ou pas
Pour le choix des données d’enrichissement, nous supposons que le corpus mis à notredisposition à été bien réfléchis et donc cette question ne sera pas abordée dans notretravail
Néanmoins, nous devons garder en esprit que l’enrichissement peut aussi se faire avecdonnées de type graphe, vidéo, image, audio ou même des micro-blogs venant des réseauxsociaux, permettant soulever la multi-modalité (figure 2.9)
Figure 2.9 – Données multimodales
Ensuite, comment plonger les graphes dans le même espace vectoriel ?
Quelle mesure de similarité adopter pour identifier les entités des graphes qui renvoient à
la même réalité?
Les réponses à ces questions forment l’ensemble des problèmes que nous allons aborderdans la suite de ce document
Trang 273 ÉTAT DE L’ART
L’objectif de cette partie est d’étudier les techniques utilisées par d’autres auteurs pourrésoudre les problèmes d’enrichissement des entités des graphes de connaissances et leursliages, de plongement lexicaux ou des solutions aux problèmes similaires à ceux des liages
de bases de connaissances Ainsi nous exploiterons les bibliographies à notre disposition
et leurs références pour synthétiser une solution à notre problème
Trang 283.1 Plongement
3.1.1 Plongement de mots
Le plongement de mots est essentiellement basé sur les modèles d’espace vectoriel (VectorSpace Models:VSM), dont l’objectif dans le domaine de modélisation du langage, est de
représenter les mots comme points dans un espace vectoriel Dans l’article From
fre-quency to meaning: Vector space models of semantics des auteurs Turney et al.
[30] évoquent le fait que, les points représentant les mots des documents dans un espacedonné seront proches dans cet espace ó ils sont sémantiquement similaires et éloignéss’ils sont sémantiquement distants Pour parvenir à ce type de représentation (figure 3.1),deux grandes familles de modèles de langage existent
Figure 3.1 – Représentation des mots dans un espace à 2 dimensions
La première famille appelée représentation locale ou modèle statistique ou encore
représentation discrète, se base sur les fréquences de mots pris de façon individuels
dans un corpus de textes pour donner une représentation des dits mots
Bien que cette famille de modèle soit encore appliquée dans le domaine de la traductionautomatique, de la reconnaissance optique de caractères ou la reconnaissance vocale, elle
ne décrit pas efficacement la relation qui existe entre les mots selon Mikolov et al dans
l’article Neural networkbased language models for highly inflective language
[16] De plus, elle nécessite une grande quantité de données pour avoir des résultats
appréciables On trouve dans cette famille des techniques comme: Bag of Words, One
hot encoding et N-gram Cette dernière est la méthode qui domine dans cette famille
de modèles
La deuxième famille de modèles est appelée modèle distribué ou représentation de
similarité distribuée et est généralement obtenue par les réseaux de neurones artificiels.
Cette appellation vient du fait qu’elle repose sur un pattern d’activation d’un ensemble
Trang 29de neurones, dans lequel chaque concept est représenté par une activation sur plusieursneurones et chaque neurone participant à la représentation de plusieurs concepts.
On retrouve dans cette deuxième famille, les méthodes suivantes: Latent Semantic
Analysis (LSA), le Latent Dirichlet Allocation (LDA) et les modèles dérivés des
réseaux de neurones comme le Word2Vect ou le Glove.
En dépit du fait que cette deuxième famille est faite généralement des réseaux de neurones,contrairement à la première, une autre distinction essentiellement entre les modèles locaux
et ceux générés par les réseaux de neurones comme Word2Vect (Skip-gram, CBOW
figure 3.2) est le niveau de généralisation obtenue en utilisant les réseaux de neurones
Figure 3.2 – Architectures de CBOW et Skip-gram
Efficient Estimation of Word Representations in Vector Space, Tomas Mikolov et al [15]
En effet les modèles de représentation locale transforment les mots en unités dantes, c’est-à-dire sans tenir compte des relations entre les mots ou de leurs contextes.Par contre, les modèles d’espaces vectoriels continues appris par les réseaux de neuronesexploitent les contextes des mots et leur transforment de sorte que les vecteurs de motssimilaires sont très proches et gardent une certaine régularité En général, Les mots con-
indépen-servent leurs propriétés syntaxique et sémantique.
Cette conservation de la régularité (linguistique) syntaxique et sémantique peut se vérifier
en ajoutant des vecteurs qui conservent un certain décalage aux vecteurs ayant une lation syntaxique et on constatera que cette relation restera conservée (confère figure 3.3)
re-vec apple − vec apples ≈ vec car − vec cars
vec car − vec cars ≈ vec f amily − vec f amilies
Trang 30kx w kkyk , ce qui est généralisé par cos(x b − x a + x c , x d)
Figure 3.3 – Régularité sémantique: Linguistic Regularities in Continuous Space Word Representations, Tomas Mikolov et al [17]
Bien que les architectures CBOW et Skip-gram dérivent du modèle général développé par Mikolov et al et présenté dans leur article Efficient estimation of word represen-
tations in vector space [15], la différence fondamentale entre les deux est que CBOW
apprend la représentation vectorielle des mots d’un corpus en prédisant la représentation
de chaque mot à partir de leur contexte alors que Skip-gram apprend la représentation
vectorielle des mots d’un corpus en prédisant le contexte de chaque mot
3.1.2 Plongement de graphes
D’après les auteurs Quan Wang et al dans leur article Knowledge graph
embed-ding: A survey of approaches and applications [32] l’idée générale du plongement
de graphes réside sur le plonger des entités et des relations du graphe dans un mêmeespace vectoriel continu, dans le but de faciliter leurs manipulations tout en préservant
la structure du graphe
Ces auteurs exposent deux techniques permettant de plonger les graphes
Plongements basés sur des faits uniquement
Cette méthode de plongement se découpe en trois étapes:
1 La représentation des entités et les relations
Cette étape spécifie sous quelle forme les entités et le relations seront représentées
Trang 31dans l’espace vectoriel continu Très souvent la forme vectorielle est privilégiée pour
la représentation des entités et les travaux les plus récents modélisent ces entitéssous la forme d’une distribution Gaussienne multivariable Pour ce qui est des re-lations, elles peuvent être représentées sous forme de vecteurs, de matrices, ou dedistributions Gaussienne multivariable voir même le Gaussien mixte
2 Définition d’une heuristique
Cette étape consiste en la définition d’une fonction de mesure pour évaluer la tinence des faits Cette pertinence est la distance entre les relations et les entités,après une translation de celle-ci
per-3 Apprendre la représentation des entités et des relations
C’est l’étape qui a pour objectif d’apprendre le plongement des faits Elle se regroupe
ne deux catégories
• Plongement par translation de distance
Modèle de translation de distance qui utilise les heuristiques de distances.
On trouve dans ce groupe TransE et ses extensions (TransD, TransH, TransR).Dans ce groupe de modèle, TransE est le modèle de translation de distance leplus utilise, il représente les entités et la relation dans le même espace de lamanière suivante:
Soit un fait (h, r, t) , alors r est interprété comme un vecteur avec une faible
erreur tel que h + r ≈ t.
Cette méthode est inspirée des travaux de T Mikolov, W.-T Yih, et G Zweig,
Linguistic regularities in continuous space word representations [17],
qui apprend la représentation distribuée des mots pour appréhender la
regular-ite linguistique.
Exemple : man - king = woman - queen
La fonction de distance utilisée est :
f h,t = −L2(h + r − t) ; plus la distance est grande plus il y a une forte corrélation entre h et t.
Le plongement Gaussien quant à lui, introduit les entités et la relations
com-ment des points déterministes dans un espace vectoriel Dans l’article de S He,
K Liu, G Ji, and J Zhao, Learning to represent knowledge graphs with
Gaussian embedding [9], qui présente ce modèle, les entités et les relations
sont représentées comme des vecteurs aléatoires tirés de la distribution de Gauss
• Plongement par appariement sémantique (Semantique matching model)
Il est basé sur les heuristiques de similarité, comme RESCAL qui associe chaque
entité à un vecteur pour capter sa sémantique latente Chaque relation estreprésentée par une matrice, qui modélise l’interaction entre elle et les entitésmises en jeux
Trang 32La fonction d’évaluation f (h, t) − h0 ∗ M r ∗ t, ou h, t sont des vecteur et M r la
matrice de r, permet de mesurer toutes les interactions entre les entités h, t.
Il y à aussi DistMult, qui est une méthode simplifiée de la méthode RESCAL
en remplaçant la matrice M r par une matrice diagonale Cette simplificationpermet de traiter au mieux les relations symétriques; ce qui n’est pas pertinentpour un graphe de connaissances
Une autre heuristique est Holographic Embeddings (HolE), qui est une
combinaison de la methode RESCAL et DistMult, de ce fait, elle représente
h, r, t sous forme de vecteur Étant donne un fait (h, r, t), les entités h et t sont composées par opération de corrélation circulaire [h ∗ t]f (h, t) = r0∗ [h∗].
Bien que cette dernière soit plus efficace que RESCAL en terme de temps de
calcul, elle est pas contre non symétrique car l’opération de corrélation circulaire
n’est pas commutative
Complex Embeddings (ComplEx) Elle étend la méthode DistMult en
intro-duisant le plongement des valeurs complexes, pour mieux modéliser les relationsasymétriques Avec la méthode Complex, le plongement des entités et des rela-tions ne sont plus dans un espace vectoriel de nombre réels, mais dans celui desnombres complexes
Analogie C’est une extension de la méthode RESCAL, avec une attention
par-ticulière sur l’analogie entre les entités et les relations
Plongements basés sur les faits et d’informations supplémentaires
Dans ce type de plongement, au delà des faits (triplets), un accent est mis sur d’autresinformations qui peuvent être prises en compte
1 Types des entités
C’est l’une des informations qui peut être prise en considération lors du plongementd’un graphe de connaissances En effet cette information est toujours disponible dans
le graphe de connaissances sous la relation IsA exemple Psycho, IsA, CreativeWork Une façon de l’utiliser est de considérer IsA comme une relation ordinaire et le triplet
correspondant comme un triplet ordinaire
L’article de Guo et al Semantically Smooth Knowledge Graph Embedding [8] présente la méthode SSE ( semantic smooth embedding ) qui garde les entités
ayant la même classe proches les unes des autres dans l’espace latente
Les auteurs Ruobing Xie1 et al dans Representation Learning of Knowledge
Graphs with Hierarchical Types [34] présentent une amélioration de ce type de
prolongement qui tient compte de hiérarchisation des types d’une entité Ils le font
en utilisant les types des entités comme des contraintes lors de l’apprentissage Par
exemple on veut des entités de type personne reliées à des entités de type enseignant.
2 Chemin de la relation (relation paths)
Cette méthode tient compte de l’ensemble des relations qui permettent aller d’une tité à l’autre En effet le chemin de relation contient des indices liées à la sémantique
Trang 33en-et sont très utiles pour la complétude d’un graphe Des algorithmes d’évaluations
du chemin de relation ont été intégrés dans les graphes de connaissances et donc leprincipal challenge est de pouvoir plonger un tel chemin dans le même espace queles entités et les relations
Une solution est de considérer un chemin comme une composition des relations qui
le constituent, vu que la sémantique du chemin dépend de ces relations
3 Descriptions textuelles
Il s’agit dans ce cas de l’incorporation des descriptions textuelles aux entités Bienque les bases de connaissances disposent de descriptions succinctes des entités, il estpossible d’incorporer d’autres descriptions textuelles venant des journaux ou d’autresbases de connaissances Au début les descriptions textuelles étaient utilisées pour
initialiser les vecteurs des entités cas du modele NTN des auteurs R Socher et al dans leur article Reasoning with neural tensor networks for knowledge base
completion[24] En effet le vecteur d’une entité est initialisé par la moyenne des vecteurs contenus dans son nom.
Exemple: Le vecteur de l’entité AlfredHitchcock sera initialisé par la moyenne desvecteurs Alfred et Hitchcock
Une méthode similaire qui représente le vecteur d’une entité par la moyenne des
vecteurs de sa description est présentée par T Long et al dans leur article
Lever-aging lexical resources for learning entity embeddings in multi-relational data [14] Ce type de modèle ne tire pas parti de la relation qui existe entre les
faits (sujet, prédicat, objet) et le texte La méthode proposée par Z Wang et al
Knowledge graph and text jointly embedding permet de prendre en compte la
relation qui existe entre le corpus de texte et le graphe de connaissances, elle effectuedans un premier temps l’appariement de la base de connaissances au texte et par lasuite effectue le plongement et graphe et des mots; de cette façon, les faits(entités etrelation) et les mots sont dans le même espace vectorielle et les opérations comme leproduit ou la similarité entre eux est possible et significatif
Cette méthode repose sur trois composants:
(a) un modèle de connaissances pour le plongement des entités et relations du graphe
de connaissances C’est une variante de TransE
(b) un modèle de texte pour le plongement des mots du corpus de texte C’est unevariante du Skip-gram
(c) un modèle d’appariement Permet de garantir que le plongement des lations et des mots du corpus est dans le même espace vectoriel Plusieursmécanismes d’appariements peuvent être utilises: - Appariement par le nom desentités - Appariement par des ancres Wikipedia - Appariement par les descrip-teurs d’entités
entités/re-Note que le plongement conjointe peut utiliser aussi bien les informations structuréesdes bases de connaissances que celles non structurées des textes
Trang 34Une autre approche est donnée par R Xie et al Representation learning of
knowledge graphs with entity descriptions [34] se nomme description-embodied
knowledge representation learning (DKRL); cette approche est une extension de laméthode TransE de façon à prendre en compte la description des entités Elle associe
a une entité du graphe de connaissances deux vecteurs; l’un base sur sa structure etl’autre base sur le texte décrivant la dite entité
Z Wang et J Li dans l’article Text-enhanced representation learning for
knowledge graph [33] proposent une autre approche appelé TEKE, qui étant
donné un graphe de connaissances et un corpus de textes, dans un premier tempsfait une annotation des entités du corpus et crée un réseau de co-occurrence entreles entités et le mots du corpus Par la suite pour chaque entité détermine soncontexte textuel comment ses voisins dans le réseau de co-occurrence, c’est-a-diretrouver les mots du corpus apparaissant fréquemment avec l’entité du graphe de
En fin le plongement de l’entité est réalisé en se basant sur son contexte textuelprécédemment déterminé
L’article Combining RDF Graph Data and Embedding Models for an
Aug-mented Knowledge Graph de Andriy Nikolov et al [20], illustre la combinaison des
graphe RDF et le plongement Selon les auteurs, un graphe de connaissances augmentéinclut trois types de source de données:
• Le graphe de connaissances au format RDF
• Le plongement des entités et relations du graphe de connaissances représentées sousforme de vecteurs
• Des données extraites des sources non structurées en utilisant des information dugraphe de connaissance et un modèle de plongement
Selon les auteurs, le plongement des entités et relations du graphe de connaissances doitrester fidèle à la structure du graphe, ainsi la combinaison de deux vecteurs d’entités
E1, E2 d’un graphe et d’une relation R de celui-ci définit une certaine confiance que le triplet E1, R, E2 appartient au graphe En effet, l’article montre le fait que rapprochement
de deux vecteurs d’entités exprime un certain degré de similarité sémantique entre ellesc’est-à-dire qu’elles partagent les mêmes type de relations
3.2 Augmentation de graphes de connaissances
Il est important avant toute chose de noter que la construction d’un graphe de
connais-sances est généralement un compromis entre la couverture globale de la connaissance
du domaine et l’exactitude de la connaissance construite.
En effet selon Paulheim et al dans l’article Knowledge graph refinement: A survey
of approaches and evaluation methods [21], il est difficile d’attendre les deux buts
Trang 35à la fois; de ce fait l’objectif de l’enrichissement ou encore augmentation des bases
con-naissances est de compléter la couverture ou l’exactitude des graphes de concon-naissances
avec des informations supplémentaires renvoyant à la même réalité
Le même article [21] classifie l’augmentation en trois groupes:
• En fonction de l’objectif visé: la complétion (couverture) ou correction
• En fonction des composants ciblés du graphe de connaissances: les entités, les tions entre les entités, ou les valeurs des propriétés des entités
rela-• En fonction des données utilisées par l’approche d’augmentation de graphes: desaugmentations faites uniquement à partir du graphe lui même ou à partir des sourcesexternes Pour ce qui et des sources externes, elles peuvent venir des pages Web, desarticles, des réseaux sociaux, et peuvent être de types différents ( texte, image,son, )
Les travaux de Nikolov et al sur Combining RDF graph data and
embed-ding models for an augmented knowledge graph [20] montrent une approche
d’enrichissement de graphes de connaissances faisant usage du plongement lexical avec lesmodèles comme Word2Vec et du plongement de graphes avec les modèles comme TransE,TransR
Les étapes de cette approchent sont:
1 Apprendre le modèle Word2Vec à partir d’un corpus déjà annoté Si des entités degraphe de connaissances sont explicitement référencées dans le texte (par exemple,comme dans Wikipedia), le modèle formé contiendra des entrées de vecteurs pour lesentités à cơté des mots Si ces entités sont contenues dans le graphe de connaissancesprincipal, le modèle peut être utilisé directement
2 Dans le cas ó juste une partie des entités du graphe de connaissances se trouve dans
le corpus, on procède à une correspondance de label c’est-a-dire que les labels desentités ne trouvant pas dans le corpus sont utilises pour déduire leur vecteur dansl’espace vectoriel des mots du corpus
Une autre technique d’augmentation des bases de connaissances est celle utilisée par Ritze
et al et présenté dans l’article Profiling the potential of web tables for augmenting
cross-domain knowledge bases [22], qui augmente les connaissances des graphes de
données comme DBpedia, YAGO en se basant sur un grand corpus de tables de pagesweb et l’outil T2K Match T2K match est une outil qui utilise une approche itérativepour faire correspondre les tables d’entités-attributs extraites des pages web aux les bases
de connaissances Cette correspondance permet d’assigner une classe aux tables de pageweb, des instances aux entités et des propriétés aux attributs
Après cette assignation, les auteurs passent à un regroupement des triplets ayant les
mêmes sujets et prédicats; qui sont plus tards fusionnés grâce à la méthode de Local
Closed Word Assumption.