Maison > Article > Périphériques technologiques > Le premier réseau neuronal binaire BNext avec une précision de plus de 80 % sur ImageNet a été lancé, un parcours de cinq ans de -1 et +1
Il y a deux ans, lors de la sortie de MeliusNet, le Cœur de la Machine publiait un article technique "Un réseau de neurones binaires qui bat MobileNet pour la première fois, -1 et + 1 trois ans de parcours ardu 》, a passé en revue l'historique de développement de BNN. À cette époque, XNOR.AI, fondé sur les premiers travaux de BNN XNOR-Net, a été racheté par Apple. Tout le monde avait imaginé si cette technologie de réseau neuronal binaire à faible consommation et hautes performances ouvrirait bientôt de larges perspectives d'application.
Cependant, au cours des deux dernières années, il nous a été difficile d'obtenir plus d'informations sur l'application de la technologie BNN d'Apple, qui garde strictement sa technologie confidentielle, et il n'y a pas eu d'autres cas d'application particulièrement accrocheurs. dans le monde universitaire ou industriel. D’un autre côté, avec le nombre croissant d’appareils terminaux, les applications et les marchés de l’IA de pointe connaissent une croissance rapide : on s’attend à ce que 500 à 125 milliards d’appareils de pointe soient produits d’ici 2030, et le marché de l’informatique de pointe atteindra 60 milliards de dollars. Il existe plusieurs domaines d'application actuellement populaires : l'AIoT, le Metaverse et les équipements terminaux robotiques. Les industries concernées accélèrent la mise en œuvre de la technologie. Dans le même temps, les capacités de l’IA ont été intégrées dans de nombreux liens techniques fondamentaux dans les domaines ci-dessus, tels que l’application généralisée de la technologie de l’IA dans la reconstruction tridimensionnelle, la compression vidéo et le temps réel. perception robotique des scènes. Dans ce contexte, la demande de l'industrie en matière de technologie d'IA, d'outils logiciels et d'accélération matérielle à haute efficacité énergétique et à faible consommation, est devenue de plus en plus urgente.
À l'heure actuelle, il existe deux principaux goulots d'étranglement limitant l'application du BNN : premièrement, l'incapacité de réduire efficacement l'écart de précision avec les modèles d'apprentissage profond 32 bits traditionnels, deuxièmement, le manque d'implémentation d'algorithmes hautes performances sur différents matériels ; . Les accélérations dans les articles sur l'apprentissage automatique ne se traduisent souvent pas par le GPU ou le CPU que vous utilisez. La deuxième raison peut découler de la première raison. Le BNN ne peut pas atteindre une précision satisfaisante et ne peut donc pas attirer l'attention des praticiens dans les domaines de l'accélération et de l'optimisation des systèmes et du matériel. La communauté des algorithmes d’apprentissage automatique ne peut souvent pas développer seule du code matériel hautes performances. Par conséquent, pour obtenir à la fois une grande précision et une forte accélération, les applications ou accélérateurs BNN nécessiteront sans aucun doute la collaboration de développeurs de ces deux domaines différents.
Par exemple, le modèle de système de recommandation Meta DLRM utilise des nombres à virgule flottante de 32 bits pour stocker les poids et les paramètres d'activation, et la taille de son modèle est d'environ 2,2 Go. Une version binaire du modèle avec une légère réduction de précision (
Le deuxième avantage non négligeable du BNN est que la méthode de calcul est extrêmement efficace. Il n'utilise qu'un seul bit, soit deux états, pour représenter les variables. Cela signifie que toutes les opérations ne peuvent être effectuées que par des opérations sur bits. À l'aide de portes ET, de portes XOR et d'autres opérations, les opérations traditionnelles de multiplication et d'addition peuvent être remplacées. Les opérations sur bits sont l'unité de base du circuit.Les étudiants familiarisés avec la conception de circuits doivent comprendre que réduire efficacement la surface de l'unité de calcul de multiplication et d'addition et réduire l'accès à la mémoire hors puce sont les moyens les plus efficaces de réduire la consommation d'énergie. BNN se concentre à la fois sur la mémoire et le calcul. Tous présentent des avantages uniques. WRPN [1] a démontré que sur des FPGA et des ASIC personnalisés, BNN peut réaliser une économie d'énergie 1 000 fois supérieure à celle d'une précision totale. Des travaux plus récents, BoolNet [2], ont démontré une conception structurelle BNN qui ne peut utiliser presque aucune opération en virgule flottante et maintenir un flux d'informations binaires purs, ce qui permet d'obtenir d'excellents compromis en matière de consommation d'énergie et de précision dans la simulation ASIC.
Des chercheurs tels que Nianhui Guo et Haojin Yang de l'Institut Hasso Plattner d'ingénierie des systèmes informatiques en Allemagne ont proposé le modèle BNext, devenant ainsi le premier BNN à atteindre une précision de classification top1 de plus de 80 % sur l'ensemble de données ImageNet :
Figure 1 Comparaison des performances de SOTA BNN basée sur ImageNet
Adresse papier : https://arxiv.org/pdf/2211.12933.pdf
L'auteur a d'abord fait une comparaison approfondie de la convivialité d'optimisation du modèle BNN grand public actuel et du 32- modèle de bits basé sur la visualisation du paysage des pertes. L'énorme différence de degré (Figure 2) suggère que le paysage approximatif des pertes du BNN est l'une des principales raisons qui empêchent la communauté de recherche actuelle d'explorer davantage les limites de performance du BNN.
Sur la base de cette hypothèse, l'auteur a essayé d'utiliser une nouvelle conception structurelle pour améliorer la convivialité d'optimisation du modèle BNN et a réduit la difficulté d'optimiser le modèle BNN de haute précision en construisant une architecture de réseau neuronal binaire avec une perte plus douce. Paysage. Plus précisément, l'auteur souligne que la binarisation du modèle limite considérablement les modèles de fonctionnalités pouvant être utilisés pour la propagation directe, obligeant la convolution binaire à extraire et à traiter uniquement les informations dans un espace de fonctionnalités limité. Ce mode de propagation direct limité peut entraîner des difficultés d'optimisation. être efficacement atténué grâce à deux niveaux de conception structurelle : (1) construire un module flexible d'étalonnage des caractéristiques de convolution contiguë pour améliorer l'adaptabilité du modèle à la représentation binaire ; .
Figure 2 Comparaison de visualisation du paysage de perte (perspective de contour 2D) pour l'architecture BNN populaire
Sur la base de l'analyse ci-dessus, l'auteur a proposé BNext, le premier à y parvenir dans l'image ImageNe tâche de classification > Architecture de réseau neuronal binaire avec une précision de 80 % La conception spécifique de l'architecture de réseau est illustrée à la figure 4. L'auteur a d'abord conçu une unité de traitement binaire de base basée sur le module Info-Recoupling (Info-RCP). Pour résoudre le problème de goulot d'étranglement des informations entre les convolutions adjacentes, la conception d'étalonnage préliminaire de la distribution de sortie de convolution binaire est complétée par l'introduction de couches supplémentaires de normalisation par lots et de couches PReLU. Ensuite, l'auteur a construit un modèle d'étalonnage de distribution dynamique quadratique basé sur la structure résiduelle inverse et la structure de branche Squeeze-And-Expand. Comme le montre la figure 3, par rapport à la structure d'étalonnage Real2Binary traditionnelle, la structure résiduelle inverse supplémentaire prend pleinement en compte l'écart de caractéristiques entre l'entrée et la sortie de l'unité binaire, évitant ainsi un étalonnage de distribution sous-optimal entièrement basé sur les informations d'entrée. Cet étalonnage de distribution dynamique en deux étapes peut réduire efficacement la difficulté d'extraction de caractéristiques dans les couches de convolution binaires adjacentes suivantes.
Figure 3 Tableau comparatif de la conception du module de convolution
Deuxièmement, l'auteur propose un module de bloc de base binaire amélioré combiné à l'attention par élément (ELM-Attention). L'auteur a complété la construction de base du bloc de base en empilant plusieurs modules Info-RCP et a introduit une normalisation par lots supplémentaire et des connexions résiduelles continues à chaque module Info-RCP pour atténuer davantage le problème de goulot d'étranglement des informations entre les différents modules Info-RCP. En se basant sur l'analyse de l'impact de la structure de contournement sur l'optimisation du modèle binaire, l'auteur propose d'utiliser la branche de multiplication matricielle par éléments pour effectuer un calibrage de distribution sur la sortie du premier module Info-RCP 3x3 de chaque Bloc de Base. . Le mécanisme supplémentaire de pondération de l’attention de l’espace aérien peut aider Basic Block à effectuer la fusion et la distribution d’informations vers l’avant avec un mécanisme plus flexible, améliorant ainsi la fluidité du modèle de paysage des pertes. Comme le montrent les figures 2.e et 2.f, la conception du module proposée peut améliorer considérablement la fluidité du paysage des pertes du modèle.
Figure 4 BConception de l'architecture suivante. "Processeur" représente le module Info-RCP, "BN" représente la couche de normalisation par lots, "C" représente la largeur de base du modèle, "N" et "M" représentent les paramètres d'échelle de profondeur des différentes étapes du modèle .
Le tableau 1 série BNext « Q » représente les paramètres de quantification de la couche d'entrée, du SEbranch et de la couche de sortie
.L'auteur a combiné la conception structurelle ci-dessus avec le modèle de référence populaire MoboleNetv1 et a construit quatre séries de modèles BNext (Tableau 1) de complexité différente en modifiant le coefficient proportionnel de profondeur et de largeur du modèle : BNex-Tiny, BNext-Small, BNext - Milieu, BNext-Large.
En raison du paysage des pertes relativement difficile, l'optimisation actuelle du modèle binaire repose généralement sur des informations de supervision plus fines fournies par des méthodes telles que la distillation des connaissances pour se débarrasser d'une convergence sous-optimale généralisée. Pour la première fois, l'auteur de BNext a examiné l'impact possible de l'énorme écart dans la distribution de prédiction entre le modèle d'enseignant et le modèle binaire d'élève au cours du processus d'optimisation, et a souligné que la sélection des enseignants basée uniquement sur la précision du modèle conduirait à des contre-attaques. -résultats intuitifs du surapprentissage des étudiants. Pour résoudre ce problème, l'auteur propose la complexité des connaissances (KC) comme nouvelle métrique de sélection des enseignants, prenant en compte la corrélation entre l'efficacité des étiquettes souples de sortie du modèle d'enseignant et la complexité des paramètres du modèle d'enseignant.
Comme le montre la figure 5, sur la base de la complexité des connaissances, l'auteur a mesuré et classé la complexité de séries de modèles populaires de pleine précision telles que ResNet, EfficientNet et ConvNext, et a combiné BNext-T en tant que modèle étudiant. pour vérifier initialement la mesure. La validité des critères, et sur la base des résultats du classement, est utilisée pour la sélection du modèle de distillation des connaissances dans les expériences ultérieures.
Figure 5 Effet de surapprentissage contre-intuitif et impact de la complexité des connaissances selon différentes sélections d'enseignants
Sur cette base, l'auteur de l'article a examiné plus en détail le solide processus d'optimisation des enseignants Un KD consécutif diversifié est proposé pour résoudre le problème d'optimisation causé par l'écart de distribution des prédictions précoces. Comme indiqué ci-dessous, l'auteur module la fonction objectif dans le processus d'optimisation grâce à la méthode d'intégration des connaissances combinant des enseignants forts et faibles. Sur cette base, la stratégie d'amélioration des connaissances est introduite davantage, en utilisant plusieurs candidats enseignants prédéfinis pour remplacer uniformément les enseignants faibles au cours du processus de formation, en guidant la complexité des connaissances combinées dans un ordre basé sur le programme de faible à fort, et en réduisant la distribution des prédictions. Interférence d'optimisation causée par les différences.
En termes de techniques d'optimisation, les auteurs de BNext considèrent pleinement les gains possibles apportés par l'augmentation des données dans l'optimisation des modèles modernes de haute précision et proposent la première application possible des stratégies d'augmentation des données populaires existantes dans l'optimisation des modèles binaires. Les résultats expérimentaux montrent que les méthodes d'amélioration des données existantes ne sont pas entièrement adaptées à l'optimisation des modèles binaires, ce qui fournit des idées pour la conception de stratégies d'amélioration des données spécifiques à l'optimisation des modèles binaires dans les recherches ultérieures.
Sur la base de la méthode de conception et d'optimisation de l'architecture proposée, l'auteur a effectué une vérification de la méthode sur la tâche de classification d'images à grande échelle ImageNet-1k. Les résultats expérimentaux sont présentés dans la figure 6.
Figure 6 Comparaison des méthodes SOTA BNN basées sur ImageNet-1k.
Par rapport aux méthodes existantes, BNext-L a poussé la limite de performances des modèles binaires à 80,57 % pour la première fois sur ImageNet-1k, atteignant une précision supérieure à 10 % pour la plupart des méthodes existantes. Par rapport au PokeBNN de Google, BNext-M est 0,7 % plus élevé avec des paramètres similaires. L'auteur souligne également que l'optimisation de PokeBNN repose sur des ressources informatiques plus élevées, comme une taille de bacth allant jusqu'à 8 192 et un TPU de 720 époques. , tandis que BNext-L n'a itéré que 512 époques avec une taille de lot conventionnelle de 512, ce qui reflète l'efficacité de la méthode de conception structurelle et d'optimisation de BNext. Dans les comparaisons basées sur le même modèle de base, BNext-T et BNext-18 ont considérablement amélioré la précision. En comparaison avec des modèles de pleine précision tels que RegNetY-4G (80,0 %), BNext-L démontre des capacités d'apprentissage de représentation visuelle correspondantes tout en utilisant uniquement un espace de paramètres limité et une complexité de calcul, ce qui le rend idéal pour le déploiement en périphérie du modèle de tâche visuelle en aval. sur l'extracteur de fonctionnalités du modèle binaire offre un espace d'imagination riche.
BNuivant Les auteurs ont mentionné dans l'article qu'eux-mêmes et leurs collaborateurs mettent activement en œuvre et vérifient l'efficacité opérationnelle de cette architecture BNN de haute précision sur le matériel GPU, et prévoient de l'étendre à d'autres matériels plus larges dans le monde. avenir sur la plateforme. Cependant, de l'avis de l'éditeur, la communauté a repris confiance dans BNN et a attiré l'attention d'un plus grand nombre de connaisseurs dans les domaines du système et du matériel. L'importance la plus importante de ce travail est peut-être de remodeler l'imagination du potentiel d'application de BNN. À long terme, alors que de plus en plus d'applications migrent des paradigmes informatiques centrés sur le cloud vers l'informatique de périphérie décentralisée, le nombre massif d'appareils de pointe à l'avenir nécessitera une technologie d'IA, des cadres logiciels et des plates-formes informatiques matérielles plus efficaces. Cependant, les modèles d’IA et les architectures informatiques les plus courants actuels ne sont pas conçus et optimisés pour les scénarios de pointe. Par conséquent, jusqu’à ce que la réponse à l’IA de pointe soit trouvée, je pense que le BNN sera toujours une option importante, pleine de défis techniques et d’un énorme potentiel.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!