Ultralytics YOLO27 :
IA visuelle

Qu’est-ce que l’optimisation de modèle ? Petit guide

Découvre comment des techniques d’optimisation de modèles comme le réglage des hyperparamètres, l’élagage et la quantification peuvent améliorer l’efficacité d’exécution des modèles de vision par ordinateur.

ABAbirami Vina10 min de lecture
Techniques d’optimisation des modèles de vision par ordinateur

L’optimisation de modèle vise à améliorer l’efficacité et les performances des modèles d’apprentissage automatique. En affinant la structure et le fonctionnement d’un modèle, l’optimisation lui permet d’obtenir de meilleurs résultats avec un minimum de ressources de calcul et en réduisant le temps d’entraînement et d’évaluation.

Ce processus est particulièrement important dans des domaines comme la vision par ordinateur, où les modèles nécessitent souvent des ressources considérables pour analyser des images complexes. Dans des environnements aux ressources limitées, comme les appareils mobiles ou les systèmes en périphérie, les modèles optimisés peuvent fonctionner efficacement avec peu de ressources tout en restant précis.

Plusieurs techniques sont couramment utilisées pour optimiser les modèles, notamment le réglage des hyperparamètres, l’élagage de modèles, la quantification de modèles et la précision mixte. Dans cet article, nous allons explorer ces techniques et les avantages qu’elles apportent aux applications de vision par ordinateur. C’est parti !

Comprendre l’optimisation de modèle#

Les modèles de vision par ordinateur possèdent généralement des couches profondes et des structures complexes, idéales pour reconnaître des motifs complexes dans les images, mais qui peuvent aussi être très exigeantes en puissance de calcul. Lorsque ces modèles sont déployés sur des appareils dotés de capacités matérielles limitées, comme les téléphones mobiles ou les appareils en périphérie, ils peuvent rencontrer certaines difficultés ou limites.

La faible puissance de calcul, la mémoire limitée et les contraintes énergétiques de ces appareils peuvent entraîner une baisse notable des performances, car les modèles ont du mal à suivre. Les techniques d’optimisation de modèle sont essentielles pour résoudre ces problèmes. Elles permettent d’alléger le modèle, de réduire ses besoins en calcul et de garantir son bon fonctionnement même avec des ressources limitées. L’optimisation de modèle peut passer par la simplification de l’architecture du modèle, la réduction de la précision des calculs ou la suppression de composants inutiles afin d’alléger et d’accélérer le modèle.

Schéma des raisons d’optimiser tes modèles

Fig. 1. Raisons d’optimiser tes modèles. Image de l’auteur.

Voici quelques-unes des techniques d’optimisation de modèles les plus courantes, que nous examinerons plus en détail dans les sections suivantes :

  • Réglage des hyperparamètres : cette méthode consiste à ajuster systématiquement les hyperparamètres, comme le taux d’apprentissage et la taille de lot, afin d’améliorer les performances du modèle.
  • Élagage de modèle : cette technique supprime les poids et les connexions inutiles du réseau neuronal, ce qui en réduit la complexité et le coût de calcul.
  • Quantification de modèle : la quantification consiste à réduire la précision des poids et des activations du modèle, généralement de 32 bits à 16 ou 8 bits, ce qui diminue considérablement son empreinte mémoire et ses besoins en calcul.
  • Ajustement de la précision : également appelé entraînement à précision mixte, il consiste à utiliser différents formats de précision pour différentes parties du modèle et à optimiser l’utilisation des ressources sans compromettre la précision.

Explication des hyperparamètres dans les modèles d’apprentissage automatique#

Tu peux aider un modèle à apprendre et à mieux fonctionner en réglant ses hyperparamètres, c’est-à-dire les paramètres qui déterminent comment il apprend à partir des données. Le réglage des hyperparamètres est une technique qui permet d’optimiser ces paramètres et d’améliorer l’efficacité et la précision du modèle. Contrairement aux paramètres que le modèle apprend pendant l’entraînement, les hyperparamètres sont des valeurs prédéfinies qui guident le processus d’entraînement.

