Retrieval Augmented Language Model Pre-Training (REALM)

Jan 24 2023
mots-clés : modélisation du langage, réponse aux questions, récupération de passage, modèle interprétable, connaissances interprétables, T5, récupérateur de connaissances neuronales La pré-formation du modèle de langage de configuration a été utilisée pour apprendre des représentations utiles du langage à partir de texte sans étiquette. Le modèle pré-formé est ensuite affiné pour effectuer la tâche en aval.

mots-clés : modélisation du langage, question-réponse, récupération de passages, modèle interprétable, connaissances interprétables, T5, neural knowledge retriever

Dans cet article, nous allons parcourir l'article REALM : Retrieval-Augmented Language Model Pre-Training by Google Research

TL;DR

  • La pré-formation du modèle linguistique capture une bonne quantité de connaissances mondiales pour les tâches de la PNL telles que les questions-réponses. Or cette connaissance est stockée dans les paramètres du réseau de neurones. Afin de stocker plus de connaissances, il faut opter pour un réseau encore plus grand, c'est-à-dire encore plus de paramètres.
  • Contribution clé de cet article : Une solution au problème mentionné ci-dessus. L'approche décrite dans cet article nous permet de construire des modèles neuronaux avec relativement moins de paramètres qui fonctionnent mieux que SOTA sur des tâches en aval telles que la question-réponse.
  • Afin de capturer les connaissances de manière modulaire et interprétable, la pré-formation du modèle de langage est complétée par un récupérateur de connaissances qui permet au modèle de récupérer et de surveiller les documents d'un grand corpus tel que Wikipedia, qui est utilisé lors de la pré-formation, ajustement et inférence.
  • L'idée clé de REALM est de former le récupérateur à l'aide d'un signal basé sur les performances d'un texte non supervisé : une récupération qui améliore la perplexité du modèle de langage est utile et doit être récompensée, tandis qu'une récupération non informative doit être pénalisée.

Configuration de l'arrière-plan et de l'expérience

La pré-formation du modèle de langage a été utilisée pour apprendre des représentations utiles du langage à partir de texte non étiqueté. Le modèle pré-formé est ensuite affiné pour effectuer la tâche en aval. Les paramètres du modèle sont essentiellement mis à jour dans cette étape de réglage fin en plus des représentations apprises à l'étape de pré-formation. Masked-Language-Model (MLM) est utilisé comme variante de pré-formation dans cet article. Une différence clé ou une extension dans cet article est que - les auteurs utilisent différentes variantes de masquage - comme le masquage de l'étendue saillante dont nous discuterons plus loin.
Je crois que les lecteurs sont familiers avec la tâche de répondre aux questions du domaine ouvert. Les auteurs ont choisi cette tâche afin de voir quelles connaissances ont été incorporées dans les paramètres du modèle. L'architecture typique des systèmes de questions-réponses utilise une approche en deux étapes : récupérer les documents pertinents et extraire une réponse du document. L'idée clé de cet article étend cette approche en deux étapes avec la pré-formation du modèle de langage.

