Quel est le taux d’apprentissage dans le machine learning ?

27 novembre 2024

Auteurs

Ivan Belcic

Staff writer

Cole Stryker

Editorial Lead, AI Models

Gather

Qu’est-ce que le taux d’apprentissage dans le machine learning ? 

Le taux d’apprentissage est un hyperparamètre qui régit la manière dont un modèle de machine learning ajuste ses paramètres à chaque étape de son algorithme d’optimisation. Le taux d’apprentissage permet de déterminer si le modèle offre une performance optimale ou s’il ne parvient pas à apprendre pendant le processus d’entraînement. 

L’objectif de l’algorithme d’optimisation est de réduire au minimum la fonction de perte, qui mesure l’écart entre les prédictions du modèle et les données réelles. Chaque fois que le modèle exécute son algorithme d’optimisation, il met à jour ses paramètres en fonction du résultat. Le taux d’apprentissage, ou taille de pas, est représenté par la lettre grecque η et détermine la taille des modifications que le modèle est autorisé à apporter. 

Le taux d’apprentissage permet de s’assurer que les modèles apprennent suffisamment lors de l’entraînement pour ajuster leurs paramètres de manière significative, sans toutefois les corriger excessivement. Supposons que vous descendiez une colline. Pour éviter les chutes, vous devez aller assez vite pour avancer, mais pas trop non plus pour éviter de perdre le contrôle et de trébucher. Le meilleur taux d’apprentissage fixe une vitesse de descente sûre. 

À chaque pas d’apprentissage, le modèle remplace sa compréhension précédente du jeu de données. Les réseaux de neurones « apprennent » toujours plus de leurs données d’entraînement à chaque passage de leur algorithme d’optimisation. 

Design 3D de balles roulant sur une piste

Les dernières actualités et informations en matière d’IA 


La newsletter hebdomadaire Think vous apporte toute l’actualité sur l’IA, le cloud et bien d’autres sujets.

Pourquoi le taux d’apprentissage est-il important ?

Le taux d’apprentissage est important, car il permet aux modèles d’IA d’apprendre efficacement à partir de leurs données d’entraînement.

Un faible taux d’apprentissage ne permet pas au modèle d’« apprendre » suffisamment à chaque pas. Le modèle met à jour ses paramètres trop lentement et met trop de temps pour atteindre la convergence. Mais cela ne signifie pas qu’un taux d’apprentissage élevé soit la solution. 

Avec un taux d’apprentissage élevé, l’algorithme peut être victime d’un dépassement, en allant trop loin dans la correction de ses erreurs. Dans ce cas, l’algorithme a besoin d’un taux d’apprentissage plus faible, mais pas au point de rendre l’apprentissage inefficace. 

Prenons l’exemple d’un extraterrestre venu découvrir la vie sur Terre. Il voit des chats, des chiens, des chevaux, des cochons et des vaches, et il en conclut que tous les animaux ont quatre pattes. Il voit ensuite une poule. Est-ce également un animal ? Selon son taux d’apprentissage, l’extraterrestre parviendra à l’une des trois conclusions suivantes : 

  • Avec un taux d’apprentissage optimal, l’extraterrestre conclut que les poules sont également des animaux, auquel cas le nombre de pattes n’est pas un critère essentiel pour déterminer s’il a affaire à un animal ou non. 

  • Avec un faible taux d’apprentissage, l’extraterrestre ne pourra pas recueillir suffisamment d’informations en voyant une seule poule. Il conclura que les poules ne sont pas des animaux parce qu’ils n’ont pas quatre pattes. En raison de son faible taux d’apprentissage, l’extraterrestre ne pourra mettre à jour son raisonnement que lorsqu’il aura vu d’autres poules. 

  • Si son taux d’apprentissage est élevé, l’extraterrestre procédera à une correction excessive. En effet, il conclura que parce que la poule est un animal et qu’elle a deux pattes, tous les animaux ont deux pattes. Si le taux d’apprentissage est élevé, le modèle apprend « trop » à la fois. 

Les résultats de l’apprentissage dépendent du taux d’apprentissage. Le meilleur taux d’apprentissage est celui qui permet à l’algorithme d’ajuster les paramètres du modèle en temps voulu, sans dépasser le point de convergence. 

Que sont les paramètres en machine learning ?

