Améliorer les modèles de langage avec des retours variés
Cette étude met en lumière une nouvelle méthode pour ajuster efficacement les modèles de langue.
― 9 min lire
Table des matières
- Comment ça marche le fine-tuning
- Améliorations précédentes dans le fine-tuning
- Le cadre
- Jeux de données de fine-tuning
- Sélection de qualité et de diversité
- Processus d'entraînement
- Configuration expérimentale et résultats
- Comparaison des approches
- Résultats qualitatifs
- Conclusion
- Création de jeux de données hétérogènes
- Conversion des types de supervision
- Source originale
Les grands Modèles de langage (LLMs) sont utilisés pour plein de trucs comme résumer du texte, aider les gens à trouver des infos en ligne, et faire tourner des chatbots. Ces modèles apprennent de différentes manières. D'abord, ils ingèrent beaucoup d'infos sans vraiment de guidance. Ensuite, ils peuvent être améliorés en s'entraînant avec des exemples donnés par des gens (on appelle ça le fine-tuning supervisé) et en apprenant grâce aux retours sur ce que les gens aiment (c'est ce qu'on appelle l'apprentissage par renforcement avec des retours humains).
Collecter des bons exemples pour l'entraînement, c'est pas toujours évident. Parfois, les exemples ne sont pas assez nombreux, ou ils ne sont pas de bonne qualité. Les manières dont les gens donnent des retours peuvent aussi varier. Par exemple, certains retours peuvent juste dire quelle réponse est meilleure (oui ou non), tandis que d'autres peuvent donner des notes ou des commentaires détaillés.
Pour relever ces défis, on propose une nouvelle manière de peaufiner les LLMs qui utilise différents types de retours. Notre méthode a deux parties principales. D'abord, on fusionne différents types de retours en un seul format utilisable pour l'entraînement. Ensuite, on choisit un petit groupe d'exemples de qualité à partir de ce jeu de données combiné. Ce groupe plus petit peut vraiment aider le modèle à mieux performer qu'en utilisant tous les exemples.
On a fait plein de tests pour voir si notre méthode fonctionne bien. On a découvert qu'elle pouvait améliorer la façon dont les modèles suivent les instructions et aider à réduire les biais dans leurs réponses.
Comment ça marche le fine-tuning
Le fine-tuning des LLMs implique de les ajuster pour des tâches spécifiques. Par exemple, InstructGPT est un modèle ajusté pour suivre des instructions. Le processus commence par rassembler des exemples de ce qu'on veut que le modèle fasse. Ça implique un apprentissage supervisé, où le modèle apprend des exemples fournis. Certains modèles s’arrêtent là, tandis que d'autres, comme InstructGPT, continuent de s'entraîner en utilisant des retours sur ce que les gens préfèrent.
Quand on fait du fine-tuning, le jeu de données se compose souvent d'un seul type de retour. Il y a différents Jeux de données disponibles pour diverses tâches, comme les assistants de chat, l'identification de pronoms, et s'assurer de l'utilité et de l'honnêteté. La manière dont les retours sont donnés dans ces jeux de données peut varier. Par exemple, certains jeux de données peuvent utiliser des retours simples oui/non, tandis que d'autres peuvent donner des scores numériques. Même si le fine-tuning est utile, il repose souvent sur un seul type de retour, ce qui peut limiter l'apprentissage du modèle.
Améliorations précédentes dans le fine-tuning
Récemment, il y a eu des efforts pour améliorer la qualité des jeux de données de fine-tuning. Certains travaux ont utilisé des LLMs pour créer des regroupements significatifs d'exemples. D'autres ont examiné comment des changements dans les prompts peuvent montrer à quel point le modèle est incertain sur ses réponses. Certaines études ont trouvé des moyens d'améliorer la performance même en utilisant juste une petite partie des données originales.
On introduit un cadre qui permet d'utiliser plusieurs types de jeux de données de fine-tuning à la fois. Ça nous permet d'entraîner le modèle pour différentes tâches ensemble, comme améliorer le raisonnement logique tout en réduisant le biais. En élargissant les types de données qu'on utilise, on obtient une meilleure idée de ce que les gens préfèrent, ce qui aide à créer un processus de fine-tuning plus efficace.
Le cadre
La première étape de notre cadre est de fusionner différents jeux de données en un seul qui contient différents types de retours. Ensuite, on note chaque exemple en fonction de sa qualité et de la variété des prompts. On filtre ensuite certains exemples qui ne répondent pas à certaines normes pour créer un jeu de données affiné. Ce jeu de données combiné est ensuite utilisé pour les méthodes de fine-tuning standard.
Le principal avantage de notre cadre, c'est qu'il permet d'utiliser des retours divers pour l'entraînement. Comme ça, même si certaines données sont très similaires, on peut assurer qualité et variété en éliminant les exemples redondants.
Jeux de données de fine-tuning
On utilise deux types de jeux de données pour le fine-tuning. Le premier type comprend des retours clairs où il y a deux réponses pour chaque prompt, ce qui rend facile de savoir laquelle est préférée. Le deuxième type implique des réponses de l'utilisateur qui viennent avec des scores. Ce type de jeu de données nous permet de regarder différentes réponses au même prompt.
Pour créer un jeu de données unifié, on prend les prompts et on rassemble toutes les réponses associées. Ça nécessite au moins deux réponses pour chaque prompt. Après avoir filtré pour la qualité et la variété, on génère un jeu de données à partir de cette collection.
Sélection de qualité et de diversité
On détermine la qualité des exemples en fonction de leurs scores numériques. Pour les jeux de données avec plein de scores, choisir le bon dépend de ce qu'on veut accomplir avec notre fine-tuning. Par exemple, si on veut réduire les réponses nuisibles, on peut se concentrer sur les scores de toxicité.
Pour assurer la diversité, on crée des embeddings pour chaque prompt et on regroupe ceux qui sont similaires. Ça nous aide à repérer les redondances dans les données, nous permettant de sélectionner seulement les meilleurs exemples de chaque groupe.
Processus d'entraînement
Pour l'entraînement, on commence avec le modèle pré-entraîné. On applique d'abord un fine-tuning supervisé en utilisant notre jeu de données unifié, suivi de l’entraînement d'un modèle de récompense. Ensuite, on fait de l'apprentissage par renforcement avec des retours humains. On vise à utiliser différentes parties du jeu de données tout en mesurant comment nos méthodes améliorent la performance.
Configuration expérimentale et résultats
On a testé notre méthode avec trois jeux de données : WinoGrande, OpenAssistant (OASST), et WinoGender. WinoGrande est plus difficile et aide à comprendre les co-références dans les phrases. OASST est un jeu de données de conversation qui fournit des retours numériques sur les réponses. WinoGender teste si le modèle montre un biais basé sur le genre.
On a fait du fine-tuning des modèles en utilisant soit WinoGrande seul, soit une combinaison de WinoGrande et OASST. On a aussi utilisé différents sous-ensembles des données pour voir comment ça affecte les résultats.
En mesurant différents types de retours, on a trouvé que notre cadre peut mener à de meilleures performances pour réduire le biais tout en maintenant l'utilité globale.
Comparaison des approches
On a regardé à quel point notre approche fonctionne par rapport aux méthodes de base, y compris les modèles pré-entraînés et ceux peaufins avec juste WinoGrande. On a trouvé que notre méthode, qui utilise des retours divers, a généralement surpassé les autres. Les résultats ont montré qu'utiliser un mélange de données peut mener à de meilleurs résultats pour réduire le biais et améliorer l'exactitude.
Résultats qualitatifs
En plus des résultats numériques, on a aussi vérifié les modèles en leur posant divers prompts. On a découvert que les modèles utilisant notre cadre fournissaient des réponses plus pertinentes que les modèles de base. Ça indique que notre méthode peut aider les modèles à mieux suivre les instructions et à répondre plus correctement.
Conclusion
Pour résumer, notre approche de combiner différents types de retours pour le fine-tuning peut vraiment booster la performance au-delà de ce que les jeux de données uniques peuvent offrir. En ajustant la quantité de données utilisées, on peut obtenir des résultats similaires ou meilleurs qu'en utilisant toutes les données disponibles. Notamment, notre cadre supporte le fine-tuning pour plusieurs tâches en même temps, améliorant à la fois la qualité des réponses et réduisant les biais indésirables. Ça montre que le fine-tuning efficace des LLMs est possible avec des méthodes de supervision diversifiées.
Création de jeux de données hétérogènes
On a aussi inclus un exemple de comment créer un jeu de données diversifié. On a rassemblé différents types d'infos basées sur notre jeu de données principal, WinoGrande, et secondaire, OASST. Ça a impliqué de prendre des prompts et de sélectionner des réponses en fonction de leur qualité, ce qui nous a permis d'enrichir notre jeu de données pour l'entraînement.
Conversion des types de supervision
Enfin, on a expliqué que les retours peuvent venir sous trois formes : binaire, ordinal, et numérique. En simplifiant ces types, on peut créer un jeu de données plus gérable pour entraîner les modèles.
En conclusion, ce travail montre une voie claire pour le fine-tuning des grands modèles de langage en utilisant une large gamme de types de retours, ce qui peut mener à des améliorations non seulement en précision mais aussi en rendant les modèles plus responsables et moins biaisés.
Titre: A Framework for Fine-Tuning LLMs using Heterogeneous Feedback
Résumé: Large language models (LLMs) have been applied to a wide range of tasks, including text summarization, web navigation, and chatbots. They have benefitted from supervised fine-tuning (SFT) and reinforcement learning from human feedback (RLHF) following an unsupervised pretraining. These datasets can be difficult to collect, limited in scope, and vary in sample quality. Additionally, datasets can vary extensively in supervision format, from numerical to binary as well as multi-dimensional with many different values. We present a framework for fine-tuning LLMs using heterogeneous feedback, which has two main components. First, we combine the heterogeneous feedback data into a single supervision format, compatible with methods like SFT and RLHF. Next, given this unified feedback dataset, we extract a high-quality and diverse subset to obtain performance increases potentially exceeding the full dataset. We conduct extensive experiments to understand the effectiveness of these techniques for incorporating heterogeneous feedback, and demonstrate improvements from using a high-quality and diverse subset of the data. We find that our framework is able to improve models in multiple areas simultaneously, such as in instruction following and bias reduction.
Auteurs: Ryan Aponte, Ryan A. Rossi, Shunan Guo, Franck Dernoncourt, Tong Yu, Xiang Chen, Subrata Mitra, Nedim Lipka
Dernière mise à jour: 2024-08-05 00:00:00
Langue: English
Source URL: https://arxiv.org/abs/2408.02861
Source PDF: https://arxiv.org/pdf/2408.02861
Licence: https://creativecommons.org/licenses/by/4.0/
Changements: Ce résumé a été créé avec l'aide de l'IA et peut contenir des inexactitudes. Pour obtenir des informations précises, veuillez vous référer aux documents sources originaux dont les liens figurent ici.
Merci à arxiv pour l'utilisation de son interopérabilité en libre accès.