Voyons quelques exemples d’hyperparamètres que tu peux régler :

  • Taux d’apprentissage : ce paramètre détermine la taille des pas effectués par le modèle pour ajuster ses poids internes. Un taux d’apprentissage plus élevé peut accélérer l’apprentissage, mais risque de faire manquer la solution optimale ; un taux plus faible peut donner des résultats plus précis, mais prend plus de temps.
  • Taille de lot : elle définit le nombre d’échantillons de données traités à chaque étape d’entraînement. Les lots plus grands assurent un apprentissage plus stable, mais nécessitent davantage de mémoire. Les lots plus petits accélèrent l’entraînement, mais peuvent être moins stables.
  • Époques : ce paramètre permet de déterminer combien de fois le modèle parcourt l’intégralité du jeu de données. Un plus grand nombre d’époques peut améliorer la précision, mais comporte un risque de surapprentissage.
  • Taille du noyau : elle définit la taille du filtre dans les réseaux neuronaux convolutifs (CNNs). Les noyaux plus grands capturent des motifs plus étendus, mais nécessitent davantage de calcul ; les noyaux plus petits se concentrent sur des détails plus fins.

Fonctionnement du réglage des hyperparamètres#

Le réglage des hyperparamètres commence généralement par la définition d’une plage de valeurs possibles pour chaque hyperparamètre. Un algorithme de recherche explore ensuite différentes combinaisons dans ces plages afin de trouver les paramètres qui offrent les meilleures performances.

Parmi les méthodes de réglage courantes, on trouve la recherche par grille, la recherche aléatoire et l’optimisation bayésienne. La recherche par grille teste toutes les combinaisons de valeurs possibles dans les plages spécifiées. La recherche aléatoire sélectionne les combinaisons au hasard et trouve souvent plus rapidement des paramètres efficaces. L’optimisation bayésienne utilise un modèle probabiliste pour prédire les valeurs d’hyperparamètres prometteuses à partir des résultats précédents. Cette méthode réduit généralement le nombre d’essais nécessaires.

Enfin, les performances du modèle sont évaluées pour chaque combinaison d’hyperparamètres. Le processus est répété jusqu’à l’obtention des résultats souhaités.

Hyperparamètres et paramètres du modèle#

Lorsque tu règles les hyperparamètres, tu peux te demander quelle est la différence entre les hyperparamètres et les paramètres du modèle.

Les hyperparamètres sont des valeurs définies avant l’entraînement qui contrôlent la façon dont le modèle apprend, comme le taux d’apprentissage ou la taille de lot. Ces paramètres restent fixes pendant l’entraînement et influencent directement le processus d’apprentissage. En revanche, les paramètres du modèle sont appris par le modèle lui-même pendant l’entraînement. Ils comprennent les poids et les biais, qui évoluent pendant l’entraînement du modèle et guident finalement ses prédictions. En bref, les hyperparamètres déterminent le parcours d’apprentissage, tandis que les paramètres du modèle sont le résultat de ce processus.

Comparaison des paramètres et des hyperparamètres

Fig. 2. Comparaison des paramètres et des hyperparamètres.

Pourquoi l’élagage de modèle est important en apprentissage profond#

L’élagage de modèle est une technique de réduction de taille qui supprime les poids et les paramètres inutiles d’un modèle afin de le rendre plus efficace. En vision par ordinateur, en particulier avec les réseaux neuronaux profonds, un grand nombre de paramètres, comme les poids et les activations (des sorties intermédiaires qui aident à calculer la sortie finale), peuvent accroître la complexité et les besoins en calcul. L’élagage simplifie le modèle en repérant et en supprimant les paramètres qui contribuent peu aux performances, ce qui donne un modèle plus léger et plus efficace.

Réseau neuronal avant et après l’élagage de modèle

Fig. 3. Avant et après l’élagage de modèle.