Les paramètres sont des variables de configuration qui régissent le fonctionnement des modèles d’apprentissage profond. À l’instar des réglages d’un modèle, ils déterminent son comportement et peuvent être ajustés pour améliorer sa performance.

Paramètres appris par le modèle

Les paramètres appris par le modèle, ou poids du modèle, lui sont internes et sont appris lors de l’entraînement. À chaque pas d’apprentissage, le modèle modifie ses paramètres internes pour améliorer sa performance. La taille des modifications apportées par le modèle est définie par le taux d’apprentissage. La configuration des paramètres du modèle affecte directement sa performance.

Lors du réglage fin d’un modèle, les ajustements nécessaires sont moins nombreux puisque le modèle a déjà été entraîné. Le réglage fin nécessite généralement un taux d’apprentissage inférieur à celui de l’entraînement initial d’un modèle.

Hyperparamètres

Les hyperparamètres sont des règles externes qui façonnent la structure et le processus d’entraînement du modèle. Ils sont configurés par les personnes chargées d’entraîner le modèle. Le taux d’apprentissage est l’un de ces hyperparamètres, et sa valeur est généralement comprise entre 0,0 et 1,0. 

Voici deux autres hyperparamètres essentiels : 

  • Époque : le nombre de passages du jeu de données entier dans le modèle pendant l’entraînement. Une époque est terminée lorsque le modèle a traité une fois chaque échantillon de ses données d’entraînement. L’hyperparamètre époque définit le nombre d’époques dans le processus d’entraînement. 

  • Taille des lots : les époques d’entraînement peuvent être divisées en blocs plus petits, appelés « lots ». Le modèle actualise ses poids après chaque lot d’entraînement. 

L’hyperparamètre époque fixe la durée du processus d’entraînement, tandis que la taille des lots détermine la fréquence à laquelle le modèle actualise ses poids. Le taux d’apprentissage indique au modèle ce qu’il reste à apprendre après chaque lot. 

Groupe d’experts | Podcast

Décryptage de l’IA : Tour d’horizon hebdomadaire

Rejoignez notre panel d’ingénieurs, de chercheurs, de chefs de produits et autres spécialistes de premier plan pour connaître l’essentiel de l'actualité et des dernières tendances dans le domaine de l’IA.

Qu’est-ce qu’un algorithme d’optimisation ?

Un algorithme d’optimisation, ou algorithme d’apprentissage, est un processus de programmation qui permet aux modèles d’apprentissage profond d’apprendre à partir de leurs données d’entraînement et d’actualiser leurs poids. Les algorithmes d’apprentissage sont composés d’une fonction de perte (également appelée fonction de coût ou fonction d’erreur) et d’une méthode d’optimisation des poids du modèle.

Chaque itération de l’algorithme d’apprentissage affine davantage le modèle. Lorsqu’un modèle ne peut plus être amélioré avec une passe d’entraînement supplémentaire, on parle de convergence

Descente de gradient

La descente de gradient est un algorithme d’optimisation permettant d’entraîner des modèles de machine learning. Les algorithmes de descente de gradient utilisent une fonction de perte pour représenter la différence entre les prédictions d’un algorithme de machine learning et les valeurs réelles. Le gradient est la pente de la fonction, représentant ses valeurs potentielles. 

L’objectif de l’algorithme d’optimisation est de faire descendre le gradient à son minimum local, où la fonction produit la sortie la plus faible. Mais le minimum local n’est pas nécessairement le minimum global de la fonction, ni sa valeur minimale globale. Les data scientists emploient des méthodes supplémentaires, comme d’autres algorithmes et la régularisation, pour éviter que le modèle ne reste bloqué à un minimum local sous-optimal lorsque la sortie de la fonction de perte diminue. 

Le processus de mise à jour des poids d’un modèle par la réduction de sa fonction de perte est connu sous le nom de rétropropagation. La descente de gradient est une méthode courante d’application de la technique de rétropropagation. 

Chaque fois que l’algorithme met à jour les paramètres du modèle pour réduire la fonction de perte et diminuer le gradient, le modèle se rapproche un peu plus de la convergence. Le taux d’apprentissage contrôle cette descente en limitant le rythme auquel l’algorithme actualise les poids du modèle. 

