Réglage des hyperparamètres pour l'optimisation des modèles d'apprentissage automatique

Réglage des hyperparamètres - Une question de réglage

Tim Filzinger

Même si l'apprentissage automatique permet de prendre des décisions automatisées, il existe certaines caractéristiques des modèles qu'ils ne peuvent pas optimiser de manière autonome. Or, ce sont précisément ces hyperparamètres qui ont une influence considérable sur les performances ultérieures. Les développeurs investissent donc beaucoup de temps et d'énergie pour définir dès le départ les paramètres idéaux. L'ajustement des hyperparamètres est donc l'un des processus les plus importants lors de la préparation de projets d'IA. Mais cela n'est valable que si les données sont également correctes.

A cet égard, il existe beaucoup plus de moyens d'optimiser la précision et la qualité des modèles. Cela concerne par exemple Ingénierie des fonctionnalités ou Nettoyage des données. L'alimentation constante en données de haute qualité par des corrections humaines (HITL) est un concept fréquemment utilisé. En comparaison, l'hyperparamétrage se caractérise par une exécution unique. Les décisions prises à cette occasion ont donc une portée particulière.

Définition : Hyperparameter Tuning décrit la recherche de l'adaptation optimale d'un modèle de Machine Learning avant l'entraînement.

Quels sont les hyperparamètres ?

Plus une machine est complexe, plus il y a de vis de réglage qui influencent son fonctionnement. Sur Apprentissage automatique il n'en va pas autrement. Une attention particulière est accordée aux facteurs qui ne laissent guère de marge de manœuvre pour un réajustement ultérieur. Ce n'est pas pour rien que ces paramètres portent le préfixe grec "hyper" - leur importance est synonyme de "super". sur tous les autres. La seule exception est le choix central du type de modèle, qui doit être adapté au projet prévu et qui détermine les propriétés sur lesquelles il est possible d'agir.

Les hyperparamètres suivants peuvent jouer un rôle important pour presque tous les modèles d'apprentissage automatique :

Taux d'apprentissage

Un concept central de l'apprentissage automatique est la répétition itérative de prédictions d'entraînement qui entraînent une adaptation (neuronale) du modèle. Typiquement, il y a à chaque fois une comparaison avec une valeur cible définie dont la prédiction doit se rapprocher. Cela conduit en fin de compte à la minimisation d'une fonction de perte. Le taux d'apprentissage détermine la taille des étapes de ces optimisations et influence ainsi la vitesse et l'efficacité de l'entraînement.

Taille du lot

Cet hyperparamètre décrit le nombre d'échantillons ou de sondages qui sont parcourus lors de l'entraînement. Il s'agit de sous-ensembles prédéfinis, appelés lots, auxquels est subordonnée la descente du gradient de lot. Il s'agit de ce dernier lorsqu'un algorithme d'apprentissage itére l'ensemble des données. Si le lot ne comprend qu'un seul échantillon, on parle de descente de gradient stochastique. Les tailles de lot intermédiaires sont appelées mini descentes de gradient de lot et comprennent souvent 32, 64 ou 128 échantillons.

Époques

Indépendamment de la taille du lot, la fréquence à laquelle l'ensemble des données est présenté au modèle d'apprentissage automatique est importante. Ici aussi, il convient de peser soigneusement le pour et le contre de l'adaptation et de la généralisation. Un nombre d'époques de plusieurs centaines, voire de plusieurs milliers, se situe dans la fourchette habituelle. Des valeurs trop élevées ne font qu'augmenter la performance lors de l'entraînement, au détriment d'un éventuel overfitting. Les diagrammes linéaires ou les courbes d'apprentissage, qui permettent de visualiser le temps et l'adaptation du modèle, aident à faire la part des choses.

Courbe d'apprentissage automatique d'un modèle de réseau neuronal
Courbe d'apprentissage générale d'un réseau neuronal. Source : Courbes d'apprentissage en machine learning

