Optimisez les modèles d'IA avec l'élagage : réduisez la complexité, augmentez l'efficacité et déployez plus rapidement sur les périphériques sans sacrifier les performances.
L'élagage est une technique d'optimisation de modèle utilisée pour réduire la taille et la complexité informatique d'un réseau neuronal (RN) formé. Le processus consiste à identifier et à supprimer les paramètres (poids) ou structures (neurones, canaux ou couches) redondants ou moins importants du modèle. L'objectif est de créer un modèle plus petit, plus rapide et plus économe en énergie qui conserve un niveau de précision comparable à l'original. Cet aspect est particulièrement important pour le déploiement de modèles d'intelligence artificielle complexes dans des environnements aux ressources limitées, tels que les appareils périphériques.
Les techniques d'élagage peuvent être classées en plusieurs catégories en fonction de ce qui est retiré du réseau :
Les principaux cadres d'apprentissage automatique tels que PyTorch et TensorFlow proposent des utilitaires intégrés et des didacticiels pour la mise en œuvre de l'élagage.
L'élagage est essentiel pour déployer des modèles d'IA puissants dans des scénarios pratiques où les ressources informatiques sont limitées.
L'élagage est l'une des nombreuses techniques d'optimisation des modèles et est souvent utilisé avec d'autres. Il est important de la distinguer des concepts apparentés :
Ces techniques ne s'excluent pas mutuellement. Un flux de travail courant consiste d'abord à élaguer un modèle pour supprimer les paramètres redondants, puis à appliquer la quantification au modèle élagué pour une efficacité maximale. Les modèles optimisés peuvent ensuite être exportés dans des formats standards comme ONNX en utilisant la fonction d'exportation d'Ultralytics pour un large déploiement dans différents moteurs d'inférence. Des plateformes comme Ultralytics HUB peuvent aider à gérer l'ensemble du cycle de vie, de l'entraînement au déploiement de modèles optimisés.
Comment fonctionne l'élagage
Le processus d'élagage commence généralement après qu'un modèle d'apprentissage profond a été entièrement formé. Il fonctionne sur le principe que de nombreux grands modèles sont sur-paramétrés, ce qui signifie qu'ils contiennent de nombreux poids et neurones qui contribuent très peu à la prédiction finale. Une méthode courante pour identifier ces composants sans importance consiste à analyser leur magnitude ; les paramètres dont les valeurs sont proches de zéro sont considérés comme moins significatifs. Une fois identifiés, ces paramètres sont supprimés ou mis à zéro. Après le processus d'élagage, le réseau désormais plus petit subit généralement un réglage fin, qui consiste à réentraîner le modèle pendant quelques époques supplémentaires. Cette étape permet aux paramètres restants de s'adapter aux changements architecturaux et de récupérer les performances qui ont pu être perdues lors de l'élagage. Ce processus itératif d'élagage et de réglage fin peut être répété pour atteindre l'équilibre souhaité entre la taille du modèle et les performances, comme le décrivent des documents de recherche fondamentaux tels que"Deep Compression".