perdu au milieu

Les grands modèles de langage sont utiles et, en termes de conception d'invites, il est souvent recommandé de fournir des modèles de langage avec des descriptions de tâches détaillées et des informations de base.

Certains modèles de langage récents ont la capacité de saisir des contextes plus longs, mais comment peuvent-ils tirer parti de contextes plus longs ? Ceci est relativement peu connu.

Récemment, des chercheurs de l'Université de Stanford, de l'UC Berkeley et de Samaya AI ont publié un document de recherche empirique explorant cette question.

La conclusion est surprenante : si le contexte est trop long, le modèle de langage accordera plus d'attention aux parties avant et arrière, mais la partie médiane est presque ignorée, ce qui rend difficile pour le modèle de trouver des informations pertinentes placées au milieu de la contexte d'entrée.

Lien papier : https://arxiv.org/pdf/2307.03172.pdf

Ils ont mené des expériences contrôlées sur une variété de modèles de langage open-source (MPT-30B-Instruct, LongChat-13B (16K)) et fermés (OpenAI's GPT-3.5-Turbo et Anthropic's Claude) - des modèles sont nécessaires dans les expériences et utiliser les informations du contexte d'entrée.

Les chercheurs ont d'abord expérimenté la réponse aux questions sur plusieurs documents, une tâche qui nécessite que les modèles raisonnent sur plusieurs documents pour trouver des informations pertinentes et les utiliser pour répondre à une question donnée. Cette tâche modélise la tâche générative augmentée par la récupération qui est à la base de nombreuses applications de recherche générative et de réponse aux questions disponibles dans le commerce telles que Bing Chat. Dans l'expérience, ils ont modifié la longueur du contexte d'entrée et l'emplacement des informations pertinentes dans le contexte d'entrée, puis ont comparé les performances des résultats de sortie.

Plus en détail, les chercheurs augmentent la longueur du contexte d'entrée en ajoutant plus de documents au contexte d'entrée (similaire à la récupération de plus de documents dans les tâches de génération augmentée par récupération) ; et en modifiant l'ordre des documents dans le contexte d'entrée, l'information pertinente est placé au début, au milieu ou à la fin d'un contexte, modifiant la position des informations associées dans le contexte.

Dans l'expérience, les chercheurs ont observé qu'à mesure que l'emplacement des informations pertinentes change, les performances du modèle présentent une tendance évidente en forme de U, comme le montre la figure 1. Autrement dit, les performances du modèle de langage sont les plus élevées lorsque les informations pertinentes apparaissent au début ou à la fin du contexte d'entrée ; tandis que les performances du modèle chutent considérablement lorsque les informations que le modèle doit obtenir et utiliser sont situées au milieu du contexte d'entrée. . Par exemple, lorsque des informations pertinentes sont placées au milieu de son contexte d'entrée, GPT3.5-Turbo obtient de moins bons résultats sur la tâche problématique multi-documents que lorsqu'il n'y a pas de documents (c'est-à-dire le paramètre de livre fermé ; 56,1 %). De plus, les chercheurs ont constaté que les performances des modèles se dégradent régulièrement lorsque le contexte est plus long ; et les modèles équipés d'extensions de contexte ne sont pas nécessairement meilleurs pour utiliser leur propre contexte.

Figure 1

Maintenant qu'il est connu que les modèles de langage ont des difficultés à récupérer et à utiliser les informations pertinentes dans les tâches de réponse aux questions multidocuments, nous ne pouvons pas nous empêcher de demander : dans quelle mesure les modèles de langage peuvent-ils récupérer des informations à partir du contexte d'entrée ?

Les chercheurs ont étudié ce problème avec une tâche de récupération de clé-valeur synthétique. Cette tâche est conçue comme un banc d'essai minimal pour la capacité de base à récupérer des jetons correspondants à partir d'un contexte d'entrée.

Dans cette tâche, le chercheur fournit au modèle une collection de paires clé-valeur au format JSON, puis demande au modèle de renvoyer la valeur associée à une clé particulière. Semblable à la tâche de réponse aux questions sur plusieurs documents, la tâche de récupération de la valeur clé permet également des modifications contrôlées de la longueur du contexte d'entrée (en ajoutant plus de paires clé-valeur) et de l'emplacement des informations associées. Les chercheurs ont observé une courbe de performances en forme de U similaire dans les expériences, c'est-à-dire que de nombreux modèles ont du mal à détecter les jetons correspondants lorsqu'ils apparaissent au milieu du contexte d'entrée.

Afin de comprendre pourquoi il est difficile pour les modèles de langage d'acquérir et d'utiliser des informations au milieu du contexte d'entrée, les chercheurs ont analysé la relation entre l'architecture du modèle (décodeur uniquement et encodeur-décodeur), la contextualisation sensible aux requêtes et la précision des instructions. -tuning effet.

Ils ont constaté que le modèle d'encodeur-décodeur est relativement robuste aux changements de position des informations pertinentes dans le contexte d'entrée lorsque la longueur de la séquence au moment de l'évaluation se situe dans la plage de longueur de la séquence utilisée au moment de l'apprentissage ; cependant, si la longueur de la séquence au moment de l'évaluation est plus long que la formation, alors les performances du modèle montreront des caractéristiques en forme de U.

De plus, la contextualisation sensible aux requêtes (placer des requêtes avant et après les documents ou les paires clé-valeur) permet au modèle d'effectuer parfaitement cette tâche synthétique clé-valeur, mais ne modifie en grande partie pas les tendances observées dans les tâches de réponse aux questions multidocuments. En outre, même les modèles de langage de base (c'est-à-dire sans réglage fin des instructions) présentent une courbe de performances en forme de U en fonction de la position des informations pertinentes dans le contexte d'entrée.

