XYZNOT

Articles · arXiv 2005.11401

Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks

Publié le cs.CLcs.LG arXivPDF

Lire avec traduction et IA

Résumé en trois lignes

  1. 🎯 Les modèles de langue purement paramétriques peinent à accéder aux faits, à les réviser et à s'y ancrer, ce qui entraîne des hallucinations sur les tâches à forte intensité de connaissances.
  2. 🔧 Introduit RAG, combinant un Dense Passage Retriever (mémoire non paramétrique sur Wikipedia) avec un générateur BART (mémoire paramétrique), affinés de bout en bout via marginalisation sur des documents latents.
  3. 📈 Établit l'état de l'art en QA en domaine ouvert (44,5 EM sur Natural Questions) et génère des textes plus factuels, précis et diversifiés que les modèles de référence purement paramétriques.

Résumé

Il a été démontré que les grands modèles de langue pré-entraînés stockent des connaissances factuelles dans leurs paramètres et atteignent des résultats à l'état de l'art lorsqu'ils sont affinés sur des tâches aval de TAL. Cependant, leur capacité à accéder aux connaissances et à les manipuler avec précision reste limitée ; ainsi, sur les tâches à forte intensité de connaissances, leurs performances sont en retrait par rapport à des architectures dédiées. De plus, fournir la provenance de leurs décisions et mettre à jour leurs connaissances du monde demeurent des problèmes de recherche ouverts. Les modèles pré-entraînés dotés d'un mécanisme d'accès différentiable à une mémoire non paramétrique explicite peuvent surmonter cette limite, mais ils n'ont jusqu'à présent été étudiés que pour des tâches aval extractives. Nous explorons une méthode générale d'affinage pour la génération augmentée par recherche documentaire (RAG, pour Retrieval-Augmented Generation) — des modèles qui combinent des mémoires pré-entraînées paramétriques et non paramétriques pour la génération de langage. Nous introduisons des modèles RAG dont la mémoire paramétrique est un modèle seq2seq pré-entraîné et la mémoire non paramétrique est un index vectoriel dense de Wikipedia, interrogé à l'aide d'un extracteur neuronal pré-entraîné. Nous comparons deux formulations de RAG : l'une qui conditionne l'ensemble de la séquence générée sur les mêmes passages récupérés, l'autre qui peut utiliser des passages différents par token. Nous affinons et évaluons nos modèles sur un large éventail de tâches de TAL à forte intensité de connaissances et établissons l'état de l'art sur trois tâches de QA en domaine ouvert, surpassant les modèles seq2seq paramétriques et les architectures dédiées de type recherche-puis-extraction. Pour les tâches de génération de texte, nous constatons que les modèles RAG génèrent un langage plus spécifique, diversifié et factuel qu'une référence seq2seq purement paramétrique de pointe.

Résumé original (anglais)

Large pre-trained language models have been shown to store factual knowledge in their parameters, and achieve state-of-the-art results when fine-tuned on downstream NLP tasks. However, their ability to access and precisely manipulate knowledge is still limited, and hence on knowledge-intensive tasks, their performance lags behind task-specific architectures. Additionally, providing provenance for their decisions and updating their world knowledge remain open research problems. Pre-trained models with a differentiable access mechanism to explicit non-parametric memory can overcome this issue, but have so far been only investigated for extractive downstream tasks. We explore a general-purpose fine-tuning recipe for retrieval-augmented generation (RAG) -- models which combine pre-trained parametric and non-parametric memory for language generation. We introduce RAG models where the parametric memory is a pre-trained seq2seq model and the non-parametric memory is a dense vector index of Wikipedia, accessed with a pre-trained neural retriever. We compare two RAG formulations, one which conditions on the same retrieved passages across the whole generated sequence, the other can use different passages per token. We fine-tune and evaluate our models on a wide range of knowledge-intensive NLP tasks and set the state-of-the-art on three open domain QA tasks, outperforming parametric seq2seq models and task-specific retrieve-and-extract architectures. For language generation tasks, we find that RAG models generate more specific, diverse and factual language than a state-of-the-art parametric-only seq2seq baseline.

Guide de lecture

Problème et motivation

Les modèles de langue pré-entraînés emmagasinent d'importantes connaissances factuelles au sein de leurs paramètres (mémoire paramétrique). Cependant, ils présentent des inconvénients majeurs : ils peinent à étendre ou mettre à jour leurs connaissances sans réentraînement, ne peuvent pas facilement fournir la provenance ou l'interprétabilité de leurs sorties, et sont sujets aux hallucinations.

