Régression linéaire: hyperparamètres

Les hyperparamètres sont des variables qui contrôlent différents aspects de l'entraînement. Voici trois hyperparamètres courants:

À l'inverse, les paramètres sont les variables, comme les pondérations et les biais, qui font partie du modèle lui-même. En d'autres termes, les hyperparamètres sont des valeurs que vous contrôlez, tandis que les paramètres sont des valeurs que le modèle calcule pendant l'entraînement.

Taux d'apprentissage

Le taux d'apprentissage est un nombre à virgule flottante que vous définissez et qui influence la rapidité de convergence du modèle. Si le taux d'apprentissage est trop faible, la convergence du modèle peut prendre beaucoup de temps. Toutefois, si le taux d'apprentissage est trop élevé, le modèle ne converge jamais, mais oscille autour des pondérations et des biais qui minimisent la perte. L'objectif est de choisir un taux d'apprentissage qui n'est ni trop élevé ni trop faible pour que le modèle converge rapidement.

Le taux d'apprentissage détermine l'ampleur des modifications à apporter aux poids et aux biais à chaque étape du processus de descente du gradient. Le modèle multiplie le gradient par le taux d'apprentissage pour déterminer les paramètres du modèle (valeurs de poids et de biais) pour l'itération suivante. Lors de la troisième étape de la descente du gradient, la "petite quantité" à déplacer dans la direction de la pente négative fait référence au taux d'apprentissage.

La différence entre les anciens paramètres du modèle et les nouveaux paramètres du modèle est proportionnelle à la pente de la fonction de perte. Par exemple, si la pente est importante, le modèle effectue un grand pas. Si elle est petite, il faut faire un petit pas. Par exemple, si l'ampleur de la pente est de 2,5 et que le taux d'apprentissage est de 0,01, le modèle modifie le paramètre de 0,025.

Le taux d'apprentissage idéal aide le modèle à converger en un nombre raisonnable d'itérations. Dans la figure 21, la courbe de perte montre que le modèle s'améliore considérablement au cours des 20 premières itérations avant de commencer à converger:

Figure 21. Courbe de perte qui présente une pente raide avant de s'aplatir.

Figure 21. Graphique de perte montrant un modèle entraîné avec un taux d'apprentissage qui converge rapidement.

À l'inverse, un taux d'apprentissage trop faible peut nécessiter trop d'itérations pour converger. Dans la figure 22, la courbe de perte montre que le modèle n'apporte que des améliorations mineures après chaque itération:

Figure 22. Courbe de perte présentant une pente presque à 45 degrés.

Figure 22 Graphique de perte montrant un modèle entraîné avec un faible taux d'apprentissage.

Un taux d'apprentissage trop élevé ne converge jamais, car chaque itération fait fluctuer la perte ou l'augmente continuellement. Dans la figure 23, la courbe de perte montre que le modèle diminue, puis augmente la perte après chaque itération. Dans la figure 24, la perte augmente lors des itérations ultérieures:

Figure 23. Courbe de perte qui présente une ligne à dents de scie.

Figure 23. Graphique de la perte montrant un modèle entraîné avec un taux d'apprentissage trop élevé, où la courbe de perte fluctue de manière extrême, à la hausse et à la baisse à mesure que les itérations augmentent.

Figure 24. Courbe de perte montrant l'augmentation de la perte lors des itérations ultérieures

Figure 24. Graphique de perte montrant un modèle entraîné avec un taux d'apprentissage trop élevé, où la courbe de perte augmente considérablement dans les itérations ultérieures.

Exercice: Vérifiez votre compréhension

Quelle est la vitesse d'apprentissage idéale ?
1.0
0,01
Le taux d'apprentissage idéal dépend du problème.

Taille de lot

La taille de lot est un hyperparamètre qui fait référence au nombre d'exemples que le modèle traite avant de mettre à jour ses poids et ses biais. Vous pourriez penser que le modèle doit calculer la perte pour chaque exemple de l'ensemble de données avant de mettre à jour les poids et le biais. Toutefois, lorsqu'un ensemble de données contient des centaines de milliers, voire des millions d'exemples, il n'est pas pratique d'utiliser l'ensemble complet.