Enfin, pour mieux comprendre le compromis entre l'ajout de plus d'informations au contexte d'entrée et l'augmentation de la quantité de contenu utilisée pour l'inférence du modèle, les chercheurs ont mené une étude de cas. L'étude est basée sur la performance d'un modèle retriever-reader sur une tâche de réponse à une question en domaine ouvert. Contrairement aux expériences contrôlées de questions-réponses multi-documents (où le contexte contient toujours exactement un document pour la question-réponse), dans les tâches de réponse aux questions du domaine ouvert, il peut y avoir plusieurs ou aucun document contenant la réponse.

Les chercheurs ont constaté que lors de la recherche sur Wikipédia pour répondre aux requêtes dans NaturalQuestions-Open, les performances du modèle saturent bien avant que le rappel du récupérateur ne plafonne, ce qui suggère que le modèle ne peut pas utiliser efficacement les documents récupérés supplémentaires. L'utilisation de plus de 20 documents n'améliore que légèrement les performances (∼1,5 % pour GPT-3.5-Turbo et ∼1 % pour claude-1.3).

Dans l'ensemble, cette recherche peut aider les gens à mieux comprendre comment les modèles de langage utilisent le contexte d'entrée et à introduire un nouveau protocole d'évaluation pour les futurs modèles de contexte long. Afin de faciliter les futures recherches connexes, les chercheurs ont publié le code et les données d'évaluation, veuillez visiter : https://github.com/nelson-liu/lost-in-the-middle   

Pourquoi est-il difficile pour un modèle de langage d'utiliser pleinement son contexte d'entrée ?

Les résultats expérimentaux sur la réponse aux questions multi-documents et la récupération des valeurs clés montrent que lorsque le modèle de langage doit obtenir des informations pertinentes au milieu d'un long contexte d'entrée, les performances du modèle chutent considérablement. Pour comprendre pourquoi, les chercheurs ont analysé le rôle de l'architecture du modèle (décodeur uniquement et encodeur-décodeur), la contextualisation sensible aux requêtes et le réglage fin des instructions.

Impact de l'architecture du modèle

Pour mieux comprendre l'impact potentiel de l'architecture du modèle, les chercheurs ont comparé des modèles de décodeur uniquement avec des modèles de langage encodeur-décodeur.