Une fois le modèle entraîné, des techniques comme l’élagage fondé sur l’amplitude ou l’analyse de sensibilité permettent d’évaluer l’importance de chaque paramètre. Les paramètres peu importants sont ensuite élagués selon l’une des trois principales techniques : l’élagage des poids, l’élagage des neurones ou l’élagage structuré.

L’élagage des poids supprime les connexions individuelles qui ont un effet minime sur la sortie. L’élagage des neurones supprime des neurones entiers dont les sorties contribuent peu au fonctionnement du modèle. L’élagage structuré élimine des sections plus importantes, comme les filtres de convolution ou les neurones des couches entièrement connectées, afin d’optimiser l’efficacité du modèle. Une fois l’élagage terminé, le modèle est réentraîné pour affiner les paramètres restants et garantir qu’il conserve une grande précision sous une forme réduite.

Réduire la latence des modèles d’IA grâce à la quantification#

La quantification de modèle réduit le nombre de bits utilisés pour représenter les poids et les activations d’un modèle. Elle convertit généralement les valeurs en virgule flottante de haute précision sur 32 bits en valeurs de précision inférieure, comme des entiers sur 16 ou 8 bits. En réduisant la précision en bits, la quantification diminue considérablement la taille du modèle, son empreinte mémoire et son coût de calcul.

En vision par ordinateur, les nombres à virgule flottante sur 32 bits sont courants, mais le passage à 16 ou 8 bits peut améliorer l’efficacité. Il existe deux principaux types de quantification : la quantification des poids et celle des activations. La quantification des poids réduit la précision des poids du modèle, équilibrant ainsi la réduction de taille et la précision. La quantification des activations réduit la précision des activations, ce qui diminue encore les besoins en mémoire et en calcul.

Quantification d’un flottant 32 bits en entier 8 bits

Fig. 4 Exemple de quantification d’un flottant 32 bits en entier 8 bits.

Comment la précision mixte accélère les inférences en IA#

La précision mixte est une technique qui utilise différentes précisions numériques pour diverses parties d’un réseau neuronal. En combinant des valeurs de précision supérieure, telles que des nombres flottants sur 32 bits, avec des valeurs de précision inférieure, comme des nombres flottants sur 16 ou 8 bits, la précision mixte permet aux modèles de vision par ordinateur d’accélérer l’entraînement et de réduire l’utilisation de la mémoire sans sacrifier la précision.

Pendant l’entraînement, la précision mixte consiste à utiliser une précision inférieure dans certaines couches tout en conservant une précision supérieure aux endroits où elle est nécessaire dans le réseau. Pour cela, on utilise le transtypage et la mise à l’échelle de la perte. Le transtypage convertit les types de données entre différentes précisions selon les besoins du modèle. La mise à l’échelle de la perte ajuste la précision réduite pour éviter le sous-dépassement numérique et garantir un entraînement stable. La précision mixte est particulièrement utile pour les grands modèles et les grandes tailles de lot.

Entraînement en précision mixte utilisant les types à virgule flottante FP16 et FP32

Fig. 5 L’entraînement en précision mixte utilise des types à virgule flottante 16 bits (FP16) et 32 bits (FP32).

Équilibrer la précision et l’efficacité des modèles#

Maintenant que nous avons passé en revue plusieurs techniques d’optimisation des modèles, voyons comment choisir celle qui répond à tes besoins spécifiques. Le choix dépend de facteurs tels que le matériel disponible, les contraintes de calcul et de mémoire de l’environnement de déploiement, ainsi que le niveau de précision requis.