Les modèles les plus performants actuellement sont basés sur le deep learning et les réseaux neuronaux. Dans ce cas, d'autres hyperparamètres sélectionnés sont pertinents en plus de ceux mentionnés ci-dessus :

Nombre de couches et de neurones

Le fonctionnement des réseaux neuronaux dépend fortement de leur structure - on parle alors d'architecture. En effet, même s'il ne s'agit que de fonctions non linéaires complexes, ils peuvent être représentés comme un réseau spatial. Celui-ci repose sur l'assemblage de couches de neurones qui, plus elles sont nombreuses et plus leur réseau est dense, plus elles permettent des calculs complexes. Dans le domaine du Traitement du langage naturel cela conduit par exemple à la saisie de contextes plus longs au sein du langage naturel.

Régularisation

Il s'agit d'une série de procédés qui influencent également la complexité des réseaux neuronaux. L'objectif est toutefois de les réduire temporairement afin d'éviter une suradaptation aux données de formation, appelée overfitting. Cela se fait par exemple par la Régularisation L1 ou L2qui réduit le poids des neurones en adaptant la fonction de perte. Dans le cas de Dropout la réduction de la complexité se fait par un processus d'exclusion aléatoire de neurones individuels. Bien que la régularisation soit particulièrement importante pour les réseaux neuronaux, son application à d'autres modèles est également possible dans certaines circonstances.

Outre ces catégories plutôt générales, il est également possible d'attribuer des hyperparamètres très spécifiques à certains algorithmes :

Quelles sont les techniques utilisées ?

Il existe en principe deux manières différentes de procéder à un réglage des hyperparamètres : Pour réglage manuel différentes expériences sont menées en tenant compte des différents hyperparamètres. La comparaison des résultats et des rapports de performance respectifs conduit finalement à la sélection de paramètres. Un exemple typique est la recherche manuelle, dans laquelle les data scientists sélectionnent et ajustent les valeurs de manière intuitive ou basée sur l'expérience.

Le site tuning automatisé se caractérise en revanche par l'utilisation de différents algorithmes qui doivent calculer une combinaison optimale d'hyperparamètres. La présélection, du moins, se fait ici aussi manuellement. Grâce aux algorithmes, le degré de contrôlabilité est un peu plus faible, mais cela vaut également pour le temps et les efforts nécessaires. Les techniques suivantes sont particulièrement adaptées à cet effet :

Recherche aléatoire

Le site Le nom est tout un programme. Une sélection aléatoire de valeurs est effectuée à partir d'une distribution statistique prédéfinie pour les différents hyperparamètres. Les configurations qui en découlent servent à l'entraînement du modèle, qui subit en même temps une évaluation par différentes métriques d'évaluation. Cela constitue la base d'adaptations continues. Grâce à la sélection aléatoire, le processus nécessite moins de calculs que d'autres méthodes. Les résultats sont néanmoins impressionnants.

Recherche de grilles

Pour essayer le plus grand nombre possible de combinaisons de valeurs de paramètres différentes, il est intéressant de les représenter dans une grille (grid). Celle-ci est systématiquement explorée jusqu'à ce que des paramètres de la qualité souhaitée soient identifiés. Comme il est possible de traiter une grille prédéfinie jusqu'à ce qu'elle soit entièrement épuisée, il est possible de générer des réglages particulièrement performants. Cela implique toutefois une intensité de calcul correspondante.

Optimisation bayésienne

Cette technique est basée sur le théorème de Bayes, également utilisé dans Naive-Bayes-est utilisée pour les classificateurs. L'hypothèse de base est d'abord une fonction aléatoire qui doit se rapprocher continuellement de l'optimum, c'est-à-dire de l'hyperparamètre idéal Setting. Une fonction d'acquisition aide à choisir les configurations appropriées, en arbitrant entre l'exploration et l'utilisation de l'espace de recherche. Des évaluations itératives de la performance fonctionnelle produisent alors des données qui sont utilisées pour les ajustements du modèle de probabilité.