Les modèles spécifiques utilisés dans les expériences sont Flan-T5-XXL et Flan-UL2. La formation de Flan-T5-XXL utilise des séquences (encodeur et décodeur) d'une longueur de séquence de 512 jetons. Flan-UL2 a commencé avec une formation de séquence de longueur de 512 jetons (encodeur et décodeur), mais a ensuite pré-formé 100 000 étapes supplémentaires (encodeur et décodeur) sur des séquences de longueur de 1024 jetons, puis des instructions affinées —— Son encodeur est affiné sur la longueur de séquence de 2048 jetons, et la longueur de séquence du décodeur est de 512 jetons. Cependant, comme ces modèles utilisent des plongements positionnels relatifs, leurs capacités d'inférence peuvent (en principe) dépasser ces longueurs de contexte maximales ; Shaham et al. (2023) ont constaté que les deux modèles obtenaient de bonnes performances.

La figure 11 montre les performances du modèle décodeur uniquement et du modèle codeur-décodeur côte à côte. Lorsque Flan-UL2 est évalué avec une longueur de séquence dans sa fenêtre de contexte de formation de 2048 jetons, il est robuste aux changements de position des informations pertinentes dans le contexte d'entrée. Et lorsque la longueur de la séquence au moment de l'évaluation dépasse 2048 jetons, les performances de Flan-UL2 commencent à se dégrader si les informations pertinentes se trouvent au milieu du contexte d'entrée. Flan-T5-XXL présente une tendance similaire : des contextes d'entrée plus longs entraînent une plus grande dégradation des performances si les informations pertinentes se trouvent au milieu du contexte d'entrée.

Figure 11

Les chercheurs pensent que les modèles d'encodeur-décodeur pourraient mieux utiliser leurs fenêtres contextuelles car leurs encodeurs bidirectionnels leur permettent de traiter chaque document dans le contexte de futurs documents, ce qui peut améliorer l'importance relative entre les documents estimés.

Impact de la contextualisation sensible aux requêtes

Dans les expériences, les chercheurs ont abordé le traitement des requêtes (c'est-à-dire les questions auxquelles répondre ou les clés à récupérer) après les données (c'est-à-dire les documents ou les paires clé-valeur). Ainsi, lors de la contextualisation de documents ou de paires clé-valeur, le modèle décodeur seul ne peut pas prendre en compte le jeton de requête, car la requête n'apparaîtra qu'à la fin de l'invite et le modèle décodeur seul ne peut prêter attention qu'au jeton précédent à chaque pas de temps.

D'autre part, le modèle d'encodeur-décodeur, qui utilise un encodeur bidirectionnel pour contextualiser le contexte d'entrée, semble être plus robuste aux changements de position des informations pertinentes - une intuition que les chercheurs spéculent pourrait également être utilisée pour améliorer le décodage uniquement. performances du modèle de serveur en plaçant des requêtes avant et après les données, permettant une contextualisation sensible aux requêtes des documents ou des paires clé-valeur.

Les chercheurs ont découvert que la contextualisation sensible aux requêtes peut considérablement améliorer les performances du modèle sur les tâches de récupération de clé-valeur. Par exemple, GPT-3.5-Turbo (16K) (utilisant la contextualisation sensible aux requêtes) a fonctionné sans problème lorsqu'il a été évalué avec 300 paires clé-valeur. En revanche, sans contextualisation sensible aux requêtes, ses performances sont les plus faibles à 45,6 % avec les mêmes paramètres.   

Figure 12

En revanche, sur la tâche de réponse aux questions multi-documents, la contextualisation sensible aux requêtes a peu d'impact. En particulier, cela améliore les performances lorsque les informations pertinentes se trouvent au tout début du contexte d'entrée, mais dégrade légèrement les performances dans d'autres paramètres.

L'impact de la mise au point des instructions

Le réglage fin des instructions signifie qu'après la pré-formation initiale, le modèle de langage utilisera également un ensemble de données d'instructions et de réponses pour un réglage fin supervisé. Dans de telles données de réglage d'instructions supervisées, la spécification de tâche et/ou les instructions sont généralement placées au début du contexte d'entrée, ce qui peut amener le modèle de langage à réglage d'instruction à donner plus de poids au début du contexte d'entrée.

