Points de connaissance sur la mise au point de grands modèles que même un novice peut comprendre
Mise au point de l'ensemble du processus à l'aide d'un grand modèle

Il est recommandé de suivre scrupuleusement le processus ci-dessus au cours du processus de mise au point afin d'éviter de sauter des étapes, ce qui pourrait se traduire par un travail inefficace. Par exemple, si l'ensemble de données n'est pas construit de manière adéquate et que l'effet médiocre du modèle affiné s'avère finalement être un problème de qualité de l'ensemble de données, les efforts préliminaires seront gaspillés et la moitié de l'effort sera perdue.
Collecte et compilation des données
En fonction de leur disponibilité, les ensembles de données peuvent être classés en deux catégories : les ensembles de données accessibles au public et les ensembles de données difficiles d'accès.
Comment puis-je avoir accès à des ensembles de données accessibles au public ?
Le moyen le plus simple d'accéder à des ensembles de données accessibles au public est de les rechercher et de les télécharger via les plateformes open source appropriées. Par exemple, des plateformes telles que GitHub, Hugging Face, Kaggle, Magic Hitch, etc. fournissent un grand nombre d'ensembles de données ouvertes. En outre, vous pouvez également essayer d'obtenir des données à partir de certains sites web grâce à la technologie des robots d'indexation, tels que posting, Zhihu, les sites web verticaux de l'industrie, etc. L'utilisation de crawlers pour obtenir des données nécessite généralement une assistance technique et le respect des lois et réglementations en vigueur.
Que faire si les données requises ne sont pas disponibles ou difficiles à obtenir sur le réseau ?
Lorsque les ensembles de données accessibles au public ne répondent pas à la demande, une autre option consiste à créer soi-même l'ensemble de données. Cependant, la création manuelle de centaines ou de milliers de jeux de données est souvent fastidieuse et prend beaucoup de temps. Alors, comment créer des ensembles de données de manière efficace ? Deux idées courantes pour créer rapidement des ensembles de données sont décrites ci-dessous :
1. tirer parti des capacités d'"enrichissement des données" de la plateforme Big Model
Actuellement, de nombreuses plateformes de grands modèles offrent la fonction d'amélioration des données, ce qui peut nous aider efficacement à élargir l'ensemble des données. Par exemple, la plateforme ouverte de spectrométrie de masse, la plateforme ouverte Xunfei, la plateforme ouverte Volcano, etc., peuvent être utilisées pour générer rapidement plus d'échantillons en utilisant les données originales grâce à la fonction d'amélioration de ces plateformes. Tout d'abord, une petite quantité de données (par exemple 50 éléments de données) est préparée manuellement et téléchargée sur ces plateformes. Les plateformes étendront les données grâce à la technologie d'enrichissement des données afin de réaliser rapidement l'expansion de l'ensemble de données.

