Les paramètres de réglage configurent les expériences de réglage que vous utilisez pour régler le modèle de fondation.
En savoir plus sur les étapes d'une expérience de réglage et sur la façon dont les paramètres que vous pouvez configurer affectent le processus.
Processus de mise au point rapide
Au cours de l'expérimentation, le modèle d'ajustement ajuste à plusieurs reprises la structure de l'invite afin que ses prévisions puissent s'améliorer dans le temps.
Le diagramme suivant illustre les étapes d'une expérience de réglage rapide. Les parties du flux d'expériences que vous pouvez configurer sont mises en évidence par une icône utilisateur . Ces points de décision correspondent aux paramètres d'optimisation d'expérimentation que vous contrôlez.
Le diagramme illustre les étapes suivantes de l'expérimentation:
Démarre à partir de la méthode d'initialisation que vous choisissez d'utiliser pour initialiser l'invite.
Si le paramètre méthode d'initialisation est défini sur
text
, vous devez ajouter le texte d'initialisation.S'il est spécifié, segmente le texte d'initialisation et le convertit en vecteur d'invite.
Lit les données d'entraînement, les segmente et les convertit en lots.
La taille des lots est déterminée par le paramètre taille des lots .
Envoie une entrée à partir des exemples du lot au modèle de base pour que le modèle traite et génère une sortie.
Compare la sortie du modèle à la sortie des données d'apprentissage correspondant à l'entrée de données d'apprentissage qui a été soumise. Calcule ensuite le gradient de perte, qui correspond à la différence entre la sortie prédite et la sortie réelle à partir des données d'apprentissage.
A un moment donné, l'expérimentation ajuste le vecteur d'invite qui est ajouté à l'entrée en fonction des performances du modèle. Le moment où cet ajustement se produit dépend de la manière dont le paramètre Etapes d'accumulation est configuré.
Des ajustements sont appliqués au vecteur d'invite qui a été initialisé à l'étape 2. Le degré de modification du vecteur est contrôlé par le paramètre Taux d'apprentissage . Le vecteur d'invite édité est ajouté en tant que préfixe à l'entrée de l'exemple suivant dans les données d'apprentissage et est soumis au modèle en tant qu'entrée.
Le processus se répète jusqu'à ce que tous les exemples de tous les lots soient traités.
L'ensemble des lots est traité à nouveau autant de fois que spécifié dans le paramètre Nombre d'époques .
Paramètres par défaut pour l'accord rapide
Les meilleures valeurs d'hyperparamètres à utiliser pour une expérience de réglage rapide varient en fonction de vos données et de votre cas d'utilisation.
Le tableau suivant présente les valeurs des paramètres à utiliser comme point de départ pour la mise au point rapide d'un modèle de fondation tiers.
Nom du paramètre : | Valeur par défaut pour flan-t5-xl-3b | En savoir plus |
---|---|---|
Méthode d'initialisation | Aléatoire | Initialisation de l'optimisation des invites |
Texte d'initialisation | Aucun | Initialisation de l'optimisation des invites |
Taille de lot | 16 | Segmentation des données d'apprentissage |
Étapes de cumul | 16 | Segmentation des données d'apprentissage |
Taux d'apprentissage | 0.3 | Gestion du taux d'apprentissage |
Nombre d'époques (nombre de cycles de formation) | 20 | Choix du nombre d'exécutions d'entraînement à effectuer |
Les paramètres par défaut utilisés pour le réglage rapide du modèle de fondation granite-13b-instruct-v2 sont ajustés en fonction du type de tâche que vous souhaitez que le modèle réglé accomplisse.
Le tableau suivant présente les valeurs des paramètres à utiliser comme point de départ pour chaque type de tâche pris en charge, afin de procéder à un réglage rapide du modèle de fondation granite-13b-instruct-v2.
Nom du paramètre : | Valeur par défaut pour la classification | Valeur par défaut pour la génération | Valeur par défaut pour le récapitulatif | En savoir plus |
---|---|---|---|---|
Taille de lot | 8 | 16 | 8 | Segmentation des données d'apprentissage |
Étapes de cumul | 32 | 16 | 1 | Segmentation des données d'apprentissage |
Taux d'apprentissage | 0.0006 | 0.0002 | 0.0002 | Gestion du taux d'apprentissage |
Nombre d'époques (nombre de cycles de formation) | 20 | 20 | 40 | Choix du nombre d'exécutions d'entraînement à effectuer |
Description des paramètres
Le tableau suivant décrit les paramètres de réglage que vous pouvez personnaliser.
Nom du paramètre : | Descriptif | Options de valeur | En savoir plus |
---|---|---|---|
Méthode d'initialisation (réglage rapide) | Spécifie comment initialiser le vecteur d'invite. | Aléatoire, Texte | Initialisation de l'optimisation des invites |
Texte d'initialisation (accord de l'invite) | Texte à utiliser en tant qu'invite pour la première exécution de l'expérience. | – | Initialisation de l'optimisation des invites |
Taille de lot | Nombre d'exemples étiquetés à traiter en une seule fois. | 1-16 | Segmentation des données d'apprentissage |
Étapes de cumul | Nombre de lots à traiter avant de procéder à des ajustements. | 1-128 | Segmentation des données d'apprentissage |
Taux d'apprentissage | Détermine l'étendue du changement à apporter lors de l'ajustement du modèle. | 0.00001–0.5 | Gestion du taux d'apprentissage |
Nombre d'époques (nombre de cycles de formation) | Nombre de fois où les données d'apprentissage sont parcourues. | 1-50 | Choix du nombre d'exécutions d'entraînement à effectuer |
Segmentation des données d'entraînement
Lorsqu'une expérimentation est exécutée, elle fractionne d'abord les données d'entraînement en plus petits lots, puis s'entraîne sur un lot à la fois. Chaque lot doit tenir dans la mémoire GPU pour être traité. Pour réduire la quantité de mémoire GPU nécessaire, vous pouvez configurer l'expérimentation d'optimisation pour différer les ajustements jusqu'à ce que plusieurs lots soient traités. La mise au point s'exécute sur un lot et ses mesures de performance sont calculées, mais aucun ajustement n'est effectué immédiatement. Au lieu de cela, les informations de performance sont collectées sur un certain nombre de lots avant que les métriques de performance cumulées ne soient évaluées.
Utilisez les paramètres suivants pour contrôler la façon dont les données d'entraînement sont segmentées:
Taille de lot Nombre d'exemples libellés (également appelés échantillons) à traiter simultanément.
Par exemple, pour un jeu de données avec 1000 exemples et une taille de lot de 10, le jeu de données est divisé en 100 lots de 10 exemples chacun.
Si le jeu de données d'apprentissage est petit, indiquez une taille de lot plus petite pour vous assurer que chaque lot contient suffisamment d'exemples.
Etapes d'accumulation : Nombre de lots à traiter avant de procéder à des ajustements.
Par exemple, si l'ensemble de données est divisé en 100 lots et que vous fixez la valeur des étapes d'accumulation à 10, les ajustements sont effectués 10 fois au lieu de 100.
Choix du nombre d'exécutions d'entraînement à effectuer
Le paramètre Nombre d'époques indique le nombre de cycles à effectuer dans les données d'apprentissage.
Par exemple, avec une taille de lot de 10 et un ensemble de données de 1 000 exemples, une époque doit traiter 100 lots et effectuer des ajustements 100 fois. Si vous définissez le nombre d'époques sur 20, le modèle est transmis à l'ensemble de données 20 fois, ce qui signifie qu'il traite un total de 2 000 lots au cours du processus d'ajustement.
Plus le nombre d'époques est élevé et plus vos données d'apprentissage sont grandes, plus l'optimisation d'un modèle prend de temps.
Gestion du taux d'apprentissage
Le paramètre taux d'apprentissage détermine l'ampleur du changement à apporter lors de l'ajustement du modèle. Plus le chiffre est élevé, plus le changement est important.
Initialisation de l'invite
Lorsque vous créez une expérience de réglage de l'invite, vous pouvez choisir de spécifier votre propre texte comme vecteur d'invite initial ou de laisser l'expérience le générer pour vous. Ces nouveaux jetons démarrent le processus d'apprentissage soit dans des positions aléatoires, soit en fonction de l'incorporation d'un vocabulaire ou d'une instruction que vous spécifiez dans le texte. Des études montrent qu'à mesure que la taille du modèle sous-jacent dépasse les 10 milliards de paramètres, la méthode d'initialisation utilisée devient moins importante.
Le choix que vous faites lorsque vous créez l'expérimentation d'optimisation personnalise la façon dont l'invite est initialisée.
Méthode d'initialisation: choisissez une méthode parmi les options suivantes:
- Texte: La méthode d'optimisation d'invite est utilisée lorsque vous spécifiez vous-même le texte d'initialisation de l'invite.
- Aléatoire: la méthode d'optimisation d'invite permet à l'expérimentation d'ajouter des valeurs choisies de manière aléatoire à inclure dans l'invite.
Texte d'initialisation: texte à ajouter. Indiquez une description de tâche ou des instructions similaires à celles que vous utilisez pour l'invite zéro.
En savoir plus
Rubrique parent: Optimisation d'un modèle