Deux techniques courantes pour obtenir le bon gradient en moyenne sans avoir à examiner chaque exemple de l'ensemble de données avant de mettre à jour les poids et le biais sont la descente stochastique du gradient et la descente stochastique du gradient en mini-lot:

  • Descente de gradient stochastique (SGD): la descente de gradient stochastique n'utilise qu'un seul exemple (une taille de lot de un) par itération. Avec suffisamment d'itérations, SGD fonctionne, mais est très bruyant. Le terme "bruit" désigne les variations lors de l'entraînement qui entraînent une augmentation plutôt qu'une diminution de la perte au cours d'une itération. Le terme "stochastique" indique que l'exemple unique de chaque lot est choisi au hasard.

    Notez dans l'image suivante que la perte fluctue légèrement à mesure que le modèle met à jour ses poids et ses biais à l'aide de la descente de gradient stochastique, ce qui peut entraîner du bruit dans le graphique de la perte:

    Figure 25. Courbe de perte abrupte qui s'aplatit, mais avec de nombreuses petites fluctuations.

    Figure 25 : Modèle entraîné avec une descente de gradient stochastique (SGD) montrant du bruit dans la courbe de perte.

    Notez que l'utilisation de la descente stochastique du gradient peut produire du bruit sur l'ensemble de la courbe de perte, et pas seulement à proximité de la convergence.

  • Descente de gradient stochastique par mini-lot (SGD par mini-lot): la descente de gradient stochastique par mini-lot est un compromis entre la descente de gradient par mini-lot et le SGD. Pour un nombre de points de données N, la taille de lot peut être n'importe quel nombre supérieur à 1 et inférieur à N. Le modèle choisit les exemples inclus dans chaque lot de manière aléatoire, calcule la moyenne de leurs gradients, puis met à jour les poids et le biais une fois par itération.

    Le nombre d'exemples pour chaque lot dépend de l'ensemble de données et des ressources de calcul disponibles. En général, les petites tailles de lot se comportent comme la descente du gradient stochastique, tandis que les tailles de lot plus importantes se comportent comme la descente du gradient sur l'ensemble du lot.

    Figure 26. Courbe de perte abrupte qui commence à s'aplatir, avec des fluctuations beaucoup plus faibles à proximité de la convergence.

    Figure 26 Modèle entraîné avec SGD par mini-lots.

Lorsque vous entraînez un modèle, vous pouvez penser que le bruit est une caractéristique indésirable qui doit être éliminée. Toutefois, un certain niveau de bruit peut être bénéfique. Dans les modules suivants, vous découvrirez comment le bruit peut aider un modèle à mieux généraliser et à trouver les poids et les biais optimaux dans un réseau de neurones.

Époques

Lors de l'entraînement, une époque signifie que le modèle a traité chaque exemple de l'ensemble d'entraînement une fois. Par exemple, étant donné un ensemble d'entraînement de 1 000 exemples et une taille de mini-lot de 100 exemples, le modèle nécessitera 10 iterations pour terminer une époque.

L'entraînement nécessite généralement de nombreuses époques. Autrement dit, le système doit traiter chaque exemple de l'ensemble d'entraînement plusieurs fois.

Le nombre d'époques est un hyperparamètre que vous définissez avant le début de l'entraînement du modèle. Dans de nombreux cas, vous devrez tester le nombre d'époques nécessaires pour que le modèle converge. En général, un nombre d'époques plus élevé produit un meilleur modèle, mais l'entraînement prend plus de temps.

Figure 27. Un lot complet correspond à l'ensemble de données complet, un mini-lot est un sous-ensemble de l'ensemble de données, et une époque correspond à une passe complète sur dix mini-lots.

Figure 27 Lot complet par rapport au mini-lot.

Le tableau suivant décrit la relation entre la taille de lot et les époques et le nombre de fois où un modèle met à jour ses paramètres.

Type de lot Quand les mises à jour des pondérations et des biais se produisent
Lot complet Une fois que le modèle a examiné tous les exemples de l'ensemble de données. Par exemple, si un ensemble de données contient 1 000 exemples et que le modèle s'entraîne pendant 20 époques, il met à jour les poids et le biais 20 fois, une fois par époque.
Descente de gradient stochastique Une fois que le modèle a examiné un seul exemple de l'ensemble de données. Par exemple, si un ensemble de données contient 1 000 exemples et est entraîné pendant 20 époques, le modèle met à jour les poids et le biais 20 000 fois.
Descente de gradient stochastique par mini-lots Une fois que le modèle a examiné les exemples de chaque lot. Par exemple, si un ensemble de données contient 1 000 exemples, que la taille de lot est de 100 et que le modèle s'entraîne pendant 20 époques, il met à jour les poids et le biais 200 fois.

Exercice: Vérifiez votre compréhension

1. Quelle est la meilleure taille de lot à utiliser avec la descente de gradient stochastique par mini-lots ?
100 exemples par lot
10 exemples par lot
Cela dépend
2. Laquelle de ces affirmations est correcte ?
Les lots plus importants ne sont pas adaptés aux données comportant de nombreux écarts.
Doubler le taux d'apprentissage peut ralentir l'entraînement.