La croissance continue de la quantité de données produites aujourd’hui dans le domaine du web sémantique propulsé par l’avancée technologique du domaine, nécessite des moyens qui permettent de mieux comprendre et interpréter ces données,leur volume, variété et hétérogénéité d’un côté rendent cette tâche d’analyse difficile d’où la nécessité de nouvelles méthodes, mieux adaptées à affronter les nouveaux défis. Ces données souvent sous forme de graphes contenant de valeurs numériques et symboliques nécessite une meilleur modélisation sémantique pour pouvoir extraire de connaissances. Notre travail de recherche adresse le problème de représentation de valeurs numé riques présentes dans des graphes de connaissances en se basant sur des méthodes d’apprentissage de représentation vectorielle (plongement de graphe), plusieurs mé thodes de plongement de graphes ont été proposées par la communauté scientifique mais aucune de ces méthodes ne traitent le cas de données numériques, ce qui est une de motivation majeur de notre recherche. l’hypothèse de notre recherche repose sur une étude, comment savoir ou trouver les entités et instances similaire avec de données numériques dans un graphe de connaissances. Par conséquent dans la première partie, nous introduisons le context et problé matique de notre travail ainsi que quelques concepts clés du web sémantique. Dans la deuxième partie nous faisons une étude bibliographique de méthodes de plongements de graphes existantes ensuite dans la Troisième partie nous proposons une solution sur l’enrichissement de valeurs numériques en utilisant les méthodes de clustering et appliquons cette méthode dans l’implémentation enfin dans la quatrième partie qui est notre conclusion, nous donnons nos perspectives et travaux futures sur la modélisation sémantiques de valeurs numériques
Trang 1KALOMBO KADIMA OLIVIER
Apprentissage de représentation pour des valeurs numériques dans les graphes de
Trang 2KALOMBO KADIMA OLIVIER
Apprentissage de représentation pour des valeurs numériques dans les graphes de
connaissances
Spécialité : Systèmes Intelligents et Multimédia
Code : Programme pilote
MÉMOIRE DE FIN D’ÉTUDES DU MASTER
INFORMATIQUE
Sous la direction de : Mme Danai SYMEONIDOU ( INRAE)
HANỌ - 2020Học tự động các đặc trưng cho các giá trị số trong
biểu đồ tri thức
Trang 3J’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 Lasource des informations citées dans ce mémoire a bien été précisée
Signature de l’étudiant
KALOMBO KADIMA Olivier
Trang 4Ce travail de mémoire de Master recherche est le résultat de l’engagement de plusieurs personnes qui ont décidé de m’accompagner résolument dans cet exaltant parcours.
Je remercie Dieu le tout Puissant, très Miséricordieux, qui m’a donné la force, le rage et la persévérance durant ces deux années.
cou-C’est avec une certaine émotion et une grande reconnaissance que je remercie versité Nationale du Vietnam à travers l’Institut Francophone International et toute son équipe pédagogique Je remercie les professeurs pour les valeurs et méthodes inculquées durant le cursus : la curiosité, le gỏt du travail, de l’effort, le sens de la persévérance, etc Autant de trésors qui me seront, sans nul doute, utiles.
l’Uni-Je tiens à adresser mes profonds remerciements aux encadrants, Mme Danai NIDOU et Mr.Konstantin TODOROV, pour l’opportunité que vous m’aviez accorder de faire mon stage de fin d’études au sein de votre équipe ainsi que les explications, la re- lecture de mon mémoire, les différentes pistes de réflexion et votre coaching qui m’ont permis de cibler et de m’orienter tout au long de ce stage A toute l’équipe MISTEA,INRAE Montpellier France, je vous remercie de m’avoir accepter au sein de votre équipe Je vous remercie aussi de m’avoir permis de participer aux différents séminaires.
SYMEO-Un grand merci à mon père KADIMA MUSAKẠ LÉONARD et à ma mère KALONJI MBUYI MARIE-LOUISE pour leur soutien spirituel, financier et moral qu’il ne cessent pas d’apporter tout au long de ma vie et je remercie aussi mon frère Patrick KADIMA,pour son soutien spirituel et encouragements , à mes soeurs,Carine KADIMA, Gisèle KADIMA
et Christelle KADIMA pour leur amour, leurs conseils ainsi que pour leur soutien ditionnel Je voudrais profiter de cet espace pour leur exprimer toute ma gratitude et ma reconnaissance.
incon-Grâce à vous, j’aborde une nouvelle étape de ma vie avec confiance et dynamisme.
KALOMBO KADIMA Olivier
Trang 6maine du web sémantique propulsé par l’avancée technologique du domaine, site des moyens qui permettent de mieux comprendre et interpréter ces données,leurvolume, variété et hétérogénéité d’un cơté rendent cette tâche d’analyse difficile d’ó
néces-la nécessité de nouvelles méthodes, mieux adaptées à affronter les nouveaux défis Cesdonnées souvent sous forme de graphes contenant de valeurs numériques et sym-boliques nécessite une meilleur modélisation sémantique pour pouvoir extraire deconnaissances
Notre travail de recherche adresse le problème de représentation de valeurs riques présentes dans des graphes de connaissances en se basant sur des méthodesd’apprentissage de représentation vectorielle (plongement de graphe), plusieurs mé-thodes de plongement de graphes ont été proposées par la communauté scientifiquemais aucune de ces méthodes ne traitent le cas de données numériques, ce qui est une
numé-de motivation majeur numé-de notre recherche
l’hypothèse de notre recherche repose sur une étude, comment savoir ou ver les entités et instances similaire avec de données numériques dans un graphe deconnaissances
trou-Par conséquent dans la première partie, nous introduisons le context et matique de notre travail ainsi que quelques concepts clés du web sémantique Dans ladeuxième partie nous faisons une étude bibliographique de méthodes de plongements
problé-de graphes existantes ensuite dans la Troisième partie nous proposons une solution surl’enrichissement de valeurs numériques en utilisant les méthodes de clustering et ap-pliquons cette méthode dans l’implémentation enfin dans la quatrième partie qui estnotre conclusion, nous donnons nos perspectives et travaux futures sur la modélisa-tion sémantiques de valeurs numériques
Mots clés : Apprentissage automatique,intelligence artificielle, graphes de
connais-sances, données numériques, données symboliques, plongement de graphes,extraction
de connaissances,modélisation sémantique
Trang 7mantic web, propelled by the technological advances in the field, requires means thatallow for a better understanding and interpretation of this data,their volume, varietyand heterogeneity on the one hand make this task of analysis difficult, hence the needfor new methods, better adapted to face the new challenges These data,often in theform of graphs containing numerical and symbolic values,require better semantic mo-deling to be able to extract knowledge.
Our research work addresses the problem of representing numerical values present
in knowledge graphs based on vector representation learning methods (graph dings), Several methods of graph embeddings have been proposed by the scientificcommunity but none of these methods deal with numerical data, which is a major mo-tivation for our research
embed-The hypothesis of our research is based on a study of how to know or find similarentities and instances with numerical data in a knowledge graph
Therefore in the first part, we introduce the context and problematic of our work aswell as some key concepts of the semantic web In the second part we make a bibliogra-phic study of existing graph embeddings methods, then in the third part we propose asolution on numerical value enrichment using clustering methods and apply this me-thod in the implementation Finally in the fourth part which is our conclusion, we giveour perspectives and future work on semantic numerical value modeling
Keywords :Machine learning, artificial intelligence, knowledge graphs, numerical
data, symbolic data, graph embeddings,knowledge extraction, semantic modeling
Trang 9Table des figures i
1 Introduction, contexte et problématique 1
1.1 Introduction générale 1
1.2 Contexte 2
1.2.1 Définition de concepts 2
1.2.1.1 Le web sémantique 2
1.2.1.2 Graphe de connaissances ou Knowledge Graph 4
1.2.1.3 Type de littéraux dans le graphe de connaissances 5
1.3 Problématique 7
1.3.1 Défis dans les graphes de connaissance 8
1.3.2 Objectifs visés 9
2 État de l’art 11 2.1 Méthodes de Plongement 11
2.1.1 Plongement de mots 11
2.1.2 Plongement de graphes 15
2.1.3 Les méthodes sur le plongement de graphes de connaissances 18
2.1.3.1 Les modèles de distance translationnelle 19
2.1.3.2 Modèles d’appariement sémantique 21
2.1.4 PyTorch-Biggraph 23
3 Solution proposée et méthodologies 27 3.1 Solution proposée 27
3.1.1 Choix de l’outil pour les calculs de vecteurs 29
3.1.1.1 PyTorch-BigGraph Configuration 29
3.1.1.2 Schéma de configuration de PBG 29
3.1.2 Paramètres de configuration de nos vecteurs 31
Trang 103.2.1.2 Observation de la première méthode du cluster 33
3.2.1.3 Deuxième Méthode du cluster 34
3.2.1.4 Observation de la deuxième méthode du cluster 36
3.2.2 Calcul des vecteurs 36
3.3 Expérimentations et Résultats 37
3.3.1 Choix de technologies 38
3.3.2 Description de notre jeu des données 38
3.3.3 Description et Analyse exploratoire des instances contenant des valeurs numériques 39
3.3.3.1 Analyse et bilan sur nos valeurs numériques distinctes 41
3.3.4 Transformation des valeurs numérique en symboliques en appli-quant les méthodes du clustering 42
3.3.5 Calculs de vecteurs et Plongement de Graphes 47
3.3.5.1 Paramètres et Configurations de vecteurs 47
3.3.5.2 Préparation de données et l’apprentissage 47
3.3.6 Mesure de similarité entre les vecteurs d’un graphe de connaissance 51 3.3.7 Expérimentations et analyse exploratoire sur la similarité entre les entités des valeurs numériques 51
3.3.7.1 Expérimentations 52
3.3.7.2 Analyse exploratoire sur la similarité entre les entités des valeurs numériques 54
3.3.8 Observations sur les résultats obtenus 55
3.3.9 Evaluation de l’approche proposée pour estimer la similarité des entités 56
4 Conclusion et Perspectives 58 4.1 Conclusion générale 58
4.2 Perspectives 59
Trang 111.1 exemple d’un graph RDF.
https://www.slideshare.net/jelabra/rdf-data-model?from_action=
save 3
1.2 exemple d’un Triplet https://www.slideshare.net/jelabra/rdf-data-model?from_action= save 4
1.3 exemple de la représentation d’un Triplet https://www.slideshare.net/jelabra/rdf-data-model?from_action= save 4
1.4 exemple d’un graphe de connaissance avec les littéraux numériques,textes,images 6 1.5 exemple de la problématique dans un graphe de connaissance avec les littéraux numériques http://jens-lehmann.org/files/2019/iswc_literal_e.pdf 7
1.6 exemple de défis dans un graphe de connaissance 8
1.7 exemple de l’objectif du plongement d’un graphe de connaissance 9
2.1 Architecture CBOW 13
2.2 Architecture Skip-gram 14
2.3 Architecture CBOW et Skip-gram 15
2.4 résumé de méthodes de plongement des graphes 18
2.5 structure des méthodes sur le plongement de graphes de connaissances 19
2.6 résumé des modèles de distance translationnelle 22
2.7 résumé de modèles d’appariement sémantique 22
2.8 comparaison des modèles dans la complexité spatiale et temporelle 23
2.9 structure de partitions du modèle PyTorch-BigGraph 24
2.10 distribution du mécanisme de l’apprentissage en parallèle 25
2.11 L’approche d’échantillonnage négatif par lots 26
Trang 123.4 Exemple de la transformation d’un graphe de connaissances en vecteur"Knowledge
embedding" 28
3.5 Exemple du plongement d’un graph de connaissances "Knowledge graph embedding" 29
3.6 Technologies utilisées 38
3.7 Données initiales avant séparation des valeurs numériques 39
3.8 résultat de l’extraction des valeurs symboliques 40
3.9 résultat de l’extraction des valeurs numériques 41
3.10 Rapport sur le bilan des Valeurs numériques distinctes de notre jeu de données 42
3.11 résultat de la transformation des valeurs numériques avec la 1ere mé-thode du cluster 43
3.12 résultat de la transformation des valeurs numériques avec la 1ere mé-thode du cluster 44
3.13 résultat de la transformation des valeurs numériques avec la 2eme mé-thode du cluster.(cas pour la relation "Width") 45
3.14 résultats des vecteurs obtenus après apprentissage de notre jeu de don-nées DB-lake 51
3.15 résultats sur la similarité des entités avec des données de valeurs numé-riques clusterisées 52
3.16 résultats sur la similarité des entités avec de données de valeurs symbo-liques 53
3.17 résultats sur la similarité des entités avec des données de valeurs numé-riques clusterisées combiner avec de données de valeurs symboliques 53
3.18 Résultats sur la similarité des entités avec des données de valeurs nu-mériques clusterisées( voir top numérique) et résultats des données de valeurs symboliques( voir top symbolique) 54
3.19 résultats sur la similarité des entités avec des données de valeurs numé-riques clustérisées combiner avec de données de valeurs symboliques 55
3.20 évaluation de lacs proches de lac Buffalo-lake(Alberta) dans la vie réelle 57
3.21 évaluation de lacs proches de lac Buffalo-lake(Alberta) avec nos xpéri-mentations 57
Trang 13ARS Analyse de réseaux sociaux
BFS Breadth First Search
CBOW Continuous Bag of words
C W Collobert Weston
CSLM Continue space language models
DFS Depth First Search
GC Graphe de connaissances
INRA Institut NAtional de la Recherche Agronomique
IRI Internationalized Resource Identifier
MISTEA Mathématiques, Informatique et STatistique pour l’Environnement et
l’Agronomie
ML Machine Learning
KG Knowledge Graph
N à N Many to Many relations
N à 1 Many to one relation
OWL Web Ontology Language
PBG Pytorch-biggraph
Q.R Questions de recherche
RDF Resource Description Framework
TLN Traitement de Langage Naturel
TSV Tabular Separated Values
1 à N One to Many relation
Trang 14Introduction, contexte et problématique
1.1 Introduction générale.
Avec les progrès et les améliorations constantes dans le domaine de l’intelligence
artificielle nous constatons une augmentation exponentielle de la quantité de données
disponibles provenant de sources différentes à la fois structuré et non structuré,
utili-sant de nombreuses technologies différentes et parmis ces données , certaines se
pré-sentent sous forme de graphes
Les graphes, tels que les réseaux sociaux, les réseaux de cooccurrence de mots et
les réseaux de communication, apparaissent naturellement dans diverses applications
du monde réel et ont été utilisés pour désigner des informations dans divers domaines,
notamment la biologie (réseaux d’interaction protéine-protéine)[Theocharidis et al., 2009],les sciences sociales (réseaux d’amitié) [Freeman, 2000] et la linguistique (réseaux de
cooccurrence de mots) [Cancho and Solé, 2001]
L’analyse des graphes a attiré une attention croissante ces dernières années en
rai-son de l’omniprésence des réseaux dans le monde réel La modélisation des
interac-tions entre les entités sous forme de graphes a permis aux chercheurs de comprendre
les différents systèmes de réseaux de manière systématique [Leskovec et al., 2007] Par
exemple, les réseaux sociaux ont été utilisés pour des applications telles que l’amitié ou
la recommandation de contenu, ainsi que pour la publicité [Liben-Nowell and Kleinberg, 2007].Les tâches d’analyse de graphes peuvent être regroupées en quatre catégories :
— (a) la classification des nœuds [Bhagat et al., 2011],
— (b) la prédiction des liens [Liben-Nowell and Kleinberg, 2007],
— (c) le regroupement ou encore clustering en anglais [Ding et al., 2001]
— (d) la visualisation [Maaten and Hinton, 2008]
La classification des nœuds vise à déterminer l’étiquette des nœuds (aussi appelés
sommets) en fonction des autres nœuds étiquetés et de la topologie du réseau, la
pré-diction des liens se réfère à la tâche de prédire les liens manquants ou ceux qui sont
Trang 15susceptibles de se produire à l’avenir, le regroupement (clustering) est utilisé pourtrouver des sous ensembles de nœuds similaires et les regrouper ; enfin, la visualisa-tion permet de mieux comprendre la structure du réseau.
C’est dans cette optique que mon travail de recherche s’est déroulé à l’Institut tional de Recherche pour l’Agriculture,l’Alimentation et l’Environement (INRAE)1, ausein de l’équipe de Mathématiques, Informatique et STatistique pour l’Environnement
Na-et l’Agronomie (MISTEA)2avec pour objectif d’adresser le problème de
représenta-tion de valeurs numériques présentes dans des graphes de connaissances en se
ba-sant sur des méthodes d’apprentissage de représentation vectorielle (plongement degraphe)
Dans ce mémoire, je présenterai les différents travaux de recherches que j’ai menés
à l’INRAE Dans la première partie, j’introduirai le contexte du projet avec la définition
de quelques concepts des Graphes de connaissances et la problématique liée à monsujet Dans la deuxième partie, j’aborderai l’état de l’art des méthodes plongementdes graphes de connaissances (Knowledge Graph Embeddings) Dans la troisième par-tie, je présenterai la solution proposée et l’implémentation Enfin, je terminerai par laconclusion,les perspectives et les travaux futures
Trang 16ma-Le web sémantique fournit un cadre commun qui permet de partager des données
et réutilisé au-delà des frontières des applications, des entreprises et des tés.Les technologies du Web sémantique facilitent la construction d’un réseau à grandeéchelle d’informations lisibles par les machines et des connaissances compréhensiblespar les machines, et donc faciliter la réutilisation et l’intégration des données.Depuis
communau-le début, communau-le Web sémantique a promu une représentation graphique de connaissances,par exemple en utilisant le RDF En général, RDF est un cadre qui permet de décrire lesinformations sur les ressources.Comme défini par la recommandation du W3C pour leRDF, la structure de base de RDF est un ensemble de triplets, chacun composé d’un
sujet,d’un prédicat et d’un objet,
Par exemple, db :Berlin dbo :capitalDe db :Allemagne représente un triplet Unensemble de ces triplets est appelé un graphe RDF Dans une telle représentation de
graphe des connaissances, les entités,qui sont les nœuds du graphe, sont reliés par des
relations , qui sont les bords du graphe Chaque entité est identifiée de façon unique
par une ressource internationalisée Identifier (IRI), et généralement les entités ont destypes, dénotés par une relation.Nous donnons une définition formelle d’un grapheRDF
Un graphe RDF est un graphe étiqueté G = (V, E), ó V est un ensemble de sommets
et E est un ensemble d’arêtes dirigées, ó chaque sommet v appartient à V est identifié par un identifiant unique, et chaque bord e appartient à E est étiqueté avec une étiquette
provenant d’un ensemble fini des étiquettes de bord.
FIGURE1.1 – exemple d’un graph RDF
https://www.slideshare.net/jelabra/rdf-data-model?from_action=save
Trang 17FIGURE1.2 – exemple d’un Triplet.
https://www.slideshare.net/jelabra/rdf-data-model?from_action=save
FIGURE1.3 – exemple de la représentation d’un Triplet
https://www.slideshare.net/jelabra/rdf-data-model?from_action=save
1.2.1.2 Graphe de connaissances ou Knowledge Graph
Un graphe de connaissances est un graphe multi-relationnel composé d’entités
en tant que nœuds et de relations en tant que différents types de bords Un exemple de
bord est un triplet de fait (entité de tête, relation, entité de queue)
(désignée par (h, r, t)).
Divers graphes de connaissances (GC) ont été publiés dans le but de partager les
données liées Parmi les GC à vocation générale les plus populaires, on trouve DBpedia
Trang 18dans un sens plus général, les GC peuvent être utilisés pour soutenir le processus de
prise de décision et pour améliorer différentes applications d’apprentissage
automa-tique telles que la détection du spam, la recommandation de films sont quelques-unes
des applications du Machine learning (ML) qui peuvent bénéficier des GC [Wilcke et al., 2017].Les GC à vocation générale, comme par exemple les Wikidata, comprennent souvent
des millions d’entités, représentées sous forme de nœuds, avec des centaines de
mil-lions de faits, représentés sous forme d’arêtes reliant ces nœuds
Cependant, un nombre important d’algorithmes de graphes nécessaires à la
manipula-tion et à l’analyse efficaces des graphes se sont révélés être NP-complets [Orponen, 1990]
Bien que les GC soient efficaces pour représenter des données structurées,la nature
symbolique sous-jacente de la façon dont les données sont encodées en triplets
(c’est-à-dire < sujet, prédicat, objet > )rend généralement les GC difficiles à manipuler [Wang et al., 2017]
Afin de résoudre ces problèmes et d’utiliser efficacement un GC, il est recommandé
de le convertir en un espace vectoriel de faible dimension tout en préservant les
pro-priétés du graphe A cette fin, diverses tentatives ont été faites jusqu’à présent pour
apprendre la représentation vectorielle (embeddings) pour les GC Cependant, la
plu-part de ces approches, y compris le TransE [Bordes et al., 2013], sont des méthodes de
plongement de graphes basés sur la structure qui ne comprennent aucune information
littérale( littérales qui peuvent être sous forme de textes ou de valeurs numériques)
C’est un inconvénient majeur car de nombreuses informations encodées dans les
lit-téraux resteront inutilisées lors de la saisie de la sémantique d’une certaine entité Les
littéraux peuvent apporter des avantages au processus d’apprentissage de plongement
des Graphes de connaissances de deux manières principales La première concerne
l’apprentissage de plongement d’entités nouvelles, c’est-à-dire d’entités qui ne sont
pas liées à une autre entité du GC mais auxquelles sont associées certaines valeurs
lit-térales Dans la plupart des modèles de plongement basés sur des structures existantes,
il n’est pas possible d’apprendre le plongement de ces nouvelles entités Toutefois, il est
possible de remédier à ce problème en utilisant les informations contenues dans les
lit-téraux pour apprendre à les intégrer L’autre avantage des litlit-téraux est l’amélioration de
la représentation des entités dans les modèles de plongement basés sur la structure ó
une entité doit apparaỵtre dans au moins un nombre minimum de triples relationnels
1.2.1.3 Type de littéraux dans le graphe de connaissances.
Les littéraux dans un GC encodent les informations qui ne sont pas saisies par les
relations ou les liens entre les entités Il existe différents types de littéraux dans les GC
à savoir : texte et valeurs numerques, images etc
— Textes ou symboles Une grande variété d’informations pertinentes peut être
sto-ckée dans le GC sous forme de texte libre comme les noms, les étiquettes, les
titres, les descriptions, les commentaires, etc.Dans la plupart des modèles de
plongement de GC avec des littéraux, les informations textuelles ont a été
subdi-visé en deux catégories : les textes courts et les textes longs pour une meilleure
Trang 19saisie ou capture de la sémantique dans le modèle Les littéraux qui sont assezcourts tels que pour les relations comme les noms, les titres, etc sont considé-rés comme des textes courts d’autre part, pour des chaînes de caractères beau-coup plus longues comme les descriptions d’entités, les commentaires, etc sontconsidérés comme du texte long.
— Numériques ou Valeurs numériques Informations codées sous forme de nombres
réels ou nombres décimales,les données telles que la taille, l’année, la longitude,lalatitude ,la date, la population, etc fournissent également des informations utiles.Ilest utile de considérer les chiffres comme des entités distinctes dans les modèles
de plongement de graphe de connaissance, car elle a sa propre sémantique àcouvrir qui ne peut être couverte par la distance métrique des chaînes de carac-
tères Par exemple, 777 est plus proche de 788 que 77.
— Images Les images fournissent également des informations latentes utiles pour
la modélisation des entités Par exemple, les informations concernant une sonne, telles que son âge, son sexe, etc peuvent déduire par l’analyse visuelled’une image la représentation d’une personne
per-— Autres information comme URI d’autre informations utiles encodées sous la
forme d’autres littéraux tels que URI externes pouvant conduire à une image,
un texte, un fichier audio ou vidéo sont nécessaire d’être prise en compte lors de
la construction de modèle de plongement de graphes
à la suite des différentes informations présentes dans le GC, la modélisation tique des entités et des valeurs numériques est une tâche difficile et qui nous amène àune étude approfondie de la problématique de nos travaux de recherche
séman-FIGURE 1.4 – exemple d’un graphe de connaissance avec les littéraux riques,textes,images
Trang 20numé-1.3 Problématique.
Les valeurs numériques, largement présentes dans les données structurées, posentproblèmes à toutes les étapes du cycle de vie de ces dernières de leur représentation enutilisant des modèles et des vocabulaires existants jusqu’à leur liage ou leur accès,d’ócertains grandes questions de recherche dans notre travail a été ciblés
Questions de recherches (Q.R)
— Q.R 1 comment trouver des instances et entités similaires ou proches dans un
graphe de connaissance en tenant en compte de données ou valeurs numériques ?
— Q.R 2 comment capturer et combiner l’hétérogénéité des types de littéraux (
va-leurs symboliques et numériques) présent dans les graphes de connaissance lors
de l’apprentissage de représentation
— Q.R 3 Comment combiner les structures de nos triplets ( sujets, prédicats ,
ob-jets ) et des informations non structurées (triplets attributifs qui sont des littérauxsous forme de texte et valeurs numériques) dans les G.C lors de notre apprentis-sage de représentation ?
— Q.R 4 comment calculer la similarité entre les vecteurs des entités des valeurs
numériques
FIGURE1.5 – exemple de la problématique dans un graphe de connaissance avec leslittéraux numériques
http://jens-lehmann.org/files/2019/iswc_literal_e.pdf
Trang 211.3.1 Défis dans les graphes de connaissance
L’obtention d’une représentation vectorielle de chaque noeud d’un graphe est ficile et pose plusieurs défis qui ont conduit notre recherche dans ce domaine
dif-— a)Choix de la propriété : Une "bonne" représentation vectorielle de nœuds doivent
préserver la structure du graphe et la connexion entre les différents nœuds Lepremier défi consiste à choisir la propriété du graphe que le plongement doitpréserver Étant donné que les propriétés pour les graphes doivent être définies,
ce choix peut être difficile et la performance peut dépendre de la démarche ou
de la procédure
— b)L’évolutivité : La plupart des réseaux réels sont de grande taille et contiennent
millions de nœuds et de bords,les méthodes de plongement devraient être lutif et capable de traiter de grands graphes La définition de l’évolutivité d’unmodèle peut être difficile, surtout lorsque le modèle vise de préserver les pro-priétés globales du graphe
évo-— C)Dimensionnalité de plongement des graphes : Trouver la meilleur dimension
pour la représentation d’un vecteur peut être très difficiles Par exemple un plusgrand nombre de dimensions peut augmenter la reconstruction de précision,mais sera très complexe dans le temps et l’espace.Le choix peut également êtrespécifique à l’application selon l’approche :Par exemple, un nombre inférieur dedimensions peut entraîner une meilleure précision sur la prédictions de liens si
le modèle choisi ne prend en compte que les connexions entre les nœuds
FIGURE1.6 – exemple de défis dans un graphe de connaissance
Trang 221.3.2 Objectifs visés.
Notre travail a pour but d’adresser le problème de représentation de valeurs riques présentes dans des graphes de connaissances en se basant sur des méthodesd’apprentissage de représentation vectorielle (plongement de graphe) Ces méthodespermettront à désambiguïser sémantiquement ces valeurs offrant ainsi la possibilité
numé-de répondre à l’ensemble numé-de challenge du domaine numé-de l’apprentissage numé-de tion de valeurs numériques
représenta-FIGURE1.7 – exemple de l’objectif du plongement d’un graphe de connaissance
ce travail de recherche aura ainsi une double contribution : d’une part nous allonscontribuer au domaine d’apprentissage de représentation proposant une nouvelle ap-proche de plongement de graphes avec la prise en compte des données numériques
et d’autre part nous allons pouvoir appliquer cette méthode au domaine du liage dedonnées symboliques
Nos contributions peuvent être réparties en sous section suivantes :
— Une analyse détaillée des modèles de plongement de graphes en générale y pris les modèles de plongement de graphes qui tient compte de littéraux sousforme de texte et valeurs numérique littéralement enrichis de GC existants et deleurs approches ;
com-— une méthode est proposée pour enrichir les valeurs numériques présent dansles graphes de connaissance en utilisant deux méthodes du groupement ditesclustering ;
— une étude exploratoire sur la notion de similarité entre les entités des instancesdes valeurs numériques ;
— une évaluation sur la méthode proposée ;
— une proposition sur de travaux future concernant différents recherches et rimentations sur de tâches comme la prédiction des liens en utilisant notre ap-proche tout en tenant compte de littéraux présent dans les graphes de connais-sances sous forme de textes et valeurs numériques ;
expé-Notre travail se structure de manière suivante :
— chapitre 1 : Introduction ,contexte et problématique,
Trang 23— chapitre 2 : Etat de l’art,
— chapitre 3 : Solution proposée et méthodologie,
— chapitre 4 : Conclusion et perspective
Trang 24État de l’art
Dans cette partie de nos travaux nous réalisons une étude bibliographique sur
dif-férentes méthodes existantes liées au sujet de notre recherche qui concerne la
repré-sentation des valeurs numériques souvent présentes dans les graphes de
connais-sances, car cela nous permettra de mieux comprendre et proposer une meilleure lution à notre travail
so-il est important de noter dans cette étude bibliographique que plusieurs méthodes
de plongement de mots et de graphes ont été proposées mais à notre connaissance
aucune des méthodes existantes ne traitent les cas de graphes de connaissances avec des données numériques ; ce qui nous motive beaucoup d’approfondir nos recherches.
2.1.1 Plongement de mots
Plus récemment, il a été proposé de représenter un mot par un vecteur dense, de
faible dimension avec valeurs réelles Ces représentations sont appelées word
embed-dings, neural embeddings ou prediction-based embedembed-dings, ou en français
représen-tation vectorielle du mot, représenreprésen-tation continue du mot et aussi plongement de
mot.Elles ont été introduites à travers la construction de modèles de langage
neuro-naux [Bengio et al., 2003]
Les word embeddings ont été utilisés avec succès en tant qu’informations mentaires dans plusieurs tâches, notamment pour les tâches de traitement automa-tique du langage naturel(TALN) : l’étiquetage morpho-syntaxique, le regroupement ensyntagme, la reconnaissance d’entités nommées, la détection de mention [Bansal et al., 2014],
supplé-la compréhension de supplé-la parole [Mesnil et al., 2013] , etc
Les word embeddings constituent une projection des mots du vocabulaire dans un
espace de faible dimension de manière à préserver les similarités sémantiques et
Trang 25syn-taxiques Ainsi, si les vecteurs de mots sont proches les uns des autres en terme de
dis-tance, les mots doivent être sémantiquement ou syntaxiquement proches Chaque
di-mension représente une caractéristique latente du mot, qui peut capter des propriétés
syntaxiques et sémantiques Plusieurs approches neuronales ont été proposées dans
la littérature pour la construction des word embeddings, dont certaines sont détaillées
ci-dessous
Word2Vec
Les word embeddings actuellement les plus populaires dans la littérature sont
four-nis par la boỵte à outils Word2vec ,les auteurs ont proposé d’abord deux architectures
(CBOW et Skip-gram) pour l’apprentissage des word embeddings qui sont moins
cỏ-teuses en termes de temps de calcul que les modèles précédents [Mikolov et al., 2013a]
Puis, ils ont amélioré ces modèles en employant des stratégies supplémentaires pour
améliorer la vitesse d’apprentissage et la performance des word embeddings [Mikolov et al., 2013b]
L’architecture CBOW prédit le mot courant en fonction du contexte, et Skip-gram
prédit les mots en contexte en fonction du mot courant
Dans ce qui suit, nous allons présenter les deux architectures CBOW et Skip-gram
illustrées par la figure2.3
CBOW
La première architecture permet de prédire un mot wi en fonction de son contexte,
qui correspond aux mots précédents et aux mots suivants Dans cette architecture, la
couche de projection est partagée par tous les mots : tous les mots sont projetés dans
la même position Ceci est différent de l’approche utilisée pour le modèle de langage
(CSLM), ó les mots sont projetés dans des positions différentes Ici, l’apprentissage
des word embeddings consiste à prédire un mot en fonction de son contexte Ceci est
fait en calculant la somme des word embeddings du contexte, puis en appliquant sur le
vecteur résultant un classifieur log-linéaire pour prédire le mot cible Enfin, le modèle
compare sa prédiction avec la réalité et corrige la représentation vectorielle du mot par
rétro-propagation du gradient
Ce modèle cherche à maximiser l’équation suivante :
S =1I PI
i =1 log p (m i |m i −n , , m i −1 , m i +1 , m i +n)
ó I correspond au nombre de mots dans le corpus, le modèle reçoit une fenêtre de
n mots autour du mot cible mi Ce modèle est nommé CBOW pour sac-de-mots
conti-nus ou Continuous Bag-of-Words pour deux raisons D’une part, l’appellation
Trang 26sac-de-FIGURE2.1 – Architecture CBOW
Skip-gram
L’architecture Skip-gram est l’inverse de CBOW Le mot cible mi est maintenant lisé comme entrée et les mots de contexte sont utilisés en sortie Elle consiste à prédire,pour un mot donné, le contexte dont il est issu.Dans cette architecture le mot en entréeest projeté dans l’espace au sein de la couche cachée puis dans la couche de sortie pourproduire un vecteur Ce vecteur est ensuite comparé à chacun des mots du contexte et
uti-le réseau se corrige par rétro-propagation du gradient De cette manière, la tation vectorielle du mot d’entrée va être proche de celles des mots qui produisent lemême contexte que lui Cette architecture maximise l’équation suivante :
représen-S = T1PI
i =1
P
−n≤ j ≤n,6=0 log p ¡m i |m i +j¢
L’architecture Skip-gram avec échantillons négatifs (Negative Sampling) cherche à
représenter chaque mot mi qui appartient à Vi et chaque contexte c appartient à Vc par des vecteurs de d-dimensions (mi,c), afin d’avoir des représentations vectorielles
similaires pour les mots similaires
Ceci est fait d’une part, en maximisant le produit scalaire (mi.c) pour les paires(mi,c) qui apparaissent dans le corpus D ; d’autre part, en minimisant les exemples
négatifs (mi,cNeg), qui ne sont pas nécessairement observés dans D Les exemples gatifs sont créés en corrompant stochastiquement les paires (mi,c) observées dans D,
Trang 27né-d’ó le nom d’échantillons négatifs.
En outre, le contexte ne se limite pas au contexte immédiat, et les instances prentissage peuvent être créées en ignorant (sautant) un nombre de mots dans son
d’ap-contexte, par exemple, mi - 4,mi - 3,mi + 3,mi + 4, d’ó le nom de Skip-gram.
FIGURE2.2 – Architecture Skip-gram
Ces architectures offrent deux principaux avantages :
— ils ne contiennent pas de couches cachées,
— ils permettent au modèle de langage de prendre en compte un contexte mentaire
supplé-Pour des raisons de complexité algorithmique de la couche Softmax1,les auteursdans [Mikolov et al., 2013b] ont proposé d’autres alternatives appelées échantillons né-
gatifs (en anglais Négative Sampling) et Softmax hiérarchique.
Le succès de Word2vec est non seulement dû à ces changements dans l’architecture
du réseau, mais surtout en raison des algorithmes d’apprentissage (Négative Sampling)
et Softmax hiérarchique )
1 En mathématiques, la fonction softmax, également appelée softargmax ou fonction exponentielle normalisée, 198 est une fonction qui prend comme entrée un vecteur de K nombres réels, et le normalise dans une distribution de probabilités consistant en K probabilités proportionnelles aux exponentielles
Trang 28FIGURE2.3 – Architecture CBOW et Skip-gram.
2.1.2 Plongement de graphes.
Les techniques de plongement de graphes (graph embedding) visent à représenter
un graphe ou des éléments d’un graph dans un espace vectoriel Habituellement, destechniques d’apprentissage automatique non supervisées sont appliquées pour géné-rer des plongements ( Embeddings) Idéalement, les plongements devraient préservertoutes les propriétés des éléments des graphes et en même temps réduire la dimen-sionnalité de la représentation de ces propriétés
L’entrée (input ) d’un système de plongement d’un graphe est un graphe et la sortie (output) est un ou un ensemble de vecteurs de faible dimension Les vecteurs peuvent
représenter soit l’ensemble du graphe, soit les sous-graphes, soit les nœuds individuels
du graphe Il peut également être étendu pour inclure les bords dans le graphe.Il y atrois stratégies principales pour plonger les graphes
1 La première utilise la factorisation matricielle Ces systèmes saisissent
géné-ralement certains des éléments suivants comme la similarité des nœuds d’unematrice et factoriser la matrice afin de trouver les plongements de nœuds indivi-duelles
Trang 292 La deuxième approche est d’utiliser des méthodes d’apprentissage en
profon-deur(Deep Learning ) sur le graphes Voici un exemple de cette approche à l’aide
de marches aléatoires(Random Walk) l’ensemble du graphe est utilisé commedonnée d’entrée avant d’utiliser un réseau de neurone pour former les noyaux
ou embeddings
3 La troisième approche est d’optimiser directement la probabilité de l’existence
d’un noeud (ex : une relation entre deux noeuds).
Deep Walk
DeepWalk a été introduit par [Perozzi et al., 2014] Les auteurs ont apporté l’idéed’utiliser des travaux récents dans le domaine de plongement de mots Ils soulignentdes similitudes intéressantes entre le traitement de langage naturel(TLN) et l’analyse
de réseaux sociaux (ARS).L’idée principale est de donner des phrases de nœuds (au
lieu de mots) comme entrée pour les algorithmes de plongement de mots Ils ont
utilisé la marche aléatoire(Random walk) pour produire de telles phrases à partir d’ungraphe non pondéré
DeepWalk est construit sur Skip-Gram [Mikolov et al., 2013a] et Hierarchical max [Morin and Bengio, 2005] Nous allons maintenant expliquer comment la façondont DeepWalk créé des phrases de nœuds
Soft-soit un graph G = G = (V,E) et vi ∈ V.W = (W 1,W 2, ,W t) est une marche toire(Random walk) sur le graphe G de t pas à partir du noeud W 1 = vi et ∀j ∈ [2, t]
aléa-le pas W j est choisi aléatoirement parmi aléa-les noeuds adjacents de W j-1
La méthode utilisée par DeepWalk est connue sous le nom de marche aléatoire quée [Perozzi et al., 2014] Pour chaque noeud (au pas k) de la marche aléatoire, on pro-duit une phrase de taille 2w + 1 ó w est la taille de la fenêtre, c’est-à-dire le nombre denoeuds avant et après la racine de la marche dans la phrase (Wk−w vi , ,Wkvi, ,Wk+
tron-w vi ) Skip-gram utilise directements ces séquences pour apprendre les fonctions desnoeuds
Deep walk effectue des marches aléatoiresγx|V| de telle sorte que chaque nœud
soit la racine des marches aléatoiresγ,Chaque marche aléatoire est indépendante l’une
de l’autre, donc cette tâche peut être facilement parallélisée Selon les auteurs, tiel du bénéfice est réalisé en commençantγ = 30 marches(Walks)"
"l’essen-LINE
LINE a été introduit par [Tang et al., 2015] et s’inspire en partie du concept de torisation graphique d’[Ahmed et al., 2013] L’algorithme est conçu pour les graphes
Trang 30fac-second ordre Ce sont des propriétés locales qui expriment à quel point deux nœuds du
réseau sont similaires La proximité de premier ordre de deux nœuds est matérialisée
par le bord entre eux S’il n’y a pas de bord, les deux nœuds ne sont pas similaires en
ce qui concerne la proximité du premier ordre Si le bord est pondéré, on peut tifier la proximité du premier ordre Selon Jian Tang et al, l’algorithme Laplacien d’Ei-genmaps [Belkin and Niyogi, 2002] pourrait déjà conserver une sorte de premier ordre
quan-de proximité [Tang et al., 2015] Les auteurs soutiennent que le fait de ne considérerque la proximité de premier ordre n’est pas suffisant pour saisir la structure d’un ré-seau Si un nœud partage de nombreux voisins avec un autre, ils sont assez similaires,même s’ils ne sont pas connectés, c’est la proximité de second ordre C’est l’idée der-
rière Word2Vec : des mots similaires ont tendance à apparaître dans un contexte
simi-laire Comme il est construit sur un modèle Word2Vec, DeepWalk préserve le secondordre de proximité Cependant, Tang et al reprochent à DeepWalk de ne pas avoir unobjectif suffisamment clair Par contraste, ils ont introduit deux fonctions objectivespour LINE, une pour chaque ordre de proximité
Node2vec
Node2vec est un algorithme introduit par [Grover and Leskovec, 2016].Node2vectente de pousser plus loin le concept de marche aléatoire(Random Walk) introduit avecDeepWalk [Perozzi et al., 2014] en introduisant la marche aléatoire biaisée Il fonc-tionne à la fois pour les réseaux dirigés/non dirigés et les réseaux pondérés/non pon-dérés Selon les auteurs, il existe deux stratégies principales pour parcourir un graphe
à partir d’un nœud :Première recherche en largeur en anglais (Breadth First Search) (BFS) et Première recherche en profondeur (Depth First Search )(DFS) ces stratégies
sont appliquées pour explorer et échantillonner le voisinage d’un nœud (comme dans
le cas d’une marche aléatoire) et les observations faites par les auteurs montrent qu’elles
ne produisent pas d’intégration ou plongement avec les mêmes propriétés Ils tinguent des similitudes entre les nœuds :
dis-Homophilie : Les noeuds qui sont fortement connectés et dans les mêmes
commu-nautés Equivalence structurelle : Les nœuds qui jouent un rôle similaire (hubs par
il existe d’autre méthodes de plongement des graphes, le tableau suivant2.4résume
un ensemble des approches de plongement des graphes ainsi que leur propriétés
Trang 31FIGURE2.4 – résumé de méthodes de plongement des graphes
2.1.3 Les méthodes sur le plongement de graphes de connaissances
Le plongement de graphes de connaissances ( en anglais Knowledge graphs bedding) vise à intégrer des entités et des relations dans un espace vectoriel continu
em-de faible dimension, afin em-de simplifier la manipulation tout en préservant la structureinhérente du graphe de connaissances KG Ces plongements d’entités et de relationspeuvent en outre être utilisées pour toutes sortes de tâches, telles que l’achèvement degraphe de connaissance (KG completion), l’extraction de relations, la classification desentités et la résolution des entités [Heckerman et al., 2007]
La plupart des techniques actuellement disponibles exécutent la tâche plongementuniquement sur la base de faits observés ces techniques représente d’abord des entités
et des relations dans un espace vectoriel continu et définit une fonction de scoring sur
chaque fait pour en mesurer la plausibilité Le plongement des entités et des relationspeut alors être obtenue en maximisant la plausibilité totale des faits observés Plusieursapproches de graphes de connaissances ont été proposées par différents auteurs et
classent grossièrement ces techniques de plongement en deux groupes : les modèles
de distance translationnelle et les modèles d’appariement sémantique.
Les premiers utilisent des fonctions de notation basées sur la distance et les seconds sur la similarité.
Trang 32FIGURE2.5 – structure des méthodes sur le plongement de graphes de connaissances.
2.1.3.1 Les modèles de distance translationnelle
Les modèles de distance translationnelle exploitent les fonctions de notation
ba-sées sur la distance Ils mesurent la plausibilité d’un fait comme la distance entre les deux entités, généralement après une translation effectuée par la relation.
TransE
TransE [Bordes et al., 2013] est le modèle de distance translationnelle le plus
repré-sentatif Il représente à la fois des entités et des relations en tant que vecteurs dans un
même espace, d’après l’auteur ,étant donné un fait (h,r,t), la relation est interprétéecomme un vecteur de translation r de sorte que les entités incorporées h et t peuvent
être reliées par r avec une faible erreur, c’est-à-dire h + r ≈ t quand (h,r,t) tient
L’intui-tion ici provient de [Zhang et al., 2016], qui apprend les représentations distribuées demots pour capturer des régularités linguistiques telles que : considérons un exemple :(AlfredHitchcock, Directeurde, Psycho)
Psycho - AlfredHitchcock ≈ Avatar - JamesCameron
Dans les données multi-relationnelles, une telle analogie tient en raison de la tion certaine de Directeur et par cette relation nous pouvons obtenir :
rela-AlfredHitchcock + Directeurde ≈ Psycho et JamesCameron + Diretceurde ≈ tar
Ava-La fonction de notation est alors définie comme la distance(négative)entre h+r et t,
Fonction de notation : f r (h, t ) = −kh + r − tk1/2
Malgré sa simplicité et son efficacité, TransE a des défauts dans le traitement desrelations 1 à N, N à 1 et N à N,[Lin et al., 2015] Prenons l’exemple des relations de 1 à
N Compte tenu de cette relation,c’est-à-dire ∃i = 1,··· , p telle que (h,r, t i) ∈ D+TransE
applique h + r ≈ ti pour tout t1≈ · · · ≈ tp puis t1≈ · · · ≈ tp
Trang 33Cela signifie qu’avec une relation de 1 à N, par exemple Directeurde, TransE rait apprendre des représentations vectorielles très similaires pour Psycho, Rebecca etRearWindow qui sont tous des films réalisés par AlfredHitchcock, même s’ils sont desentités totalement différentes Des désavantages similaires existent pour les relationsN-à-1 et N-à-N.
pour-Introduisant des plongements d’entités spécifiques à une relation Pour
surmon-ter les inconvénients de la TransE dans le traitement des relations 1 à N, N à 1 et N
à N, une stratégie efficace consiste à permettre à une entité d’avoir des tions distinctes lorsqu’elle participe à différentes relations De cette façon, même si lesplongements de Psycho, Rebecca, et RearWindow pourraient être très similaires étantdonné la relation Directeurde, elles pourraient encore être loin l’une de l’autre étantdonné les autres relations
Les projections sont alors supposées être reliées par r sur l’hyperplan avec une
faible erreur si (h,r,t) tient, c’est-à-dire h⊥+ r ≈ t⊥La fonction de notation est donc finie comme suit :
dé-f r (h, t ) = −kh⊥+ r − t⊥k22
similaire à celui utilisé dans TransE, en introduisant le mécanisme de projectiondans des hyperplans spécifiques aux relations, TransH permet une entité de jouer dif-férents rôles dans différentes relations
TransR
Trans R [Lin et al., 2015] partage une idée très similaire avec TransH Mais il duit des espaces spécifiques aux relations, plutôt que des hyperplans Dans TransR, lesentités sont représentées comme des vecteurs dans un espace d’entitéRd, et chaquerelation est associée à un espace spécifiqueRk et modélisée comme vecteur de tra-
Trang 34intro-ici Mr ∈ Rk×d est une matrice de projection de l’espace de l’entité à l’espace de lation de r Ensuite, la fonction de scoring est à nouveau définie comme suit :
2.1.3.2 Modèles d’appariement sémantique
Les modèles d’appariement sémantique exploitent les fonctions de notation
fon-dées sur la similarité Ils mesurent la plausibilité des faits en faisant correspondre la
sémantique latente des entités et les relations incarnées dans leurs représentationsvectorielles spatiales
RESCAL
RESCAL [Nickel et al., 2011] associe chaque entité à un vecteur pour capturer sa
sémantique latente Chaque relation est représentée sous la forme d’une matrice qui
modélise les interactions par paires entre les facteurs latents Le score d’un fait (h,r,t)
est défini par une fonction bilinéaire :
DistMult
DistMult [Yang et al., 2014] simplifie RESCAL en limitant Mr aux matrices
diago-nales Pour chaque relation r, il introduit un vecteur de plongement r ∈ R det nécessite
Mr = diag(r) La fonction de notation est donc définie comme suit :
f r (h, t ) = h>diag(r)t =Pd −1
i =0[r]i· [h]i· [t]i
Trang 35les tableaux suivants résume quelques méthodes de plongement de graphes deconnaissances avec certaines propriétés.
FIGURE2.6 – résumé des modèles de distance translationnelle
FIGURE2.7 – résumé de modèles d’appariement sémantique
Le tableau suivant 2.8nous montre un résumé comparatif sur les différents dèles dans la complexité spatiale et temporelle
Trang 36mo-FIGURE2.8 – comparaison des modèles dans la complexité spatiale et temporelle.
2.1.4 PyTorch-Biggraph
PytTorch-BigGraph (PBG) [Lerer et al., 2019],est une approche proposée
récem-ment, par les chercheurs du laboratoire de l’intelligence artificiel de facebook ,
PyTorch-BigGraph(PBG) est l’une des premières méthodes qui permet aux modèles de ment de graphes de connaissances de mettre à l’échelle, de former et de traiter desdonnées des graphes sur des structures avec des milliards de nœuds et des billions debords
plonge-PBG y parvient en permettant quatre éléments fondamentaux :
1 partitionnement des graphes, de sorte que le modèle n’a pas besoin d’être rement chargé en mémoire
entiè-2 calcul multithread sur chaque machine
3 l’exécution répartie sur plusieurs machines (ceci est optionnelle car elle dépenddes tâches), fonctionnant toutes simultanément sur des parties disjointes du graphe
4 échantillonnage négatif par lots, permettant de traiter >1 million de machine avec 100 négatifs par bord
bords/sec/-Dans cette approche PBG ,les auteurs corrigent certaines des lacunes des méthodestraditionnelles de plongement de graphes en divisant la structure du graphe en parti-
Trang 37tions P, divisées au hasard en partitions P dont la taille permet à deux partitions de tenir
en mémoire Par exemple, si un bord à une source dans la partition p1 et une
destina-tion dans la partidestina-tion p2, il est placé dans le seau (bucket en anglais) (p1, p2) Dans le
même modèle, les bords du graphe sont ensuite divisés en seaux (bucket) P2 en
fonc-tion de leur nœud source et destinafonc-tion Une fois les nœuds et les bords partifonc-tionnés,
l’entraînement peut être effectué sur un seau(bucket) à la fois L’apprentissage ne
né-cessite que le plongement de seaux (buckets) (p1, p2) soient stockées en mémoire La
structure PBG garantit que les seaux (buckets) ont au moins une partition de
plonge-ment préalableplonge-ment formée ,la figure2.9illustre la structure du graphe en partitions
FIGURE2.9 – structure de partitions du modèle PyTorch-BigGraph
https://ai.facebook.com/blog/
open-sourcing-pytorch-biggraph-for-faster-embeddings-of-extremely-large-graphs/
Un autre aspect important dans lequel PBG innove réellement est celui de la
pa-rallélisation et de la distribution du mécanismes de l’apprentissage PBG utilise les
primitives de parallélisation PyTorch pour implémenter un modèle de formation
dis-tribué qui exploite la structure de partition de bloc illustrée précédemment Dans ce
modèle, les machines individuelles se coordonnent pour s’entraîner sur des sceaux
dis-joints à l’aide d’un serveur de verrouillage qui répartit les godets entre les travailleurs
afin de minimiser la communication entre les différentes machines Chaque machine
peut entraîner le modèle en parallèle à l’aide de différents seaux(buckets)