Bien que des modèles hybrides paramétriques/non paramétriques comme REALM et ORQA aient associé la recherche différentiable au masquage de modèle de langue, ils étaient limités au question-réponse extractif. Les architectures séquence-à-séquence (seq2seq) standards comme BART et T5 sont restées largement en boucle fermée (« closed-book »). Ce travail comble cette lacune en proposant la Retrieval-Augmented Generation (RAG), un cadre général d'affinage qui couple un extracteur neuronal dense pré-entraîné avec un générateur autorégressif seq2seq pour la génération et la classification en domaine ouvert.

Idées clés

  • Mémoire hybride paramétrique et non paramétrique : La mémoire non paramétrique se compose d'un index vectoriel dense de 21 millions de passages Wikipedia de 100 mots, accessible via Maximum Inner Product Search (MIPS). La mémoire paramétrique est un générateur BART pré-entraîné.
  • Affinage de bout en bout : L'encodeur de requêtes et le générateur sont entraînés conjointement en traitant les passages récupérés comme des variables latentes et en minimisant la log-vraisemblance marginale négative des tokens cibles sans supervision explicite de la recherche.
  • Deux formulations de conditionnement :
    • RAG-Sequence : Se conditionne sur le même document extrait pour l'intégralité de la séquence générée.
    • RAG-Token : Permet à chaque token généré de prêter attention et de marginaliser sur différents passages récupérés.
  • Connaissances du monde interchangeables à chaud : L'index externe peut être remplacé au moment de l'inférence (par exemple, remplacer un index Wikipedia de 2016 par un index de 2018) afin d'actualiser les connaissances du monde sans modifier les poids du modèle.

Méthode

Étant donné une séquence d'entrée , le retriever produit une distribution sur les documents , et le générateur génère des tokens cibles conditionnés à la fois sur et .

Le retriever s'appuie sur Dense Passage Retriever (DPR) : où et . Les meilleurs candidats sont récupérés par MIPS avec FAISS. L'index de documents et l'encodeur de documents sont gelés, tandis que et les paramètres du générateur BART sont affinés.

RAG-Sequence

Le modèle traite le document récupéré comme une variable latente unique pour toute la séquence : Le décodage peut être évalué à l'aide du Thorough Decoding (exécution d'une recherche par faisceau (beam search) par document et calcul des passes avant pour les hypothèses candidates à travers tous les documents) ou du Fast Decoding (approximation des probabilités manquantes du faisceau à 0).

RAG-Token

Le modèle marginalise sur les documents à chaque étape de token, ce qui permet un mélange de contenus issus de plusieurs sources au niveau du token : Cela produit une probabilité de transition autorégressive standard qui s'intègre directement au beam search.

Résultats

  • QA en domaine ouvert : RAG établit un nouvel état de l'art sur les benchmarks ouverts en utilisant la correspondance exacte (EM) :
    • Natural Questions : 44,5 (RAG-Seq) contre 41,5 (DPR) et 36,6 (T5-11B+SSM).
    • TriviaQA (split standard ouvert) : 56,8 (RAG-Seq) ; sur le split de test TQA-Wiki : 68,0 (RAG-Seq) contre 60,5 (T5-11B+SSM).
    • WebQuestions : 45,5 (RAG-Token) contre 41,1 (DPR).
    • CuratedTrec : 52,2 (RAG-Seq) contre 50,6 (DPR).
    • De manière notable, sur Natural Questions, RAG a obtenu 11,8 % d'EM lorsque la réponse correcte était totalement absente du contexte extrait (cas où les modèles extractifs obtiennent 0 %).
  • Génération abstractive : Sur Open MS-MARCO, RAG-Sequence atteint 40,8 en Rouge-L et 44,2 en Bleu-1, surpassant BART (38,2 Rouge-L, 41,6 Bleu-1).
  • Génération de questions Jeopardy : Des annotateurs humains ont jugé RAG-Token plus factuel que BART dans 42,7 % des cas, contre 7,1 % seulement à l'avantage de BART. Les évaluateurs ont également jugé RAG plus spécifique (37,4 % contre 16,8 %).
  • Vérification de faits : Sur FEVER 3-classes, RAG atteint une exactitude d'étiquetage de 72,5 % (à 4,3 % des systèmes en pipeline supervisés par des preuves de référence) ; sur 2-classes, RAG atteint 89,5 % d'exactitude.
  • Mise à jour des connaissances à chaud : Lors d'un test temporel portant sur 82 dirigeants entre 2016 et 2018, RAG a obtenu 70 % d'exactitude pour les dirigeants de 2016 avec l'index 2016 et 68 % pour les dirigeants de 2018 avec l'index 2018, s'effondrant drastiquement (12 % et 4 %) en cas de désaccord d'index.