Par exemple, les modèles plus petits et plus rapides conviennent mieux aux appareils mobiles aux ressources limitées, tandis que les modèles plus grands et plus précis peuvent être utilisés sur des systèmes hautes performances. Voici comment chaque technique s’accorde avec différents objectifs :

  • Élagage : idéal pour réduire la taille du modèle sans nuire considérablement à sa précision, ce qui en fait une solution parfaite pour les appareils aux ressources limitées, comme les téléphones mobiles ou les appareils de l’Internet des objets (IoT).
  • Quantification : une excellente option pour réduire la taille du modèle et accélérer l’inférence, en particulier sur les appareils mobiles et les systèmes embarqués disposant de peu de mémoire et de puissance de calcul. Elle convient bien aux applications qui tolèrent de légères baisses de précision.
  • Précision mixte : conçue pour les modèles à grande échelle, cette technique réduit l’utilisation de la mémoire et accélère l’entraînement sur du matériel comme les GPU et les TPU qui prennent en charge les opérations en précision mixte. Elle est souvent utilisée pour des tâches hautes performances où l’efficacité est importante.
  • Réglage des hyperparamètres : bien que gourmand en calcul, il est essentiel pour les applications qui exigent une grande précision, comme l’imagerie médicale ou la conduite autonome.

Points clés à retenir#

L’optimisation des modèles est un aspect essentiel de l’apprentissage automatique, en particulier pour déployer l’IA dans des applications concrètes. Des techniques comme le réglage des hyperparamètres, l’élagage des modèles, la quantification et la précision mixte contribuent à améliorer les performances, l’efficacité et l’utilisation des ressources des modèles de vision par ordinateur. Ces optimisations rendent les modèles plus rapides et moins gourmands en ressources, ce qui est idéal pour les appareils disposant de peu de mémoire et de puissance de calcul. Les modèles optimisés sont également plus faciles à mettre à l’échelle et à déployer sur différentes plateformes, ce qui permet de créer des solutions d’IA efficaces et adaptables à un large éventail d’utilisations.

Visite le dépôt GitHub d’Ultralytics et rejoins notre communauté pour en savoir plus sur les applications de l’IA dans l’industrie manufacturière et l’agriculture.

Explore solutions

Vision par ordinateur pour les images aériennes

Vision par ordinateur pour les images aériennes

Transforme les images de drones et les prises de vue aériennes en informations exploitables en temps réel pour l’agriculture, l’aquaculture, la surveillance environnementale, la conservation et l’analyse géospatiale avec Ultralytics YOLO.
En savoir plus
Vision par ordinateur dans l’aérospatiale

Vision par ordinateur dans l’aérospatiale

Déploie l’IA visuelle pour la surveillance aérienne avec les modèles Ultralytics YOLO. Donne de la puissance aux drones, aux workflows aéronautiques, à la conservation de l’environnement et aux secteurs géospatiaux grâce à des solutions de vision par ordinateur.
En savoir plus
La vision par ordinateur dans la sécurité

La vision par ordinateur dans la sécurité

Protège chaque site avec les modèles Ultralytics YOLO. L’IA visuelle permet la surveillance des périmètres, la détection des menaces, la reconnaissance des plaques d’immatriculation et la sécurité au travail.
En savoir plus
La vision par ordinateur en robotique

La vision par ordinateur en robotique

Donne plus de capacités à tes machines grâce aux modèles Ultralytics YOLO. Dans la robotique, l’IA visuelle permet la navigation autonome, la perception, le suivi des objets et le contrôle en temps réel.
En savoir plus
La vision par ordinateur dans la logistique

La vision par ordinateur dans la logistique

Optimise la logistique avec les modèles Ultralytics YOLO. La vision par IA permet d’inspecter les colis, de les trier, de suivre les véhicules et de surveiller la sécurité des entrepôts en temps réel.
En savoir plus
La vision par ordinateur dans le commerce de détail

La vision par ordinateur dans le commerce de détail

Réinvente le commerce de détail avec les modèles Ultralytics YOLO. La vision par IA permet de suivre les stocks, de surveiller les rayons, de gérer les files d’attente et de mieux comprendre les clients.
En savoir plus
La vision par ordinateur dans le secteur de la santé

La vision par ordinateur dans le secteur de la santé