Optimisation de l'évolution

Les algorithmes dits évolutionnaires s'inspirent des principes darwiniens et sont donc particulièrement adaptés aux problèmes d'optimisation. Lorsqu'ils sont appliqués au réglage des hyperparamètres, les programmes forment des populations de réglages possibles. Par mutation, combinaison et sélection, on obtient ensuite un ensemble d'hyperparamètres progressivement amélioré. Les configurations qui ne correspondent pas à la Fitness sont en revanche progressivement éliminés.

Évaluer la performance avec la validation croisée

Dans le cadre de l'ajustement des hyperparamètres, la question la plus complexe consiste à décider d'une adaptation particulière du modèle. Outre les techniques présentées, une partie du processus consiste donc à comparer différentes configurations afin d'évaluer la performance du modèle pour des données non vues. Un overfitting aurait une influence négative sur la précision et la flexibilité ultérieures. Pour éviter cela, on a souvent recours à la technique de rééchantillonnage Cross Validation. L'ensemble de données utilisé est alors transformé de manière à ce qu'il se rapproche de nouvelles données. 

Cela se fait typiquement par un splitting en k (nombre) sous-ensembles différents (k-folds). Pour chaque fold, le modèle est entraîné à tour de rôle et comparé à un ensemble séparé pour validation. Pour évaluer la performance, on utilise finalement des moyennes itératives de métriques comme le Score F1. Le processus peut être répété pour autant d'hyperparamètres que nécessaire. Ce n'est que lorsque les data scientists et les experts en apprentissage automatique sont satisfaits des résultats que le modèle est prêt pour la phase d'entraînement proprement dite avec un ensemble de données plus important.

fold values en cross validation
Répartition des ensembles de formation et de validation. k=5 ou 10 folds sont considérés comme habituels. Source : Validation croisée

Défis à relever

Le réglage des hyperparamètres est un processus extrêmement complexe qui nécessite des algorithmes spécialisés et un haut niveau d'expertise dans leur sélection et leur application. Même les data scientists expérimentés se heurtent régulièrement à des défis importants. Parmi ceux-ci, l'équilibre entre l'adaptation et la généralisation est une fois de plus le problème clé typique de l'apprentissage automatique.

les défis du réglage des hyperparamètres avant la formation

Overfitting et overengineering

Avec toutes les innombrables possibilités d'adaptation, il peut facilement arriver que l'on exagère avec le tuning. Cela entrave la généralisation de deux manières : d'une part, un trop grand nombre d'itérations peut entraîner une suradaptation à un petit ensemble de données, voire à un fold. D'autre part, des réglages trop différenciés conduisent à une flexibilité réduite dans l'application ultérieure. Un dépassement autonome des hyperparamètres gênants par le modèle lui-même n'est par définition pas possible.

Espace de recherche et ressources

Pour bon nombre des techniques utilisées, les calculs nécessitent une grande puissance de calcul. Celle-ci augmente linéairement avec la taille de l'espace de recherche analysé, qui détermine à son tour la qualité des résultats. C'est la raison pour laquelle le Grid Search, par exemple, avec sa vaste représentation en grille, est une technique très efficace mais aussi très chère. En revanche, les recherches manuelles ou aléatoires présentent à peu près le meilleur "rapport qualité-prix".

Dépendances

De nombreux hyperparamètres ne peuvent pas être considérés et optimisés de manière totalement différenciée. Au lieu de cela, il y a souvent une influence mutuelle lorsqu'on essaie d'ajuster un paramètre individuel. En particulier en ce qui concerne les réseaux neuronaux, ces interdépendances sont devenues plus complexes. Les neurones et les couches sont par exemple influencés par la régularisation, notamment le dropout, car le réseau est réduit dans l'espace. Cela illustre une fois de plus la nécessité d'une expertise, d'une expérience et d'une intuition élevées.

Quels sont les avantages du réglage des hyperparamètres ?