Limites et questions ouvertes

  • Effondrement de la recherche (Retrieval Collapse) : Pour les tâches nécessitant un conditionnement factuel explicite plus faible (comme la génération d'histoires ouvertes), le retriever peut s'effondrer en extrayant des documents statiques et invariants tandis que le générateur apprend à les ignorer.
  • Indexation fixe des documents : L'encodeur de documents reste statique pendant l'affinage en raison du coût de calcul prohibitif d'une réindexation continue de 21 millions de vecteurs, ce qui limite l'adaptation du retriever.
  • Ancrage à la source et biais : La mémoire non paramétrique reste vulnérable à la désinformation et aux biais présents dans le corpus de connaissances sous-jacent (Wikipedia).
  • Pré-entraînement conjoint : Les composants d'extraction et de génération ont été pré-entraînés séparément avant l'affinage pour les tâches aval, ce qui laisse le pré-entraînement conjoint de zéro comme une piste ouverte.

Termes clés

Retrieval-Augmented Generation (RAG)
Cadre hybride combinant un retriever neuronal pré-entraîné avec un modèle séquence-à-séquence pré-entraîné pour conditionner la génération sur des passages de texte non paramétriques extraits.
Parametric Memory
Connaissances factuelles implicites stockées dans les poids du réseau de neurones du générateur seq2seq pré-entraîné (BART).
Non-Parametric Memory
Collection de documents externe et explicite (par ex. un index vectoriel dense FAISS de 21 millions de passages de Wikipedia) consultée lors de l'inférence.
RAG-Sequence
Formulation de RAG traitant le passage récupéré comme une variable latente maintenue constante sur l'ensemble de la séquence générée.
RAG-Token
Formulation de RAG qui marginalise individuellement sur les k meilleurs documents récupérés à chaque token généré, permettant une synthèse multi-sources.
Dense Passage Retriever (DPR)
Architecture à double encodeur BERT qui évalue la pertinence d'un document par rapport à une requête via une recherche par produit scalaire maximal dans un espace vectoriel dense.
Maximum Inner Product Search (MIPS)
Formulation mathématique de recherche utilisée pour retrouver rapidement les k vecteurs de documents les plus proches d'une requête en temps sous-linéaire.
Index Hot-Swapping
Action de remplacer l'index de documents non paramétrique par des informations actualisées sans réentraîner ni affiner les paramètres du modèle.

Questions

Quelle est la différence entre RAG-Sequence et RAG-Token ?

RAG-Sequence utilise exactement le même document extrait pour conditionner chaque token sur toute la séquence, tandis que RAG-Token marginalise sur les meilleurs documents à chaque étape, permettant à différents tokens de s'appuyer sur des documents distincts.

Les représentations de documents sont-elles mises à jour pendant l'affinage ?

Non. L'encodeur de documents et l'index FAISS restent fixes pour éviter le coût de calcul très élevé de la réindexation de 21 millions de documents pendant l'entraînement ; seuls l'encodeur de requêtes et les paramètres du générateur BART sont mis à jour.

RAG peut-il répondre aux questions lorsque la réponse est absente des documents récupérés ?

Oui. La génération n'étant pas contrainte et s'appuyant sur la mémoire paramétrique de BART, RAG répond correctement dans 11,8 % des cas de Natural Questions où aucun des meilleurs passages récupérés ne contient la chaîne cible, alors que les modèles extractifs obtiennent 0 %.

Comment RAG met-il à jour ses connaissances lorsque les faits du monde changent ?

Sa mémoire externe étant modulaire, l'index de documents peut être remplacé « à chaud » par une version plus récente du corpus (par exemple, remplacer un index Wikipedia de 2016 par celui de 2018) sans avoir à réentraîner les paramètres du modèle.

La présentation de cette page a été rédigée par une IA à partir de l'article et peut contenir des erreurs. Consultez l'article pour les détails.

Lire avec traduction et IA