137% d'accélération YOLOv3, 10 fois l'amélioration des performances de recherche! Baidu Flying Paddle lance un artefact de compression de modèle

Yunzhong depuis le temple d'Aofei Qubit Edit | Numéro public QbitAI

Le modèle d'apprentissage en profondeur est compressé et l'arme est libérée.

Les dernières nouvelles, après quatre ans de polissage, Baidu a lancé le dernier outil de compression de modèle d'apprentissage en profondeur PaddleSlim1.0 .

Il comprend non seulement la quantification, la personnalisation, la distillation, la recherche de structure de modèle, la recherche de matériel de modèle et d'autres méthodes couramment utilisées dans la compression de modèle d'apprentissage en profondeur.

Il est également appliqué au SDK pour le visage de Baidu, qui peut être implémenté sur des appareils intégrés pour terminer le processus complet de détection, de suivi, de détection de corps vivant et de reconnaissance du visage en 0,3 seconde.

Figure 1 Terminal de reconnaissance faciale Baidu Gecko

Pour le déploiement de puissants réseaux de neurones profonds sur des appareils mobiles embarqués, ainsi que divers scénarios industriels, de telles fonctionnalités ont fourni de grands avantages, et sont également les exigences essentielles des applications industrielles actuelles des algorithmes d'apprentissage en profondeur.

Mais pour PaddleSlim1.0, ce n'est qu'une de ses dernières fonctionnalités.

Par rapport à la version initiale du premier trimestre de 2019, PaddleSlim s'est considérablement amélioré en termes de facilité d'utilisation, d'adaptation des modèles, de déploiement côté extrémité et d'amélioration des performances.

La manifestation principale réside dans les dix caractéristiques suivantes.

Adresse du projet PaddleSlimV1.0: https://github.com/PaddlePaddle/PaddleSlim

1. Personnalisez le schéma de distillation YOLO, actualisez la précision de la tâche de détection COCO

La distillation de modèle consiste à extraire des informations utiles d'un réseau complexe et à les déplacer vers un réseau plus petit, de manière à économiser les ressources informatiques. PaddleSlim 1.0 prend en charge la méthode de distillation traditionnelle et la méthode de distillation basée sur FSP (Flow of Solution Procedure), et prend également en charge la stratégie de distillation à perte personnalisée pour différentes tâches.

Dans la tâche de classification d'ImageNet, la précision de MobileNetV2 a encore été améliorée de 2,1%. De plus, PaddleSlim1.0 a également combiné avec Paddle Detection pour développer un schéma de distillation pour les modèles de la série YOLO, qui a amélioré la précision des données de détection de cible COCO de plus de 2%.

Tableau 1 Quelques résultats expérimentaux de la stratégie de distillation

2. Basé sur le modèle de détection de cible de coupe sans perte de sensibilité, la précision ne diminue pas mais augmente après la coupe

Afin de maximiser l'effet d'élagage du modèle, PaddleSlim a implémenté la solution d'élagage basée sur la sensibilité de la structure du réseau dans la version précédente. PaddleSlim 1.0 prend en charge le calcul accéléré parallèle multi-machine et multi-thread de la sensibilité du modèle. L'utilisateur peut dessiner le graphique de ligne de sensibilité du modèle à couper en fonction du résultat du calcul, puis sélectionner un ensemble approprié de taux de coupe à partir de celui-ci, ou appeler directement l'interface fournie par PaddleSlim pour générer automatiquement un ensemble approprié de taux de coupe.

Figure 2 Graphique en courbes de sensibilité de la couche de convolution

Le plus gros problème du recadrage de modèle est de trouver avec précision tous les nuds du réseau qui sont liés à la convolution en cours de découpage. L'approche habituelle est de traverser dans une perspective globale, mais l'évolutivité n'est pas forte. PaddleSlim1.0 parcourt du point de vue des nuds de réseau pour trouver tous les nuds liés à la convolution cisaillée, ce qui équivaut à allouer la tâche de traversée de réseaux complexes à différents types de nuds de réseau, améliorant ainsi l'évolutivité Il peut prendre en charge n'importe quel réseau complexe.