Crée des solutions de santé avec les modèles Ultralytics YOLO. La vision par IA dans le secteur de la santé accélère l’imagerie médicale, améliore les diagnostics et facilite la surveillance des patients.
En savoir plus
La vision par ordinateur dans l’industrie manufacturière

La vision par ordinateur dans l’industrie manufacturière

Optimise la fabrication avec les modèles Ultralytics YOLO. La vision par IA améliore le contrôle qualité, la détection des défauts, le respect des règles concernant les EPI et l’automatisation des chaînes de montage.
En savoir plus
La vision par ordinateur dans l’automobile

La vision par ordinateur dans l’automobile

Mets la vision par ordinateur au service de l’automobile avec les modèles Ultralytics YOLO. La vision par IA renforce la sécurité routière, l’aide à la conduite et l’automatisation des véhicules pour des routes plus intelligentes.
En savoir plus
Vision par ordinateur dans l’agriculture

Vision par ordinateur dans l’agriculture

Fais entrer l’IA de vision dans l’agriculture intelligente avec les modèles Ultralytics YOLO. Optimise le suivi des cultures et du bétail ainsi que l’agriculture de précision pour obtenir des rendements plus élevés et plus intelligents.
En savoir plus
Vision par ordinateur pour les images aériennes

Vision par ordinateur pour les images aériennes

Transforme les images de drones et les prises de vue aériennes en informations exploitables en temps réel pour l’agriculture, l’aquaculture, la surveillance environnementale, la conservation et l’analyse géospatiale avec Ultralytics YOLO.
En savoir plus
Vision par ordinateur dans l’aérospatiale

Vision par ordinateur dans l’aérospatiale

Déploie l’IA visuelle pour la surveillance aérienne avec les modèles Ultralytics YOLO. Donne de la puissance aux drones, aux workflows aéronautiques, à la conservation de l’environnement et aux secteurs géospatiaux grâce à des solutions de vision par ordinateur.
En savoir plus
La vision par ordinateur dans la sécurité

La vision par ordinateur dans la sécurité

Protège chaque site avec les modèles Ultralytics YOLO. L’IA visuelle permet la surveillance des périmètres, la détection des menaces, la reconnaissance des plaques d’immatriculation et la sécurité au travail.
En savoir plus
La vision par ordinateur en robotique

La vision par ordinateur en robotique

Donne plus de capacités à tes machines grâce aux modèles Ultralytics YOLO. Dans la robotique, l’IA visuelle permet la navigation autonome, la perception, le suivi des objets et le contrôle en temps réel.
En savoir plus
La vision par ordinateur dans la logistique

La vision par ordinateur dans la logistique

Optimise la logistique avec les modèles Ultralytics YOLO. La vision par IA permet d’inspecter les colis, de les trier, de suivre les véhicules et de surveiller la sécurité des entrepôts en temps réel.
En savoir plus
La vision par ordinateur dans le commerce de détail

La vision par ordinateur dans le commerce de détail

Réinvente le commerce de détail avec les modèles Ultralytics YOLO. La vision par IA permet de suivre les stocks, de surveiller les rayons, de gérer les files d’attente et de mieux comprendre les clients.
En savoir plus
La vision par ordinateur dans le secteur de la santé

La vision par ordinateur dans le secteur de la santé

Crée des solutions de santé avec les modèles Ultralytics YOLO. La vision par IA dans le secteur de la santé accélère l’imagerie médicale, améliore les diagnostics et facilite la surveillance des patients.
En savoir plus
La vision par ordinateur dans l’industrie manufacturière

La vision par ordinateur dans l’industrie manufacturière

Optimise la fabrication avec les modèles Ultralytics YOLO. La vision par IA améliore le contrôle qualité, la détection des défauts, le respect des règles concernant les EPI et l’automatisation des chaînes de montage.
En savoir plus
La vision par ordinateur dans l’automobile

La vision par ordinateur dans l’automobile