Contributions clés

  • Une nouvelle approche qui augmente la pré-formation du modèle de langage avec un récupérateur de connaissances textuelles. En outre, sur la façon de former un tel récupérateur de connaissances de manière non supervisée en utilisant Masked-Language-Model comme signal d'apprentissage et rétro-propagation à travers une étape de récupération qui considère des millions de documents. Essentiellement, une récupération qui améliore la perplexité du modèle de langage doit être récompensée et la récupération non informative doit être pénalisée.
  • L'efficacité de la pré-formation REALM est démontrée en affinant la réponse aux questions du domaine ouvert et en la comparant à des modèles de pointe sur 3 points de repère de réponse aux questions. L'approche REALM surpasse toutes les méthodes de 4 à 16 % en termes de précision absolue.
  • L'intégration d'un module de récupération neuronale à grande échelle pendant la pré-formation pose un défi de calcul important, car le récupérateur doit considérer des millions de documents pour chaque étape de pré-formation et il doit apprendre par rétro-propagation.
  • Résoudre ce problème : structurer le récupérateur de sorte que le calcul effectué pour chacun puisse être mis en cache et mis à jour de manière asynchrone et que la sélection des meilleurs documents puisse être formulée en tant que MIPS.
  • Des travaux antérieurs ont utilisé une étape de récupération discrète sur les réseaux de neurones ( DrQA de Danqi Chen ), mais ne s'appliquaient pas à la pré-formation LM et utilisaient des récupérateurs non appris.
  • kNN-LMs (Khandelwal et al.) N'utilise que des exemples étiquetés pour la tâche cible, non affinés pour les tâches en aval. En outre, cette approche n'utilise aucune formation préalable, elle effectue un passage unique sur les données pour créer le contexte et la cible de formation du magasin Key-Value.
  • L'approche REALM est pré-formée puis affinée sur la question-réponse du domaine ouvert et est évaluée sur 3 ensembles de données de référence : NaturalQuestion-open, WebQuestions, CuratedTrec.
  • Par rapport aux modèles de questions-réponses à domaine ouvert SOTA tels que T5
  • La métrique de correspondance exacte est utilisée dans l'évaluation.
  • Dans la pré-formation et le réglage fin, REALM apprend une distribution de probabilité P(y|x) pour l'entrée x sur les sorties possibles y. Pour la pré-formation, x est une phrase du corpus de pré-formation X avec des jetons masqués ou des étendues saillantes masquées. Pour une tâche de réglage fin, x est une question et y est la réponse.
  • REALM décompose p(y|x) en deux étapes : récupérer et prédire. Pour l'entrée x, il récupère les documents pertinents z d'un corpus de connaissances Z. Ensuite, il conditionne l'entrée ainsi que le document récupéré pour générer la sortie y. Ici, z est traité comme une variable latente et la probabilité globale de générer y est calculée par marginalisé sur tous les documents possibles z :
  • La probabilité globale de générer y est calculée en marginalisant sur tous les documents possibles z.

L'architecture du modèle se présente sous la forme de deux composants : un Neural Knowledge Retriever , qui modélise p(z|x) et le Knowledge Augmented Encoder , qui modélise p(y|z,x).

Récupérateur de connaissances neuronales

Le récupérateur est défini à l'aide d'un modèle de produit interne dense :

Le score de pertinence f(x,z) entre x et z est défini comme le produit scalaire des plongements vectoriels. La distribution de récupération est le softmax sur tous les scores de pertinence. Le schéma détaillé du fonctionnement de Knowledge Retriever est présenté ci-dessous :

Récupérateur de connaissances neuronales

Encodeur augmenté de connaissances

Étant donné une entrée x et un document récupéré z, Knowledge Augmented Encoder définit p(y|z,x). l'entrée x et le document récupéré z sont joints en une seule séquence et introduits dans un modèle BERT différent et la représentation du jeton [CLS] est utilisée comme représentation groupée de la séquence. L'idée clé est de permettre une attention croisée entre l'entrée x et le document z avant de prédire y.

Juste pour rafraîchir, la figure ci-dessous montre ce que fait l'attention croisée - Dans le réglage encodeur-décodeur, côté décodeur pour chaque pas de temps décodé jusqu'à présent, la représentation de chaque jeton est recalculée à l'aide de l'attention croisée. Autrement dit, en utilisant chaque jeton décodé jusqu'à présent comme requête et en utilisant la représentation de la dernière couche de l'encodeur comme clé-valeur, l'attention est calculée et chaque représentation de jeton côté décodeur est recalculée.

Pour la tâche de pré-formation Masked-Language-Model , le modèle doit prédire la valeur d'origine du jeton masqué dans l'entrée x. Le même objectif MLM est utilisé comme présenté dans le document BERT.

Pour la question de domaine ouvert répondant à la tâche de réglage fin , nous voulons que le modèle produise la réponse y. L'hypothèse selon laquelle la réponse y peut être trouvée sous la forme d'une séquence contiguë de jetons dans un document z. Soit S(z, y) l'ensemble des étendues correspondant à y dans z. Alors p(y|z,x) peut être défini comme :

La représentation des jetons de début et de fin pour les étendues est utilisée dans Feed-Forward-Neural-Network pour calculer la probabilité
Encodeur augmenté de connaissances

Injecter des biais inductifs dans la pré-formation

Les auteurs ont présenté quelques stratégies qui ont guidé davantage le modèle vers des récupérations plus significatives :

Masquage de portée saillante

Afin de faire en sorte que le modèle apprenne la connaissance du monde lors de la prédiction du jeton manquant pendant le MLM, les auteurs ont masqué les étendues saillantes relatives aux entités nommées. Ils ont utilisé un étiqueteur d'entités nommées basé sur BERT et masqué des étendues étiquetées en tant qu'entités et ont demandé au modèle dans la pré-formation REALM de prédire les entités masquées.