Dans les tâches de détection de cible, une grande partie de l'élagage peut être effectuée sans réduire la précision du modèle, mais la précision des tâches individuelles est améliorée après l'élagage.

Tableau 2 Quelques résultats expérimentaux de la méthode de couture basée sur la sensibilité

3. Prend en charge la quantification configurable en réseau, ajoute une quantification hors ligne et augmente la vitesse de prédiction du modèle par multiples

Le but de la quantification à virgule fixe est de quantifier l'opération de nombre à virgule flottante (float32) dans le processus direct du réseau neuronal en une opération entière (int8), afin d'atteindre l'objectif d'accélérer le calcul. PaddleSlim1.0 prend également en charge la quantification configurable en réseau en quantification à virgule fixe, qui peut quantifier le réseau local spécifié par l'utilisateur, c'est-à-dire que la couche sensible continue d'utiliser des calculs en virgule flottante pour réduire la perte de précision.

Afin de réduire les frais généraux de la formation de quantification, PaddleSlim1.0 a également ajouté une fonction de quantification hors ligne, et la plupart des tâches peuvent atteindre une précision de quantification élevée sans formation supplémentaire.

PaddleSlim 1.0 prend en charge la quantification des couches convolutives, des couches entièrement connectées, des couches d'activation, des couches BIAS et d'autres couches non pondérées. Les expériences montrent que la quantification à virgule fixe peut réduire le modèle à environ 1/4 de l'original. Sur la base du cadre de déploiement prédictif Paddle Lite, différents modèles peuvent atteindre une accélération de 1,7 à 2,2 fois.

Tableau 3 Résultats de l'expérience de formation quantitative à point fixe partiel Int8

4. Nouvelle architecture NAS, recherche plus rapide et structure plus flexible

PaddleSlim 1.0 ouvre une API NAS plus flexible, prédéfinie une stratégie de recherche et un espace de recherche plus riches. L'espace de recherche et la stratégie de recherche sont complètement découplés, ce qui est pratique pour les utilisateurs pour étendre la stratégie de recherche et l'espace de recherche.

Au niveau de la stratégie de recherche, la version précédente prend déjà en charge l'algorithme de recuit simulé (SA), qui a une convergence plus rapide et moins d'étapes d'itération que l'algorithme RL traditionnel. Prend en charge la stratégie de recherche distribuée SA pour assurer une accélération linéaire de la vitesse de recherche dans la carte 40GPU.

Cette mise à niveau ajoute la méthode de recherche automatique One-Shot NAS actuellement populaire basée sur HyperNet. Le NAS One-Shot dissocie complètement la formation et la recherche en supernet et peut être appliqué de manière flexible à différentes contraintes. Au cours du processus de formation, la consommation de mémoire est faible, toutes les structures partagent le poids du super réseau et le temps de recherche est considérablement accéléré. En même temps, un algorithme de cohérence de classement auto-supervisé est également développé pour garantir la cohérence des performances du super réseau et les performances finales du modèle.

Au niveau de l'espace de recherche, de nouveaux types d'espaces de recherche tels que MobileNet, ResNet, Inception, etc. sont ajoutés. En même temps, plusieurs types différents de piles d'espace de recherche sont pris en charge pour la recherche. Les utilisateurs peuvent également personnaliser l'espace de recherche.

Figure 3 Principe de recherche de structure de réseau One-Shot

Tableau 4 Avantages de l'accélération de la recherche One-Shot sur les tâches ImageNet

Les résultats expérimentaux montrent que, par rapport à la stratégie de recherche SA à une seule carte, la stratégie One-Shot à une seule carte atteint une vitesse de recherche qui est plus de 10 fois plus rapide.

5. La technologie de recherche de matériel innovante correspond automatiquement au modèle optimal pour différents matériels

En raison des différences entre les différentes architectures matérielles, un lourd travail d'adaptation matérielle est nécessaire manuellement. La recherche matérielle consiste à résoudre le problème de personnalisation de la structure de modèle optimale pour un matériel spécifique pendant le processus d'adaptation matérielle.