2. générer des données à l'aide de grands modèles
Un autre moyen efficace de générer des données consiste à utiliser un grand modèle. Tout d'abord, une petite quantité de données (par exemple, quelques dizaines) est préparée et transmise au grand modèle en tant qu'exemples. Ce dernier peut générer des données similaires sur la base de ces exemples. Pour garantir la qualité des données générées, il est recommandé de ne pas générer trop de données à la fois lors du premier cycle de génération, mais plutôt 20 éléments de données et de les examiner attentivement afin d'identifier les erreurs courantes que le grand modèle peut commettre. Ces exemples d'erreurs sont ensuite transmis au grand modèle afin d'améliorer la génération.
示例Prompt: 参照以下示例,输出20个类似的“近期运气”问题。请注意,语言要生活化、不要过于夸张,避免使用诸如“在活动中”、“在比赛中”等定语或状语,语句尽量简洁,避免多余修饰。示例: 我这个季度顺利吗? 我这个季度会发财吗? 最近有哪些事情在等着我? 最近会发生什么事情? 近期我能否被幸运之神垂青?
Nettoyage des données et affinement de la construction des ensembles de données
Les ensembles de données brutes ne sont généralement pas compatibles avec l'apprentissage du modèle. Ils doivent donc être nettoyés et traités pour les rendre compatibles avec le format dans lequel le modèle a été appris. Dans la plupart des cas, les ensembles de données affinés sont généralement construits à l'aide du format AIpaca.
Introduction au format AIpaca
Le format AIpaca a une structure simple et est particulièrement adapté à des tâches telles que la génération de texte, la traduction, le résumé et, en particulier, la mise au point d'instructions orientées vers une tâche unique. Voici une explication détaillée de ses principaux composants :
- instruction : une instruction de tâche, similaire à une entrée utilisateur (obligatoire), qui indique explicitement au modèle ce qu'il doit faire.
- input : L'entrée requise par la tâche. En général, il peut s'agir d'une chaîne vide lorsque la tâche est ouverte ou ne nécessite pas d'entrée explicite.
- résultat : le résultat souhaité que le modèle doit générer compte tenu des instructions et des entrées, c'est-à-dire la réponse de référence (requise).
- système : peut être considéré comme un pré-prompt pour le modèle, utilisé pour définir le comportement du modèle, généralement quelques conseils initiaux (facultatifs) pour le modèle.
- historique : informations sur le dialogue historique qui aident le modèle à établir des relations contextuelles. Dans une tâche à plusieurs tours, le modèle génère des réponses (facultatives) sur la base du dialogue historique.
Par exemple, le format des données AIpaca est le suivant :
[ { "instruction": "用‘梦想’、‘坚持’和‘成功’这三个词组成一个句子。", "input": "", "output": "只有坚持追逐梦想,才能最终取得成功。" }, { "instruction": "对《三国演义》做一个简短的介绍。", "input": "", "output": "《三国演义》是中国古典四大名著之一,描写了从东汉末年到西晋初年近百年的历史,讲述了东汉末年的群雄割据混战及魏、蜀、吴三国之间的政治和军事斗争,塑造了一批英雄人物。" } ]
Méthodologie de construction des ensembles de données
Pour créer un ensemble de données de réglage fin, nous devons généralement convertir les données en un fichier JSON conforme au format AIpaca. Vous trouverez ci-dessous deux méthodes courantes de création d'ensembles de données :
- Construction manuelle des ensembles de données : après avoir organisé les données requises et les avoir construites selon le format AIpaca, les ensembles de données peuvent être construits manuellement en écrivant du code Python. Cette méthode convient aux scénarios simples et aux petits ensembles de données.
- Construction automatisée à l'aide de grands modèles : génération automatisée d'ensembles de données en appelant des interfaces de grands modèles. Cette approche convient aux ensembles de données à grande échelle, en particulier lorsque la tâche présente un schéma relativement fixe d'instructions et de résultats.
Format complet de l'ensemble des données
Le format AIpaca complet est illustré ci-dessous. Il contient les commandes de la tâche, les entrées, les sorties, les mots d'invite du système et les informations sur l'historique du dialogue :
[ { "instruction": "人类指令(必填)", "input": "人类输入(选填)", "output": "模型回答(必填)", "system": "系统提示词(选填)", "history": [ ["第一轮指令(选填)", "第一轮回答(选填)"], ["第二轮指令(选填)", "第二轮回答(选填)"] ] } ]
Le format aide le modèle à apprendre la relation de correspondance entre les instructions et les résultats, comme si on lui donnait des problèmes pratiques où l'instruction + l'entrée = la question et la sortie = la réponse.
Sélection du modèle de base
- Sélection du type de modèle : sélectionnez le modèle de base, tel que GPT, LLaMA ou BERT, en fonction des exigences de la tâche.
- Taille et paramètres : décider de la taille du modèle (par exemple, 7B, 13B ou 65B paramètres), en tenant compte des ressources informatiques, du temps d'apprentissage et de la vitesse d'inférence.
- Modèles open source ou commerciaux : analyser la nécessité de choisir entre des modèles open source (par exemple LLaMA, Falcon) ou des modèles commerciaux à source fermée (par exemple la famille OpenAI GPT).
- À l'aide des données d'essai, effectuez un test de comparaison pour trouver le meilleur ajustement parmi les multiples modèles sélectionnés.
Description des paramètres du modèle