Document nul

Considérez le cas où aucun document n'a besoin d'être récupéré pour prédire les jetons masqués - ceci est modélisé en ajoutant un document vide vide aux documents récupérés top-k.

Interdire les récupérations triviales

Ici, les auteurs ont tenté d'aborder la question lorsque le corpus de préformation et le corpus de connaissances sont identiques. Si la phrase masquée x provient du document z, l'encodeur de connaissances peut prédire trivialement y en regardant la version non masquée de x dans le document z. Cela se traduit par un gradient positif important - si cela se produit trop souvent, le récupérateur de connaissances finit par apprendre à rechercher des correspondances de chaînes exactes entre l'entrée x et le document z. Ainsi, ces candidats sont exclus lors de la pré-formation.

Initialisation — Démarrage à chaud

Au début de la formation, si le récupérateur n'a pas de bons plongements pour l'entrée x et les documents z, les documents récupérés z seront probablement sans rapport avec l'entrée x. Cela amène l'encodeur de connaissances à apprendre à ignorer les documents récupérés. Une fois que cela se produit, le récupérateur de connaissances ne reçoit jamais de gradient significatif et ne peut donc pas s'améliorer, créant un cercle vicieux. Afin d'éviter ce problème de démarrage à froid, les auteurs effectuent un démarrage à chaud pour ces incorporations en tirant parti du BERT formé avec un objectif de formation simple - Inverse Cloze Task (ICT) lorsqu'une phrase est donnée, le modèle est formé pour prédire le contexte/document d'où il provient.

Entraînement

L'objectif de formation pour la pré-formation et le réglage fin est de maximiser le log de log-vraisemblance p(y|x) de la sortie correcte y. Étant donné que Neural Knowledge Retriever (θ) et Knowledge Augmented Encoder (ϕ) sont des réseaux de neurones différentiables, nous permettant ainsi de calculer des gradients, de rétropropager les erreurs et de mettre à jour les paramètres du modèle à l'aide de la descente de gradient stochastique.

Le principal défi est que le calcul de la probabilité marginale p(y|x) implique une sommation sur tous les documents z du corpus de connaissances Z. Les auteurs ont approché cela en additionnant à la place les documents top-k avec la probabilité la plus élevée. Les auteurs tirent parti des algorithmes de recherche de produit interne maximal (MIPS) pour trouver les documents top-k approximatifs à l'aide du score de pertinence f(x,z) - produit interne entre les incorporations de requête et de document.

Afin d'utiliser MIPS, un index de recherche est créé à l'aide des incorporations de documents, comme indiqué dans la figure ci-dessus pour Neural Knowledge Retriever(θ) . Un problème ici est que l'index de recherche deviendra obsolète chaque fois que les paramètres du modèle seront mis à jour après chaque étape .

Résolution du problème d'index de recherche MIPS obsolète avec l'actualisation asynchrone

Réincorporation et réindexation asynchrones

L'une des solutions employées par les auteurs consiste à actualiser l'index de recherche en réintégrant et en réindexant de manière asynchrone tous les documents avec le dernier ensemble de paramètres de modèle, après quelques centaines d'étapes. Même avec cette solution, l'index est légèrement obsolète entre les actualisations. Mais les auteurs montrent empiriquement que cette procédure aboutit à une optimisation stable, à condition que le rafraîchissement de l'index se produise à un rythme suffisamment fréquent.

Deux métiers : formateur et constructeur d'index

La figure ci-dessous montre la pré-formation REALM avec des actualisations MIPS asynchrones. Deux travaux sont en cours d'exécution à un moment donné : le travail d'entraînement principal - qui effectue des mises à jour de gradient sur les paramètres et le travail de création d'index secondaire - qui intègre et indexe les documents. Comme on peut le voir sur la figure, le formateur envoie au constructeur d'index un instantané de ses paramètres, le formateur continue ensuite à s'entraîner tandis que le constructeur d'index utilise le dernier instantané des paramètres pour construire un nouvel index en arrière-plan. Dès qu'un nouvel index est construit, il est envoyé au formateur.

Choix au rafraichissement

Les auteurs ont utilisé l'actualisation asynchrone uniquement pour la pré-formation alors qu'elle aurait pu être utilisée pour la pré-formation ainsi que pour les tâches de réglage fin. Les auteurs ont utilisé l'index MIPS construit une fois et utilisé pour le réglage fin et ne mettent pas à jour les intégrations de documents.