Dans le processus de recherche de la structure de modèle optimale, la façon d'obtenir rapidement les performances réelles du modèle sur le matériel est le premier problème à résoudre. Les FLOP traditionnels ne peuvent pas représenter avec précision les performances du modèle sur l'environnement matériel réel. PaddleSlim1.0 prend en charge la recherche de table d'opérateur Une méthode d'estimation du retard du réseau.

Les utilisateurs doivent uniquement établir la table des retards de l'opérateur sur le matériel, et sur la base de la table des retards de l'opérateur, de l'évaluateur de retards du réseau et de la structure du réseau une fois le réseau généré, vous pouvez obtenir rapidement le retard du réseau sur le matériel.

Figure 4 Principe et processus de recherche de matériel SANAS

Tableau 5 Chiffre d'affaires après l'accélération de la recherche matérielle pour chaque plate-forme matérielle (par rapport à MobileNetV2 sur la tâche ImageNet)

Six, nouveau cadre évolutif de distillation des connaissances à grande échelle Panthéon

Prise en charge de la distillation distribuée, pour obtenir une distillation des enseignants et des étudiants sur différents GPU ou différentes machines. Évitez lorsque l'enseignant et l'élève sont trop grands, il ne fonctionnera pas. Sur la tâche de distillation de classification d'image autonome, cette méthode peut réduire le temps de distillation d'environ 50%.

Figure 5 Schéma de principe de la distillation à grande échelle

Sept, prise en charge de la classification, de la détection, de la segmentation de plusieurs scènes, combinaison gratuite de plusieurs stratégies

PaddleSlim 1.0 prend en charge la combinaison de plusieurs stratégies de compression pour atteindre le taux de compression le plus élevé. Dans la tâche de classification, la taille du modèle est réduite de 70% et la précision est augmentée de 1%.

Tableau 6 Effets de compression du modèle partiel des tâches de classification ImageNet

Dans la tâche de détection de cible, la tâche COCO a été augmentée de 0,6% et les FLOP ont été réduits de 43%.

Tableau 7 Effet de compression du modèle partiel du modèle de détection de cible

8. Mise en uvre de la "formation modèle > Compression du modèle > Application de processus complet "Déploiement prédictif", le modèle compressé peut être déployé de manière transparente sur divers scénarios matériels

PaddleSlim est basé sur l'écologie technique parfaite des pagaies volantes, et réalise la formation de "model- > Compression du modèle > L'application complète du processus de «déploiement prédictif», le modèle compressé peut atterrir en toute transparence sur divers environnements matériels.

Figure 6 Processus de compression et de déploiement

Tableau 8 Données chronophages du modèle de détection cible déployé sur le serveur et le mobile

Les données de test montrent que MobileNetv1-YOLOv3 accélère d'environ 127% à 137% sur différents appareils mobiles.

Tableau 9 Performances des composants du modèle de classification ImageNet déployés sur le serveur et le mobile

Neuf, conception d'interface légère, pour réaliser le découplage de diverses stratégies, réduisant considérablement le temps de codage

PaddleSlim1.0 implémente une toute nouvelle conception d'interface et implémente indépendamment le découplage de code entre différentes méthodes de compression via des algorithmes. Chaque méthode peut être utilisée indépendamment ou mélangée, ce qui réduit considérablement le temps d'encodage. De plus, la conception de l'interface est plus simple: les utilisateurs n'ont qu'à ajouter les lignes de code suivantes au projet d'origine pour obtenir rapidement la compression du modèle.

Ensuite, nous construisons un modèle de classification d'images MobileNetV1 et découpons deux des couches convolutionnelles. Observez les FLOP découpés. Le code est le suivant:

# Construire un réseau pagaie d'importation importer paddle.fluid comme fluide importer paddleslim aussi mince exe, train_program, val_program, entrées, sorties = slim.models.image_classification ("MobileNet", 10, use_gpu = False) print ("FLOPs avant élagage: {}". format (slim.analysis.flops (train_program))) # Coupeur de déclaration pruner = slim.prune.Pruner () # Recadrer le réseau pruned_program, _, _ = pruner.prune (train_program fluid.global_scope (), params =, rapports = * 2, place = fluide.CPUPlace ()) # Voir les FLOP print ("FLOPs avant élagage: {}". format (paddleslim.analysis.flops (train_program)))