Mets la vision par ordinateur au service de l’automobile avec les modèles Ultralytics YOLO. La vision par IA renforce la sécurité routière, l’aide à la conduite et l’automatisation des véhicules pour des routes plus intelligentes.
En savoir plus
Vision par ordinateur dans l’agriculture

Vision par ordinateur dans l’agriculture

Fais entrer l’IA de vision dans l’agriculture intelligente avec les modèles Ultralytics YOLO. Optimise le suivi des cultures et du bétail ainsi que l’agriculture de précision pour obtenir des rendements plus élevés et plus intelligents.
En savoir plus
Vision par ordinateur pour les images aériennes

Vision par ordinateur pour les images aériennes

Transforme les images de drones et les prises de vue aériennes en informations exploitables en temps réel pour l’agriculture, l’aquaculture, la surveillance environnementale, la conservation et l’analyse géospatiale avec Ultralytics YOLO.
En savoir plus
Vision par ordinateur dans l’aérospatiale

Vision par ordinateur dans l’aérospatiale

Déploie l’IA visuelle pour la surveillance aérienne avec les modèles Ultralytics YOLO. Donne de la puissance aux drones, aux workflows aéronautiques, à la conservation de l’environnement et aux secteurs géospatiaux grâce à des solutions de vision par ordinateur.
En savoir plus
La vision par ordinateur dans la sécurité

La vision par ordinateur dans la sécurité

Protège chaque site avec les modèles Ultralytics YOLO. L’IA visuelle permet la surveillance des périmètres, la détection des menaces, la reconnaissance des plaques d’immatriculation et la sécurité au travail.
En savoir plus
La vision par ordinateur en robotique

La vision par ordinateur en robotique

Donne plus de capacités à tes machines grâce aux modèles Ultralytics YOLO. Dans la robotique, l’IA visuelle permet la navigation autonome, la perception, le suivi des objets et le contrôle en temps réel.
En savoir plus
La vision par ordinateur dans la logistique

La vision par ordinateur dans la logistique

Optimise la logistique avec les modèles Ultralytics YOLO. La vision par IA permet d’inspecter les colis, de les trier, de suivre les véhicules et de surveiller la sécurité des entrepôts en temps réel.
En savoir plus
La vision par ordinateur dans le commerce de détail

La vision par ordinateur dans le commerce de détail

Réinvente le commerce de détail avec les modèles Ultralytics YOLO. La vision par IA permet de suivre les stocks, de surveiller les rayons, de gérer les files d’attente et de mieux comprendre les clients.
En savoir plus
La vision par ordinateur dans le secteur de la santé

La vision par ordinateur dans le secteur de la santé

Crée des solutions de santé avec les modèles Ultralytics YOLO. La vision par IA dans le secteur de la santé accélère l’imagerie médicale, améliore les diagnostics et facilite la surveillance des patients.
En savoir plus
La vision par ordinateur dans l’industrie manufacturière

La vision par ordinateur dans l’industrie manufacturière

Optimise la fabrication avec les modèles Ultralytics YOLO. La vision par IA améliore le contrôle qualité, la détection des défauts, le respect des règles concernant les EPI et l’automatisation des chaînes de montage.
En savoir plus
La vision par ordinateur dans l’automobile

La vision par ordinateur dans l’automobile

Mets la vision par ordinateur au service de l’automobile avec les modèles Ultralytics YOLO. La vision par IA renforce la sécurité routière, l’aide à la conduite et l’automatisation des véhicules pour des routes plus intelligentes.
En savoir plus
Vision par ordinateur dans l’agriculture

Vision par ordinateur dans l’agriculture

Fais entrer l’IA de vision dans l’agriculture intelligente avec les modèles Ultralytics YOLO. Optimise le suivi des cultures et du bétail ainsi que l’agriculture de précision pour obtenir des rendements plus élevés et plus intelligents.
En savoir plus

Construisons ensemble l’avenir de l’IA !

Commence ton parcours vers l’avenir de l’apprentissage automatique