Une expérience intéressante à réaliser serait de voir comment le taux de rafraîchissement de l'index MIPS contribue aux performances du modèle. En outre, l'impact de l'utilisation de plusieurs sources pour Knowledge Corpus.

Qu'est-ce que l'apprentissage Neural Knowledge Retriever ?

Les auteurs ont clairement expliqué comment l'objectif de formation encourage les récupérations significatives - en récompensant les récupérations pertinentes et en pénalisant les récupérations non pertinentes.

Pour une requête x et un document z donnés, le score de pertinence f(x,z) est attribué par le récupérateur au document z. Il est démontré comment une seule étape de descente de gradient pendant la pré-formation REALM modifie ce score en examinant le gradient par rapport aux paramètres de Neural Knowledge Retriever(θ) :

  • Pour chaque document z, le gradient incite le récupérateur à modifier le score f(x,z) par r(z) -> croissant si r(z) est positif et décroissant si r(z) est négatif.
  • r(z) est positif ssi p(y|z,x) > p(y|x) -> probabilité de prédire la sortie correcte lorsque le document z est supérieur à la probabilité de sortie correcte lors de l'échantillonnage aléatoire d'un document à partir de p(z| X). Ainsi, le document z reçoit une mise à jour positive lorsqu'il fonctionne mieux que prévu. La dérivation détaillée du gradient est fournie en annexe de l'article

Les auteurs présentent une comparaison de l'approche REALM avec les systèmes d'AQ ouverts basés sur la récupération et les systèmes d'AQ ouverts basés sur la génération. Les systèmes d'AQ ouverts basés sur la récupération récupèrent d'abord les documents pertinents et un système de compréhension de lecture pour extraire la réponse des documents. Les systèmes d'AQ ouverts basés sur la génération modélisent cela comme une tâche de prédiction de séquence - codez la question, puis décodez la réponse jeton par jeton en fonction de l'encodage.

Les auteurs ont réutilisé tous les hyperparamètres du papier : Lee et al.(2019) . Vous pouvez vous référer au papier pour obtenir des détails réels sur les détails de niveau infra sur la formation, comme le nombre de TPU utilisés, la taille du lot, etc.

Résultats des tests sur les benchmarks Open-QA
  • Le tableau 1 montre la précision de différentes approches sur trois ensembles de données d'assurance qualité ouverte. Le tableau montre également le nombre de paramètres pour chaque modèle.
  • Comme on peut le voir dans le tableau, les systèmes d'AQ ouverts génératifs basés sur T5 sont puissants et leurs performances s'améliorent avec la taille du modèle. En revanche REALM(39.2, 40.4) surpasse le modèle T5–11B(34.5) tout en étant 30 fois plus petit .
  • La comparaison la plus directe de REALM est avec ORQA où la configuration de réglage fin, les hyper-paramètres et les données de formation sont identiques. L'amélioration observée dans REALM par rapport à ORQA est due à de meilleures méthodes de pré-formation. Le tableau montre également que l'approche REALM peut être appliquée à la fois sur un paramètre de corpus unique et sur un paramètre de corpus séparé.
  • Les auteurs ont supprimé les composants critiques de REALM et ont présenté les éléments impactés. Afin de comprendre si la tâche MLM de pré-formation REALM améliore le récupérateur ou l'encodeur, les auteurs réinitialisent les paramètres du récupérateur ou de l'encodeur à leurs paramètres de base (tels que présentés dans l'article ORQA) avant la pré-formation et les intègrent au réglage fin.
  • La réinitialisation du récupérateur et de l'encodeur réduit le système à l'ORQA de base. La conclusion de l'étude sur l'ablation est que les deux composants bénéficient de l'approche REALM, mais les meilleures performances sont obtenues lorsque les deux sont pré-formés avec REALM et utilisés tous les deux .

Un système de récupération explicite permet aux auteurs de s'adapter aux nouvelles connaissances du monde en modifiant simplement les documents du corpus. Pour démontrer cela, les auteurs ont remplacé le corpus de connaissances par une version plus récente du corpus Wikipedia après la pré-formation. Lorsque la requête d'entrée porte sur un fait où les deux corpus ne sont pas d'accord, REALM peut modifier la prédiction pour refléter les informations mises à jour. Cependant, même avec un mécanisme de récupération de connaissances explicite, l'encodeur à connaissances augmentées finit par se souvenir de certaines connaissances du monde, rendant la prédiction de certaines phrases d'entrée non mises à jour avec le nouveau corpus.