Hyperparamètres pour le réglage fin d'un modèle dans l'IA générative
OCI Generative AI ajuste chaque modèle de base à l'aide des hyperparamètres suivants, qui sont basés sur le modèle de base préentraîné.
Commencez à entraîner chaque modèle avec ses valeurs d'hyperparamètre par défaut. Une fois le modèle créé, sur la page de détails du modèle, sous Performances du modèle, vérifiez les valeurs d'exactitude et de perte. Si les résultats ne vous conviennent pas, créez un autre modèle avec un ensemble de données plus volumineux ou des hyperparamètres différents jusqu'à ce que les performances s'améliorent.
Le tableau suivant décrit les hyperparamètres utilisés par OCI IA générative pour entraîner un modèle de base meta.llama-3-70b-instruct
avec la méthode LoRA
.
Hyperparamètre | Description | Plage valide | Valeur par défaut |
---|---|---|---|
Nombre total de périodes d'entraînement | Nombre d'itérations de l'entraînement avec l'ensemble de données d'entraînement complet. Par exemple, 1 valeur (epoch ) signifie que le modèle est entraîné une seule fois à l'aide de l'ensemble de données d'entraînement complet. |
1 ou un entier supérieur |
3 |
Taux d'apprentissage | Vitesse de mise à jour des pondérations du modèle par rapport au gradient d'erreur. | Un nombre compris entre 0 et 1.0 | 0 |
Taille de batch d'entraînement | Nombre d'échantillons d'un mini batch par lesquels passer avant de mettre à jour les paramètres du modèle. | Nombre entier compris entre 8 et 16 | 8 |
Patience d'arrêt anticipé | Définit le nombre de périodes de grâce pour poursuivre le cycle d'évaluation, après le déclenchement du seuil d'arrêt anticipé. L'entraînement s'arrête si la mesure de perte ne s'améliore pas au-delà du seuil d'arrêt anticipé pour ce nombre d'évaluations. | 0 pour désactiver et 1 entier ou plus pour ajouter un délai de grâce | 15 |
Seuil d'arrêt anticipé | La perte s'améliore lorsqu'elle diminue au cours du prochain cycle d'entraînement. Si la perte ne s'améliore pas assez, vous pouvez arrêter l'entraînement. Définir l'amélioration minimale de la perte d'évaluation qui devrait déclencher le compteur d'arrêt anticipé. Si la perte ne s'améliore pas au-delà de la valeur minimale pendant la période de patience, l'entraînement s'arrête. Sinon, l'entraînement se poursuit et le compteur se réinitialise. | 0 ou un nombre positif | 0 |
Intervalle de mesures de modèle de journal dans les étapes | Nombre d'étapes par journalisation. Les mesures de modèle telles que la perte d'entraînement et le taux d'apprentissage sont consignées. Si la perte de formation ne diminue pas comme prévu, examinez les données de formation ou le taux de formation. | Valeur prédéfinie : 10 | 10 |
LoRA r (pour la méthode LoRA uniquement) |
Dimension d'attention (rang) des matrices de mise à jour. Un rang inférieur se traduit par des matrices de mise à jour plus petites avec moins de paramètres entraînables. | Un entier compris entre 1 et 64 | 8 |
LoRA alpha (pour la méthode LoRA uniquement) |
Paramètre alpha pour le redimensionnement LoRA . Les matrices de poids LoRA sont mises à l'échelle en divisant LoRA alpha par LoRA r . Le paramètre alpha définit les pondérations LoRA , qui sont un plus petit nombre de nouvelles pondérations et sont les seules à être entraînées dans le modèle. |
Nombre entier compris entre 1 et 128 | 8 |
LoRA dropout (pour la méthode LoRA uniquement) |
La probabilité d'abandon des neurones dans les couches LoRA . La méthode d'abandon permet d'éviter le surajustement en ignorant aléatoirement les neurones d'une couche. Un abandon de 10% signifie que chaque neurone a 10% de chances d'être abandonné. |
Nombre décimal inférieur à 1 pour le pourcentage, par exemple 0,1 pour 10 % | 0,1 |
totalTrainingSteps
.totalTrainingSteps = (totalTrainingEpochs * size(trainingDataset)) / trainingBatchSize
Dans l'équation précédente, le modèle ignore certains calculs d'arrondi.Le tableau suivant décrit les hyperparamètres utilisés par OCI IA générative pour entraîner un modèle de base cohere.command-r-16k
avec la méthode T-Few
.
Hyperparamètre | Description | Plage valide | Valeur par défaut |
---|---|---|---|
Nombre total de périodes d'entraînement | Nombre d'itérations de l'entraînement avec l'ensemble de données d'entraînement complet. Par exemple, 1 valeur (epoch ) signifie que le modèle est entraîné une seule fois à l'aide de l'ensemble de données d'entraînement complet. |
Un entier compris entre 1 et 10 |
1 |
Taux d'apprentissage | Vitesse de mise à jour des pondérations du modèle par rapport au gradient d'erreur. | Un nombre compris entre 0.000005 et 0.1 | 0,01 |
Taille de batch d'entraînement | Nombre d'échantillons d'un mini batch par lesquels passer avant de mettre à jour les paramètres du modèle. | Un entier compris entre 8 et 32 | 16 |
Patience d'arrêt anticipé | Définit le nombre de périodes de grâce pour poursuivre le cycle d'évaluation, après le déclenchement du seuil d'arrêt anticipé. L'entraînement s'arrête si la mesure de perte ne s'améliore pas au-delà du seuil d'arrêt anticipé pour ce nombre d'évaluations. | 0 pour désactiver et un entier compris entre 1 et 16 pour ajouter un délai de grâce | 10 |
Seuil d'arrêt anticipé | La perte s'améliore lorsqu'elle diminue au cours du prochain cycle d'entraînement. Si la perte ne s'améliore pas assez, vous pouvez arrêter l'entraînement. Définir l'amélioration minimale de la perte d'évaluation qui devrait déclencher le compteur d'arrêt anticipé. Si la perte ne s'améliore pas au-delà de la valeur minimale pendant la période de patience, l'entraînement s'arrête. Sinon, l'entraînement se poursuit et le compteur se réinitialise. | Un nombre compris entre 0.001 et 0.1 | 0,001 |
Intervalle de mesures de modèle de journal dans les étapes | Nombre d'étapes par journalisation. Les mesures de modèle telles que la perte d'entraînement et le taux d'apprentissage sont consignées. Si la perte de formation ne diminue pas comme prévu, examinez les données de formation ou le taux de formation. | Ne peut pas être réglé et est défini sur 1. | 1 |
totalTrainingSteps
.totalTrainingSteps = (totalTrainingEpochs * size(trainingDataset)) / trainingBatchSize
Dans l'équation précédente, le modèle ignore certains calculs d'arrondi.Le tableau suivant décrit les hyperparamètres utilisés par OCI IA générative pour entraîner le modèle de base cohere.command
et affiche les valeurs par défaut des méthodes T-Few
et Vanilla
.
cohere.command
est disponible uniquement dans la région Midwest des Etats-Unis (Chicago).Hyperparamètre | Description | Plage valide | Valeur par défaut pour T-Few | Valeur par défaut pour la vanille |
---|---|---|---|---|
Nombre total de périodes d'entraînement | Nombre d'itérations de l'entraînement avec l'ensemble de données d'entraînement complet. Par exemple, 1 valeur (epoch ) signifie que le modèle est entraîné une seule fois à l'aide de l'ensemble de données d'entraînement complet. |
1 ou un entier supérieur |
3 | 3 |
Taux d'apprentissage | Vitesse de mise à jour des pondérations du modèle par rapport au gradient d'erreur. | Un nombre compris entre 0 et 1.0 | 0,01 | 0.00006 (6e-7) |
Taille de batch d'entraînement | Nombre d'échantillons d'un mini batch par lesquels passer avant de mettre à jour les paramètres du modèle. | 8 | 8 | 8 |
Patience d'arrêt anticipé | Définit le nombre de périodes de grâce pour poursuivre le cycle d'évaluation, après le déclenchement du seuil d'arrêt anticipé. L'entraînement s'arrête si la mesure de perte ne s'améliore pas au-delà du seuil d'arrêt anticipé pour ce nombre d'évaluations. | 0 pour désactiver et 1 entier ou plus pour ajouter un délai de grâce | 6 | 6 |
Seuil d'arrêt anticipé | La perte s'améliore lorsqu'elle diminue au cours du prochain cycle d'entraînement. Si la perte ne s'améliore pas assez, vous pouvez arrêter l'entraînement. Définir l'amélioration minimale de la perte d'évaluation qui devrait déclencher le compteur d'arrêt anticipé. Si la perte ne s'améliore pas au-delà de la valeur minimale pendant la période de patience, l'entraînement s'arrête. Sinon, l'entraînement se poursuit et le compteur se réinitialise. | 0 ou un nombre positif | 0,01 | 0,01 |
Intervalle de mesures de modèle de journal dans les étapes | Nombre d'étapes par journalisation. Les mesures de modèle telles que la perte d'entraînement et le taux d'apprentissage sont consignées. Si la perte de formation ne diminue pas comme prévu, examinez les données de formation ou le taux de formation. | 0 pour désactiver et un entier compris entre 1 et le nombre total d'étapes d'entraînement à consigner. | 10 | 10 |
Nombre de dernières couches (pour la méthode Vanilla uniquement) |
Nombre de dernières couches à affiner dans la méthode Vanilla . |
Nombre entier compris entre 1 et 15 | non applicable | 15 |
totalTrainingSteps
.totalTrainingSteps = (totalTrainingEpochs * size(trainingDataset)) / trainingBatchSize
Dans l'équation précédente, le modèle ignore certains calculs d'arrondi.Le tableau suivant décrit les hyperparamètres utilisés par OCI IA générative pour entraîner le modèle de base cohere.command-light
et affiche les valeurs par défaut des méthodes T-Few
et Vanilla
.
cohere.command-light
est disponible uniquement dans la région Midwest des Etats-Unis (Chicago).Hyperparamètre | Description | Plage valide | Valeur par défaut pour T-Few | Valeur par défaut pour la vanille |
---|---|---|---|---|
Nombre total de périodes d'entraînement | Nombre d'itérations de l'entraînement avec l'ensemble de données d'entraînement complet. Par exemple, 1 valeur (epoch ) signifie que le modèle est entraîné une seule fois à l'aide de l'ensemble de données d'entraînement complet. |
1 ou un entier supérieur |
3 | 3 |
Taux d'apprentissage | Vitesse de mise à jour des pondérations du modèle par rapport au gradient d'erreur. | Un nombre compris entre 0 et 1.0 | 0,01 | 0 |
Taille de batch d'entraînement | Nombre d'échantillons d'un mini batch par lesquels passer avant de mettre à jour les paramètres du modèle. | Nombre entier compris entre 8 et 16 | 16 | 16 |
Patience d'arrêt anticipé | Définit le nombre de périodes de grâce pour poursuivre le cycle d'évaluation, après le déclenchement du seuil d'arrêt anticipé. L'entraînement s'arrête si la mesure de perte ne s'améliore pas au-delà du seuil d'arrêt anticipé pour ce nombre d'évaluations. | 0 pour désactiver et 1 entier ou plus pour ajouter un délai de grâce | 6 | 6 |
Seuil d'arrêt anticipé | La perte s'améliore lorsqu'elle diminue au cours du prochain cycle d'entraînement. Si la perte ne s'améliore pas assez, vous pouvez arrêter l'entraînement. Définir l'amélioration minimale de la perte d'évaluation qui devrait déclencher le compteur d'arrêt anticipé. Si la perte ne s'améliore pas au-delà de la valeur minimale pendant la période de patience, l'entraînement s'arrête. Sinon, l'entraînement se poursuit et le compteur se réinitialise. | 0 ou un nombre positif | 0,01 | 0,01 |
Intervalle de mesures de modèle de journal dans les étapes | Nombre d'étapes par journalisation. Les mesures de modèle telles que la perte d'entraînement et le taux d'apprentissage sont consignées. Si la perte de formation ne diminue pas comme prévu, examinez les données de formation ou le taux de formation. | 0 pour désactiver et un entier compris entre 1 et le nombre total d'étapes d'entraînement à consigner. | 10 | 10 |
Nombre de dernières couches (pour la méthode Vanilla uniquement) |
Nombre de dernières couches à affiner dans la méthode Vanilla . |
Un entier compris entre 1 et 14 | non applicable | 14 |
totalTrainingSteps
.totalTrainingSteps = (totalTrainingEpochs * size(trainingDataset)) / trainingBatchSize
Dans l'équation précédente, le modèle ignore certains calculs d'arrondi.