Un modèle mental utile
L’entraînement est une correction d’erreur contrôlée.
Imaginez un modèle qui possède des molettes ajustables à l’intérieur. Un exemple est fourni en entrée et le modèle produit une sortie. Une règle d’évaluation indique la qualité de cette sortie. L’entraînement détermine dans quelle direction tourner les molettes, les ajuste légèrement, puis recommence.
Ces « molettes » sont les paramètres du modèle. La règle d’évaluation est appelée objectif. Lorsque la valeur la plus faible est préférable, son score est souvent appelé perte.
Cette représentation est plus exacte que de dire que le modèle « absorbe » ses données. Les données fournissent des exemples. L’objectif indique une direction d’amélioration. L’algorithme d’entraînement modifie le modèle.
training examples
|
v
model makes outputs
|
v
objective measures loss or reward
|
v
calculate each parameter's contribution
|
v
update parameters
|
+---------- repeat ----------+
held-out validation data checks whether the result transfersComment fonctionne l’entraînement de l’IA
La méthode exacte dépend du modèle et de l’objectif, mais l’entraînement des réseaux neuronaux suit généralement cette boucle :
- Préparer les exemples et un objectif.Les données d’entraînement peuvent associer des entrées à des étiquettes, masquer une partie d’une entrée que le modèle doit prédire, ou inclure des retours sur les sorties préférées.
- Choisir un modèle de départ.L’entraînement peut commencer avec des paramètres nouvellement initialisés ou avec un modèle déjà entraîné.
- Faire passer un lot dans le modèle.Un lot est un petit groupe d’exemples traités ensemble. Cette passe avant ressemble à l’inférence : le modèle actuel transforme les entrées en sorties.
- Évaluer les sorties.Une fonction de perte peut mesurer l’écart par rapport aux réponses cibles. Un autre objectif peut attribuer une récompense plus élevée au comportement préféré.
- Attribuer le mérite ou la responsabilité.Pour un réseau neuronal, la rétropropagation calcule un gradient pour chaque paramètre. Un gradient indique comment une petite modification de ce paramètre devrait modifier la perte.
- Mettre à jour les paramètres.Un optimiseur utilise ces gradients pour choisir les modifications effectives. Le taux d’apprentissage contrôle l’ampleur d’une mise à jour typique.
- Répéter et vérifier.L’entraînement se poursuit sur d’autres lots. Des données de validation distinctes vérifient si l’amélioration s’étend au-delà des exemples qui ont produit les mises à jour.
Une époque est un passage sur l’ensemble des données d’entraînement. L’entraînement peut utiliser une fraction d’époque ou plusieurs époques. Une époque est une unité de progression, et non la garantie qu’un apprentissage utile a eu lieu.
Cette boucle décrit le sens technique restreint de l’entraînement. En pratique, on utilise aussi le terme entraînement pour désigner le processus plus large qui l’entoure : collecte et filtrage des données, sélection d’un objectif, exécution d’expériences, évaluation des points de contrôle et décision du moment où arrêter.
Le retour ne se présente pas toujours de la même manière
L’expression « comparer la prédiction avec la bonne réponse » est un point de départ utile, mais elle est trop limitée pour servir de définition.
- Dans l’apprentissage supervisé, les exemples incluent des étiquettes cibles, comme la catégorie attribuée à une image.
- Dans l’apprentissage auto-supervisé, les données fournissent leurs propres cibles. Un modèle de langage peut apprendre en prédisant une partie masquée ou la prochaine partie d’un texte.
- Dans l’apprentissage par renforcement, les résultats reçoivent des récompenses et l’entraînement augmente la probabilité des actions qui conduisent à une récompense plus élevée.
Ces méthodes diffèrent par l’origine du signal d’entraînement. Elles partagent la même idée centrale : utiliser le retour pour modifier les paramètres du modèle afin de les orienter vers un objectif.
Un exemple d’entraînement en une étape
Considérons un modèle doté d’un seul paramètre, w. Il prédit :
output = w × inputLe modèle commence avec w = 0,5. Son exemple d’entraînement possède une entrée de 2 et une sortie cible de 4.
La première prédiction est :
0.5 × 2 = 1Utilisons l’erreur quadratique comme perte :
(prediction - target)²
(1 - 4)² = 9Pour cet exemple, le gradient de la perte par rapport à w est de -12. Le signe négatif signifie qu’augmenter w devrait réduire la perte. Avec un taux d’apprentissage de 0,1, la descente de gradient effectue cette mise à jour :
new w = old w - learning rate × gradient
new w = 0.5 - 0.1 × (-12)
new w = 1.7La prédiction est maintenant de 1,7 × 2 = 3,4, et l’erreur quadratique est de 0,36. Une mise à jour a permis de mieux ajuster le modèle à cet exemple.
Les modèles réels peuvent posséder de nombreux paramètres et l’entraînement combine généralement les signaux provenant d’un lot. L’optimiseur doit trouver des modifications qui fonctionnent sur des exemples variés. Améliorer les résultats sur un seul lot ne suffit pas. Le modèle doit également être performant sur des données mises de côté.
Pourquoi l’entraînement est important
L’entraînement détermine les comportements dont le modèle disposera lorsqu’il sera utilisé par la suite.
L’architecture définit les types de calculs que le modèle peut effectuer. L’entraînement sélectionne des valeurs particulières pour les paramètres au sein de cette architecture. Ces valeurs déterminent les motifs auxquels le modèle réagit et les sorties qu’il tend à produire.
L’objectif est important, car le modèle est optimisé pour le signal qu’il reçoit, et non pour toutes les qualités auxquelles une personne pourrait accorder de l’importance. Un modèle de langage entraîné à prédire du texte peut devenir utile pour de nombreuses tâches linguistiques, mais la perte de prédiction ne garantit pas directement la véracité, la sécurité ou le respect des instructions. Un entraînement ultérieur peut cibler certains de ces comportements au moyen de démonstrations ou de retours de préférence.
Les données sont importantes pour la même raison. Un modèle ne peut recevoir des signaux d’entraînement qu’à partir des exemples et des retours dont il dispose. Les lacunes, les erreurs, les duplications et les biais de ce matériel peuvent influencer le résultat entraîné.
Idées reçues courantes
L’entraînement conserve une copie de chaque exemple
L’entraînement modifie les paramètres. Il ne crée normalement pas dans le modèle une base de données consultable, ligne par ligne, de l’ensemble d’entraînement.
Un modèle peut néanmoins mémoriser certains exemples, notamment lorsque les données sont répétées ou que le modèle y est trop étroitement ajusté. Mais la mémorisation et la généralisation utile sont deux résultats différents. Une évaluation sur des données réellement distinctes aide à les différencier.
Une perte d’entraînement plus faible signifie que le modèle est performant
Une perte plus faible signifie que le modèle s’ajuste mieux à son objectif d’entraînement sur les données mesurées. Cela ne prouve pas qu’il fonctionne sur de nouveaux cas ni que l’objectif représente le véritable but.
Si la perte d’entraînement diminue tandis que les performances de validation se dégradent, le modèle est peut-être en surapprentissage : il devient plus spécialisé dans ses exemples d’entraînement au détriment des nouveaux exemples.
Davantage d’entraînement améliore toujours un modèle
Des mises à jour supplémentaires peuvent aider, avoir peu d’effet, déstabiliser l’entraînement ou accroître le surapprentissage. Le résultat dépend des données, de l’objectif, des réglages de l’optimiseur, de la capacité du modèle et de la décision d’arrêter.
Le modèle apprend de vous pendant que vous discutez avec lui
Au cours de l’inférence de l’IA ordinaire, le modèle déployé utilise des paramètres fixes pour répondre à une entrée. Les informations de la conversation en cours peuvent influencer sa prochaine sortie sans modifier ces paramètres.
Un fournisseur peut ultérieurement utiliser les interactions recueillies dans un processus d’entraînement distinct, selon le produit et sa politique concernant les données. Cela ne signifie pas que le modèle se met à jour lui-même pendant la conversation.
Chaque modèle est entraîné à partir de zéro
L’entraînement peut commencer à partir d’un modèle existant. Le préentraînement développe des capacités générales à partir d’un vaste jeu de données général. L’ajustement fin poursuit l’entraînement pour une tâche ou un domaine plus ciblé. Le post-entraînement est un terme plus large désignant les étapes ultérieures destinées à modeler le comportement, qui peuvent inclure l’ajustement fin et des méthodes fondées sur les préférences.
Les limites entre ces termes ne sont pas entièrement normalisées. Le critère fiable consiste à vérifier si le processus met à jour les paramètres du modèle. Fournir des exemples dans une invite peut modifier une sortie sans entraîner le modèle.
La place de l’entraînement dans un système d’IA
Le résultat d’une exécution d’entraînement est généralement un point de contrôle enregistré, contenant les poids appris et d’autres éléments d’état. Les développeurs évaluent les points de contrôle candidats et en sélectionnent un pour poursuivre l’entraînement ou le déployer.
Le déploiement ouvre une autre phase de fonctionnement. Lors de l’inférence, les entrées traversent le modèle entraîné afin de produire des prédictions, des classifications ou du contenu généré. Une passe avant apparaît dans les deux phases. L’entraînement ajoute le retour, le calcul des gradients et les mises à jour des paramètres.
Pour aller plus loin
Lisez Qu’est-ce que l’inférence en IA ? pour voir ce qui change lorsque la boucle de mise à jour des paramètres s’arrête et qu’un modèle entraîné est utilisé. Consultez ensuite Entraînement contre inférence pour une comparaison directe des deux étapes du cycle de vie.