Les cinq questions de l'âme
I. Qu'est-ce que le réglage fin ?
Le réglage fin est le processus qui consiste à poursuivre l'entraînement d'un modèle déjà pré-entraîné avec un nouvel ensemble de données. Ces modèles pré-entraînés ont généralement déjà appris de riches caractéristiques et connaissances sur de grands ensembles de données et possèdent certaines capacités génériques. L'objectif principal du réglage fin est de transférer ces connaissances génériques vers une nouvelle tâche ou un nouveau domaine plus spécifique, afin que le modèle soit mieux à même de résoudre un problème particulier.
II. pourquoi le réglage fin ?
1. économies de ressources informatiques
La formation d'un grand modèle à partir de zéro nécessite beaucoup de ressources informatiques et de temps et est très coûteuse. Le réglage fin utilise des modèles pré-entraînés comme point de départ et nécessite moins d'entraînement sur de nouveaux ensembles de données pour obtenir de bons résultats, ce qui réduit considérablement les coûts et le temps de calcul.
2. améliorer la performance du modèle
Les modèles pré-entraînés, bien qu'ayant des capacités généralisées, peuvent ne pas être performants pour des tâches spécifiques. Le réglage fin améliore la précision et l'efficacité en ajustant les paramètres du modèle à l'aide de données spécifiques au domaine afin de les rendre plus aptes à gérer la tâche cible.
3. s'adapter à de nouvelles régions
Les modèles génériques pré-entraînés peuvent ne pas bien comprendre les caractéristiques des données dans un domaine spécifique, et un réglage fin peut aider les modèles à s'adapter à de nouveaux domaines et les rendre plus aptes à traiter les données dans le cadre d'une tâche spécifique.
III - Qu'est-ce que le réglage fin vous apporte ?
Le réglage fin permet d'obtenir un modèle optimisé et réglé. Ce modèle est basé sur la structure du modèle pré-entraîné original, mais ses paramètres ont été mis à jour pour mieux s'adapter aux nouvelles tâches ou exigences du domaine.
Exemples :
Supposons qu'il existe un modèle de classification d'images pré-entraîné qui reconnaît les objets courants. Si des types de fleurs spécifiques doivent être reconnus, le modèle peut être affiné à l'aide d'un nouvel ensemble de données contenant diverses images et étiquettes de fleurs. Après l'ajustement, les paramètres du modèle sont mis à jour pour reconnaître plus précisément ces types de fleurs.
IV. comment mettre en production le modèle affiné ?
1. déploiement dans l'environnement de production
L'intégration de modèles dans des sites web, des applications mobiles ou d'autres systèmes peut être déployée à l'aide de serveurs de modèles ou de services en nuage tels que les API fournies par TensorFlow Serving, TorchServe ou Hugging Face.
2. tâches de raisonnement
Utiliser le modèle affiné pour l'inférence, par exemple pour faire des prédictions à partir de données d'entrée ou pour analyser les résultats.
3. mise à jour et optimisation continues
En fonction des nouvelles exigences ou du retour d'information, le modèle est encore affiné ou des données supplémentaires sont ajoutées pour l'entraînement afin de maintenir les performances optimales du modèle.
V. Comment choisir une méthode de réglage fin ?
- LoRA : Low-rank adaptation for reducing the size of fine-tuned parameters for resource-constrained environments.
- QLoRA : optimisation quantitative basée sur LoRA pour une gestion plus efficace de la mise au point de grands modèles.
- P-tuning : une technique d'apprentissage par indices, adaptée aux tâches à faible échantillonnage ou aux petites quantités de données étiquetées.
© déclaration de droits d'auteur
Article copyright Cercle de partage de l'IA Tous, prière de ne pas reproduire sans autorisation.
Articles connexes
Pas de commentaires...