AutoAlign: Alignement automatique et efficace des graphes de connaissances par des modèles de langage de grande taille
AutoAlign:Une méthode d’alignement de graphes de connaissances entièrement automatique et efficace, conduite par des modèles linguistiques à grande échelle
Le graphe de connaissances (Knowledge Graph, KG) a été largement utilisé dans divers domaines tels que les systèmes de questions-réponses, les systèmes de conversation et les systèmes de recommandation. Cependant, il peut y avoir des cas où le même entité réelle est stockée sous différentes formes dans des graphes de connaissances différents, rendant ainsi la communauté de connaissances commune et la complémentarité d’information très difficiles. En particulier dans les applications pratiques, la fusion de ces graphes de connaissances est une tâche centrale. Cela implique l’alignement des entités (Entity Alignment), c’est-à-dire l’identification des entités représentant la même entité réelle dans différents graphes de connaissances. Cependant, les méthodes existantes nécessitent généralement un alignement manuel de graines (Seed Alignments), qui est coûteux, non portable et peut introduire des biais en raison de l’intervention humaine, affectant ainsi l’efficacité de l’alignement.
Pour relever ces défis, Rui Zhang et d’autres chercheurs de Tsinghua University, University of Melbourne, Universitas Indonesia, Chinese University of Hong Kong et Shenzhen Institute of Advanced Technology, Chinese Academy of Sciences ont proposé une nouvelle méthode appelée AutoAlign. Cette méthode a été officiellement publiée dans le numéro de juin 2024 de l’IEEE Transactions on Knowledge and Data Engineering. L’article propose la première méthode entièrement automatique d’alignement de graphes de connaissances sans aucun alignement manuel de graines, en utilisant des modèles linguistiques à grande échelle (Large Language Model, LLM) pour réaliser un alignement efficace et précis des entités et des prédicats.
Contexte de l’étude
Les connaissances ou faits réels dans un graphe de connaissances sont souvent stockés sous forme de triplets, chaque triplet comprenant une entité tête (Head), un prédicat (Predicate) et une entité queue (Tail). Ces triplets incluent à la fois des triplets de relations (Relationships Triples) et des triplets d’attributs (Attribute Triples). La tâche d’alignement doit non seulement identifier les paires d’entités identiques dans différents graphes de connaissances, mais aussi aligner leurs prédicats. Les méthodes existantes reposent principalement sur l’apprentissage de représentations mais nécessitent toutes un alignement manuel de graines, ce qui est difficile à appliquer à grande échelle. Ainsi, cette étude vise à développer une méthode automatisée d’alignement de graphes de connaissances sans intervention manuelle.
Présentation de la méthode
AutoAlign réalise l’alignement automatique des graphes de connaissances par le biais de deux modules principaux : le module d’alignement de prédicats et le module d’alignement d’entités.
Module d’alignement de prédicats
AutoAlign commence par aligner les prédicats en construisant un graphe de proximité des prédicats (Predicate-Proximity Graph) à l’aide d’un modèle linguistique à grande échelle pour capturer les similarités entre prédicats de deux graphes de connaissances. Les étapes spécifiques sont les suivantes :
Construction du graphe de proximité des prédicats : remplacer dans chaque triplet du graphe de connaissances les entités tête et queue par leurs types correspondants pour créer un graphe représentant les relations de types d’entités. Par exemple, remplacer le triplet « 〈dbp:kromsdorf, dbp:located_in, dbp:germany〉 » par « 〈village, dbp:located_in, country〉 ».
Alignement automatique des types d’entités : utiliser un modèle linguistique à grande échelle (comme ChatGPT et Claude) pour aligner automatiquement les types d’entités des deux graphes de connaissances. Par exemple, obtenir automatiquement les paires de types similaires dans les deux graphes de connaissances en soumettant des suggestions à Claude.
Apprentissage du module : définir et optimiser une fonction objectif pour apprendre les embeddings de prédicats de manière à ce que les prédicats représentant les mêmes relations dans différents graphes de connaissances aient des représentations similaires dans l’espace vectoriel. Ce processus utilise deux agrégations : somme pondérée et mécanisme d’attention. Le mécanisme d’attention performe mieux dans les expériences.
Module d’alignement d’entités
Après l’alignement des prédicats, AutoAlign procède à l’alignement des entités via les étapes suivantes :
Calcul indépendant des embeddings d’entités : utiliser l’algorithme TransE pour calculer séparément les embeddings des entités dans chaque graphe de connaissances.
Apprentissage conjoint : transférer les embeddings des entités des deux graphes de connaissances dans un espace vectoriel commun en calculant les similarités basées sur les attributs des entités. Plus précisément, les embeddings d’attributs sont basés sur le contenu textuel des valeurs d’attribut, rapprochant ainsi les vecteurs des entités aux attributs similaires.
Alignement des entités : enfin, utiliser les embeddings obtenus dans l’espace vectoriel unifié pour calculer les similarités entre toutes les paires d’entités et filtrer les paires dissimilaires en fixant un seuil, réalisant ainsi l’alignement des entités.
Vue d’ensemble du processus principal
Pour réaliser un alignement intégré de graphes de connaissances, AutoAlign commence par fusionner les deux graphes de connaissances dans leur forme originale et génère les triplets de proximité des prédicats et les triplets d’attributs. Ensuite, AutoAlign obtient les embeddings de prédicats, de structure et d’attributs unifiés séparément. Après avoir obtenu les embeddings d’entités, le module d’alignement d’entités identifie toutes les paires d’entités dont la similarité dépasse le seuil fixé, réalisant ainsi l’alignement des entités.
Résultats expérimentaux
AutoAlign a été largement testé sur plusieurs ensembles de données de graphes de connaissances du monde réel, démontrant que son efficacité dans la tâche d’alignement des entités est significativement supérieure à celle des méthodes actuelles de pointe.
Performance de l’alignement des entités : AutoAlign a montré une performance Hits@10 plus élevée que d’autres méthodes existantes (comme MultiKE, AttrE, etc.). En particulier, AutoAlign a dépassé la méthode de base la plus performante de 10,65% sur le jeu de données dw-nb en termes de Hits@10.
Impact des modules d’embedding : la contribution individuelle des modules d’embedding de structure et d’attribute a été évaluée via des expériences d’ablation, montrant que l’utilisation des embeddings d’attributs améliore significativement l’effet d’alignement.
Avantage de l’utilisation des modèles linguistiques à grande échelle : AutoAlign utilise des modèles linguistiques à grande échelle pour réaliser l’alignement entièrement automatisé des types d’entités et des prédicats, offrant un degré d’automatisation et une précision plus élevés par rapport aux méthodes basées sur l’intervention humaine.
Conclusion et travaux futurs
AutoAlign démontre le potentiel des modèles linguistiques à grande échelle pour améliorer les performances de l’alignement des graphes de connaissances, réduisant le travail manuel et utilisant les connaissances stockées dans les grands modèles pour réaliser un alignement efficace des graphes de connaissances. Les recherches futures pourront explorer l’application de méthodes d’alignement de graphes de connaissances conduites par des modèles linguistiques à grande échelle dans des domaines plus larges basés sur des graphes ou hypergraphes, tels que l’alignement des graphes de caractéristiques ou des graphes régionaux dans les systèmes de recommandation, afin d’enrichir leurs capacités de représentation.
Par cette étude, AutoAlign offre un chemin viable pour un alignement de graphes de connaissances entièrement automatique et efficace, en apportant non seulement de nouvelles perspectives pour la recherche académique mais aussi une avancée technologique pour l’intégration des données et la découverte de connaissances dans les applications pratiques.