Le choix et le réglage des hyperparamètres appropriés ont sans aucun doute une influence déterminante sur la performance attendue du modèle. Cela se traduit par exemple par une Étude des chercheurs saoudiens Hoque et Aljamaan (2021) : À l'aide d'un Tests de Wilcoxon ils ont comparé la précision des prédictions des modèles d'apprentissage automatique concernant les cours des actions - en partie avec et en partie sans réglage. Résultat : des prévisions nettement plus précises après ajustement préalable des hyperparamètres. Mais : à la base, il y avait un jeu de données de haute qualité, qui a été comparé avec la Technique de la fenêtre coulissante a été adapté à grands frais.

Une autre Étude (Weegar et alt. 2016) souligne l'importance de ce processus. Même la plus simple modification de caractéristiques dans l'ensemble de données a conduit à la surperformance de modèles prétendument meilleurs. En fin de compte, même l'hyperparamètre tuning le plus complexe n'arrive pas à dépasser l'importance de données judicieusement structurées et adaptées. Ce qui compte, c'est le contenu informatif et les relations qu'un modèle d'apprentissage automatique doit reconnaître lors de l'entraînement. Ce n'est qu'en les combinant que l'on obtient l'utilité finale.

Application de modèles optimisés

Étant donné que l'ajustement des hyperparamètres est un concept fondamental de l'apprentissage automatique, il n'y a pas un seul cas d'utilisation qui mérite d'être souligné. Chaque application d'IA nécessite la mise en œuvre de modèles fonctionnels finement adaptés. Sur le Konfuzio-Marché on en trouve un grand nombre, déjà réglés, formés et prêts à l'emploi. Les possibilités d'utilisation spécifiques à la branche vont de RNE médical sur Exposés des biens immobiliers jusqu'à Décomptes de titres.

Nos experts se sont chargés de trouver les hyperparamètres adéquats.

Inscrivez-vous maintenant et testez gratuitement

Conclusion

La mise en place des bons paramètres est la base indispensable de tout projet technologique. Dans le domaine du Machine Learning, ce processus est connu sous le nom d'Hyperparameter Tuning. L'accent est mis sur les propriétés qui ne peuvent plus être modifiées au cours d'un processus d'apprentissage. Cela concerne par exemple le taux d'apprentissage, le nombre de neurones ou la taille du lot. Outre l'adaptation manuelle, les techniques typiques sont par exemple la recherche en grille ou l'optimisation bayésienne.

Quelle que soit la méthode utilisée concrètement, un haut niveau d'expérience et d'expertise des data scientists est toujours requis. Cela se répercute également sur la qualité de la base de données utilisée lors de la formation, qui détermine fortement la performance réalisable. L'utilisation de plateformes d'IA adaptées, telles que Konfuzio, est particulièrement indiquée lorsque ces ressources ne sont pas disponibles.

Vous souhaitez optimiser vos propres modèles d'IA ? N'hésitez pas à nous envoyer un message. Nos experts se feront un plaisir de vous répondre.

    À propos de moi

    Autres grands articles

    La main tape sur la tablette, inscription Invoice, numériser les factures

    Numériser des factures avec l'OCR KI - Avantages dans l'application

    Les piles de factures et de documents papier peuvent être rapidement et facilement évitées si vous numérisez les factures. Une gestion professionnelle des documents devrait être...

    Lire l'article
    titres d'automation légale

    L'automatisation juridique : la clé de l'efficacité dans le secteur juridique

    Legal Automation offre une possibilité d'automatisation qui remplace les aspects manuels du travail juridique par des technologies intelligentes. Dans cet article,...

    Lire l'article
    Trafic de nuit

    Traitement automatisé des documents

    Pourquoi les entreprises traitent-elles les documents avec l'IA ? Aujourd'hui, les données sont considérées comme l'une des ressources les plus précieuses au monde. En revanche, les...

    Lire l'article
    Arrow-up