Il existe trois types de descente de gradient : 

  • La descente de gradient par lots intervient après le calcul de la perte pour chaque échantillon du jeu de données. Bien que très stable, cette option n’est pas la meilleure pour atteindre une convergence optimale. 

  • La descente de gradient stochastique (SGD) sélectionne de manière aléatoire un point de données par itération, ce qui augmente considérablement la vitesse et les nuances. Mais sa fréquence de mise à jour élevée peut réduire la stabilité. La descente de gradient stochastique possède de nombreuses variantes, notamment Adam, AdaGrad et RMSProp. 

  • La descente de gradient par petits lots est une méthode de compromis qui sélectionne un petit groupe de points de données par itérations. Elle offre une fréquence et une vitesse de mise à jour correctes sans sacrifier la stabilité. 

    Comment déterminer le taux d’apprentissage optimal

    La détermination du taux d’apprentissage adéquat est en grande partie un processus d’essais et d’erreurs. Il n’existe pas de technique de science des données infaillible capable de garantir un taux d’apprentissage initial optimal sans évaluer les progrès réalisés pendant l’entraînement. 

    Les méthodes les plus courantes pour déterminer le taux d’apprentissage sont les suivantes : 

    • Recherche en grille 

    • Calendriers du taux d’apprentissage

    • Taux d’apprentissage adaptatif 

    • Optimisation des hyperparamètres

    L’optimisation du taux d’apprentissage repose fortement sur les principes fondamentaux de la décroissance et du momentum. De nombreuses bibliothèques d’apprentissage profond calculent la décroissance et le momentum pour le compte des utilisateurs. L’une de ces bibliothèques est l’API open source Keras, écrite en Python, avec prise en charge de TensorFlow, JAX et PyTorch

    • La décroissance ralentit le taux d’apprentissage au fur et à mesure que l’entraînement progresse. Une utilisation efficace de la décroissance permet au modèle d’apprendre d’abord rapidement, puis de manière plus incrémentielle pour éviter de dépasser la convergence. 

    • Le momentum est l’inertie de l’algorithme d’optimisation. Elle augmente le taux d’apprentissage lorsque le gradient suit la même direction (ce qui signifie que l’algorithme n’a pas encore atteint la convergence) tout en contournant les minima locaux pour continuer la progression descendante. L’augmentation du momentum peut accélérer la convergence. Un momentum faible peut bloquer l’entraînement à des minima locaux mineurs, tandis qu’un momentum élevé peut accidentellement ignorer des minima locaux importants. 

    Recherche par grille

    La recherche en grille est une méthode par force brute qui permet de déterminer le taux d’apprentissage. Les data scientists assemblent une grille contenant tous les taux d’apprentissage possibles. Chaque taux d’apprentissage est ensuite testé et validé. La validation consiste à tester le modèle entraîné sur un nouveau jeu de données et à mettre à jour ses hyperparamètres. 

    Si la recherche en grille favorise une évaluation exhaustive du taux d’apprentissage, elle est chronophage et gourmande en calcul.

    Calendriers du taux d’apprentissage

    Les calendriers de taux d’apprentissage mettent à jour le taux d’apprentissage pendant le processus d’entraînement selon l’un des plans prédéterminés. Les programmes les plus courants sont les suivants : 

    • Taux d’apprentissage fixe

    • Décroissance en fonction du temps 

    • Décroissance par paliers 

    • Décroissance exponentielle

    • Décroissance polynomiale

    Taux d’apprentissage fixe

    Un taux d’apprentissage fixe, ou taux d’apprentissage constant, ne change pas pendant l’entraînement. Avec un taux d’apprentissage fixe, le momentum et la décroissance restent statiques pendant l’entraînement. Un taux d’apprentissage fixe constitue un point de référence à partir duquel tester d’autres stratégies de taux d’apprentissage.

    Décroissance en fonction du temps

    Un calendrier d’apprentissage en fonction du temps déclenche une décroissance du taux d’apprentissage après un nombre prédéterminé d’époques d’entraînement ou à des époques spécifiées. La décroissance du taux d’apprentissage est basée sur le taux d’apprentissage du cycle précédent. Dans un calendrier d’apprentissage classique en fonction du temps, la décroissance est basée sur un facteur inversement proportionnel au nombre d’époques.

    Décroissance par paliers 

    La décroissance par paliers réduit le taux d’apprentissage selon un facteur prédéterminé, par exemple en le divisant par deux, après un nombre déterminé d’époques.

    Décroissance exponentielle

    Les taux d’apprentissage à décroissance exponentielle diminuent de façon exponentielle après un certain nombre d’époques. Sinon, les calendriers d’apprentissage à décroissance exponentielle sont similaires aux calendriers de décroissance par paliers.

    Décroissance polynomiale

    Dans un calendrier d’apprentissage polynomial, la décroissance est déterminée par une fonction polynomiale de l’époque en cours. La multiplication de l’époque par un exposant supérieur augmente le taux de décroissance, tandis qu’une puissance inférieure permet de maintenir un taux de décroissance plus constant.

    Calendrier de taux d’apprentissage cyclique

    Un calendrier d’apprentissage cyclique définit un taux d’apprentissage minimum et maximum, puis fait osciller le taux d’apprentissage entre les deux. Un calendrier triangulaire augmente le taux de manière linéaire du minimum au maximum et vice-versa selon une constante définie. D’autres calendriers utilisent des fonctions cosinusoïdales, sinusoïdales ou paraboliques.

    Taux d’apprentissage adaptatif

    Les algorithmes d’apprentissage adaptatif s’ajustent de manière dynamique en réponse aux conditions actuelles ou aux itérations précédentes. En revanche, les taux d’apprentissage programmés dépendent tous d’hyperparamètres prédéfinis. 

    De nombreuses méthodes d’apprentissage adaptatif sont des variantes de la descente de gradient stochastique. Voici quelques algorithmes d’apprentissage adaptatif notables :

    • AdaGrad : la famille d’algorithmes AdaGrad (gradient adaptatif), introduite en 2011, met à jour le taux d’apprentissage séparément pour chaque paramètre. Elle établit généralement une relation inversement proportionnelle entre le taux d’apprentissage et la fréquence des caractéristiques. Cette approche permet de se concentrer sur les caractéristiques les plus pertinentes du jeu de données. 

    • RMSProp : la propagation de la moyenne quadratique (RMSProp) ajuste le poids d’apprentissage de chaque paramètre en fonction d’une moyenne mobile des carrés de chaque gradient. Elle s’améliore sur AdaGrad en ignorant les gradients du passé lointain, augmentant la stabilité et accélérant la convergence. 

    • Adam : introduit en 2014, Adam (Adaptative moment estimation) combine le momentum avec la RMSProp pour ajuster le taux d’apprentissage de chaque paramètre en fonction de ses gradients précédents. Les versions ultérieures d’Adam ont ajouté un démarrage à chaud, qui augmente progressivement le taux d’apprentissage au début de l’entraînement.

    Optimisation des hyperparamètres

    L’optimisation des hyperparamètres, ou réglage des hyperparamètres, consiste à identifier la configuration optimale pour chaque hyperparamètre, y compris le taux d’apprentissage. Les algorithmes d’optimisation des hyperparamètres automatisent le processus de configuration des hyperparamètres optimaux, chaque algorithme privilégiant certains hyperparamètres par rapport à d’autres. 

    La recherche de la configuration optimale globale des hyperparamètres permet de déterminer comment chaque hyperparamètre affecte les autres. Cependant, cette approche peut s’avérer coûteuse en termes de calcul, en particulier avec de grandes quantités d’hyperparamètres.

    Solutions connexes
    IBM watsonx.ai

    Entraînez, validez, réglez et déployez une IA générative, des modèles de fondation et des capacités de machine learning avec IBM watsonx.ai, un studio d’entreprise nouvelle génération pour les générateurs d’IA. Créez des applications d’IA en peu de temps et avec moins de données.

    Découvrir watsonx.ai
    Solutions d’intelligence artificielle

    Mettez l’IA au service de votre entreprise grâce à l’expertise de pointe d’IBM en matière d’IA et à son portefeuille de solutions.

    Découvrir les solutions d’IA
    Conseils et services en matière d’IA

    Réinventez les workflows et les opérations critiques en ajoutant l’IA pour optimiser les expériences, la prise de décision et la valeur métier en temps réel.

    Découvrir les services d’IA
    Passez à l’étape suivante

    Bénéficiez d’un accès centralisé aux fonctionnalités couvrant le cycle de développement de l’IA. Produisez des solutions IA puissantes offrant des interfaces conviviales, des workflows et un accès à des API et SDK conformes aux normes du secteur.

    Découvrir watsonx.ai Réserver une démo en direct