Si vous souhaitez comprendre et utiliser le code complet, veuillez ouvrir le lien ci-dessous pour afficher l'exemple de code complet de la coupe du canal du modèle de classification d'image: https://aistudio.baidu.com/aistudio/projectdetail/309947

Si vous souhaitez en savoir plus sur les exemples de code de découpe, veuillez ouvrir le lien ci-dessous pour afficher le didacticiel de découpe avancé: https://aistudio.baidu.com/aistudio/projectdetail/308077

Le code complet comme ci-dessus peut être exécuté en ligne sur la plate-forme de formation au développement Baidu AI Studio. Après avoir entré l'adresse du lien, sélectionnez >  Cliquez sur Fork- > Lancer le projet ".

10. Des documents parfaits en chinois et en anglais offrent un support plus convivial aux développeurs et partenaires du monde entier

Les suggestions des développeurs synchrones ont amélioré les documents chinois et ajouté des documents anglais pour fournir un support plus convivial aux développeurs et partenaires PaddleSlim du monde entier.

À l'heure actuelle, PaddleSlim a été commercialisé avec succès dans le premier kit de reconnaissance faciale gecko du secteur, la mesure de la température de l'IA et d'autres produits. Dans le 15e concours Baidu Star Developer Contest, PaddleSlim a été utilisé comme un outil important dans la compétition de miniaturisation de modèles, et a été utilisé par plus de 1800 équipes de 90% des universités à double rang du pays et de la recherche connexe.

(Pour plus de contenu du concours Baidu Star Developer Contest, ouvrez le lien ci-dessous:

À l'avenir, PaddleSlim est disposé à s'associer aux développeurs, aux passionnés et aux partenaires de l'IA pour explorer conjointement la technologie de pointe de la miniaturisation des modèles et continuer à contribuer à l'application généralisée de l'IA dans le domaine industriel.

Si vous souhaitez en savoir plus sur les hélices volantes, veuillez vous référer aux documents suivants:

Adresse officielle du site Web: https://www.paddlepaddle.org.cn Adresse du projet PaddleSlim: https://github.com/PaddlePaddle/PaddleSlim

- Terminer -

Qubit QbitAI · Signature du titre

Suivez-nous et obtenez les dernières mises à jour technologiques

« Forrest Gump » confirmé, NBA suspendu, l'OMS: la pneumonie nouvelle couronne est devenue une pandémie mondiale
Précédent
stagiaire hôpital Dharma Ali méritoires! Masque améliorer R-CNN la précision, une quantité de la moitié des données d'entrée sur la ligne
Prochain
Pilote automatique version chinoise classement publié! Aucune compagnie d'étoiles du pilote automatique impliqué dans le développement
Google cerveau fait AutoML-Zero, ne sera en mesure de trouver des algorithmes mathématiques AI | Open Source
Dean lettre | Intel Songji Jiang: Réflexions sous l'épidémie, la source de la science et de la technologie en tant
le dernier écran de pliage de brevet d'Apple exposition au téléphone mobile, l'impact de l'épidémie de laisser la conférence iPhone SE2 Unknown
L'intégration de la sélection des manuels scolaires riches en ligne et hors ligne
La région désignée pour distribuer, envoyer les nouveaux manuels pour les enfants des nouveaux résidents
harle chinois d'abord apparu dans Quzhou Copper Mountain Reservoir,
Collectionneurs District Association pour mener des activités pour la première fois ce printemps
Constitution Scribe est le processus d'auto-amélioration
Tiantai Pingqiao: « peste » de nouvel espoir planté, en attendant que la forêt de printemps vert
La science et la technologie provinciale technologie grue d'amortissement correspondant à la base précise livrer
Roewe exposition EI5 modèles complets de vie de la batterie de phosphate de fer lithié jusqu'à 416 km