Pour mieux comprendre l'impact potentiel du réglage fin des instructions, les chercheurs ont comparé les performances de MPT-30B-Instruct avec son modèle de base MPT-30B (sans réglage fin des instructions) sur la tâche de réponse aux questions multidocuments.

La figure 13 montre les performances de MPT-30B-Instruct et MPT-30B sur la tâche de réponse à une question multidocument en fonction de la position des informations pertinentes dans le contexte d'entrée. Les chercheurs ont été surpris de constater que le MPT-30B-Instruct et le MPT-30B présentaient une tendance en forme de U. Bien que MPT-30B-Instruct ait surpassé MPT-30B en termes absolus, leurs tendances de performance globales étaient très similaires.

Figure 13

En fait, des recherches antérieures ont montré que le modèle de langage est plus biaisé vers le jeton récent (c'est-à-dire la fin du contexte d'entrée). Cette préférence pour les jetons récents se manifeste souvent dans le contexte de la prédiction du mot suivant d'un texte continu, où les modèles de langage bénéficient peu des informations à longue portée. En revanche, les résultats expérimentaux ici montrent que les modèles de langage sont capables d'utiliser des informations à plus longue portée (c'est-à-dire le début du contexte d'entrée) lorsque l'invite est constituée de données au format d'instruction. Les chercheurs ont émis l'hypothèse que le modèle linguistique a appris ces contextes à partir de données dans un format similaire à partir de texte Web qu'il avait vu lors de la pré-formation. whaosoft  aiot  http://143ai.com

Plus de contexte est-il toujours préférable ? Une étude de cas basée sur la réponse aux questions du domaine ouvert

En pratique, il y a souvent un compromis dans la longueur du contexte d'entrée - si plus d'informations sont fournies à un modèle de langage qui a été affiné par des instructions, cela peut améliorer ses performances sur les tâches en aval, mais cela augmentera également la quantité de contenu que le modèle doit traiter. Même si un modèle de langage peut gérer 16 000 jetons, est-ce vraiment utile si autant de jetons lui sont vraiment fournis ? La réponse à cette question est : jusqu'à la tâche en aval. Parce que cela dépend de la valeur marginale du contexte ajouté et de la capacité du modèle à utiliser efficacement les contextes d'entrée longs. Pour mieux comprendre ce compromis, les chercheurs ont mené une étude de cas sur la réponse aux questions du domaine ouvert sur NaturalQuestions-Open.

Le modèle qu'ils ont utilisé utilise une configuration standard de lecteur-récupérateur. Un système de récupération (Contriever, affiné basé sur MS-MARCO) prend une requête d'entrée de NaturalQuestions-Open et renvoie k documents Wikipédia. Pour conditionner le modèle de langage affiné par les instructions sur ces documents récupérés, nous les incluons dans l'invite. Ils ont évalué le rappel du récupérateur et la précision du lecteur (si une réponse annotée figurait dans la sortie prédite) en fonction du nombre de documents k récupérés. Les chercheurs ont utilisé un sous-ensemble de NaturalQuestions-Open, où la réponse longue est un paragraphe (plutôt qu'un tableau ou une liste).

La figure 14 présente les résultats expérimentaux pour la réponse aux questions du domaine ouvert. On peut voir que les performances du modèle de lecteur saturent bien avant que les performances de récupération ne plafonnent, indiquant que le contexte supplémentaire n'est pas utilisé efficacement par le lecteur. L'utilisation de plus de 20 documents récupérés n'améliore que marginalement les performances du lecteur (∼1,5 % pour GPT-3.5-Turbo, ∼1 % pour Claude), mais augmente considérablement la longueur du contexte d'entrée (augmentant ainsi considérablement la latence et le coût).

Figure 14

Ces résultats suggèrent que, si les documents récupérés peuvent être efficacement triés (rapprochant les informations pertinentes du début du contexte d'entrée) ou si la liste triée peut être tronquée (renvoyant moins de documents si nécessaire), alors il peut être possible d'améliorer la Le lecteur du modèle de langage utilise la possibilité de récupérer le contexte.

Je suppose que tu aimes

Origine blog.csdn.net/qq_29788741/article/details/131898869
conseillé
Classement