L'Institut de recherche Huawei HiSilicon Canada et l'Université de l'Alberta ont lancé conjointement un cadre de prédiction des performances des réseaux neuronaux basé sur la pré-formation et l'injection de connaissances.
L'évaluation des performances des réseaux de neurones (précision, rappel, PSNR, etc.) nécessite beaucoup de ressources et de temps et constitue le principal goulot d'étranglement de la recherche de structure de réseau de neurones (NAS). Les premières méthodes NAS nécessitaient des ressources considérables pour former chaque nouvelle structure recherchée à partir de zéro. Ces dernières années, les prédicteurs de performances des réseaux ont attiré davantage d’attention en tant que méthode efficace d’évaluation des performances.
Cependant, les prédicteurs actuels sont limités dans leur champ d'utilisation car ils ne peuvent modéliser les structures de réseau qu'à partir d'un espace de recherche spécifique et ne peuvent prédire les performances de nouvelles structures que sur des tâches spécifiques. Par exemple, les échantillons d'apprentissage contiennent uniquement des réseaux de classification et leur précision, de sorte que les prédicteurs formés ne peuvent être utilisés que pour évaluer les performances de nouvelles structures de réseau sur des tâches de classification d'images.
Afin de briser cette frontière et de permettre au prédicteur de prédire les performances d'une certaine structure de réseau sur plusieurs tâches et de disposer de capacités de généralisation de tâches et de données croisées, l'Institut de recherche Huawei HiSilicon Canada et l'Université de l'Alberta ont lancé conjointement un Un cadre de prédiction des performances des réseaux neuronaux basé sur la pré-formation et l'injection de connaissances. Ce cadre peut évaluer rapidement les performances de différentes structures et types de réseaux sur de nombreux types de tâches CV telles que la classification, la détection, la segmentation, etc. pour la recherche de structure de réseau neuronal. Le document de recherche a été accepté par AAAI 2023.
AIO-P (All-in -One Predictors) vise à étendre la portée des prédicteurs neuronaux aux tâches de vision par ordinateur au-delà de la classification. AIO-P utilise la technologie K-Adapter pour injecter des connaissances liées aux tâches dans le modèle prédicteur et conçoit également un mécanisme de mise à l'échelle des étiquettes basé sur les FLOP (Floating Point Operands) pour s'adapter à différents indicateurs de performance et distributions. AIO-P utilise un schéma de pseudo-étiquetage unique pour former les K-Adapters, générant ainsi de nouveaux échantillons de formation en quelques minutes seulement. Les résultats expérimentaux montrent qu'AIO-P présente de solides capacités de prédiction des performances et obtient d'excellents résultats MAE et SRCC sur plusieurs tâches de vision par ordinateur. De plus, AIO-P peut directement migrer et prédire les performances de structures de réseau inédites, et peut coopérer avec le NAS pour optimiser le volume de calcul des réseaux existants sans réduire les performances.
AIO-P est un prédicteur général de performances réseau qui peut être généralisé à plusieurs tâches. AIO-P atteint des capacités de prédiction des performances dans les tâches et les espaces de recherche grâce à la pré-formation des prédicteurs et à l'injection de connaissances spécifiques au domaine. AIO-P utilise la technologie K-Adapter pour injecter des connaissances liées aux tâches dans le prédicteur et s'appuie sur un format de graphique informatique (CG) commun pour représenter une structure de réseau, lui permettant finalement de prendre en charge des réseaux à partir de différents espaces et tâches de recherche, comme indiqué. dans la figure 1 ci-dessous.
Figure 1. Comment AIO-P représente les structures de réseau utilisées pour différentes tâches
De plus, l'utilisation d'un mécanisme de pseudo-étiquetage permet à AIO-P de générer rapidement de nouveaux échantillons de formation pour former les K-Adaptateurs. Pour combler l'écart entre les plages de mesure des performances sur différentes tâches, AIO-P propose une méthode de mise à l'échelle des étiquettes basée sur les FLOP pour réaliser une modélisation des performances entre tâches. De nombreux résultats expérimentaux montrent qu'AIO-P est capable de faire des prévisions de performances précises sur une variété de tâches CV différentes, telles que l'estimation de pose et la segmentation, sans échantillons de formation ou avec seulement un petit réglage fin. De plus, AIO-P peut classer correctement les performances sur des structures de réseau inédites et, lorsqu'il est combiné à un algorithme de recherche, est utilisé pour optimiser le réseau de reconnaissance faciale Huawei, en maintenant ses performances inchangées et en réduisant les FLOP de plus de 13,5 %. L'article a été accepté par AAAI-23 et le code est open source sur GitHub.
Les réseaux de vision par ordinateur se composent généralement d'une « épine dorsale » qui effectue l'extraction de caractéristiques et d'une « tête » qui utilise les caractéristiques extraites pour faire des prédictions. La structure du « backbone » est généralement conçue sur la base d'une certaine structure de réseau connue (ResNet, Inception, MobileNet, ViT, UNet), tandis que la « tête » est conçue pour une tâche donnée, telle que la classification, l'estimation de pose, la segmentation, etc. conçu. Les solutions NAS traditionnelles personnalisent manuellement l'espace de recherche en fonction de la structure du « backbone ». Par exemple, si le « backbone » est MobileNetV3, l'espace de recherche peut inclure le nombre de blocs MBConv, les paramètres de chaque MBConv (taille du noyau, expansion ), le nombre de chaînes, etc. Cependant, cet espace de recherche personnalisé n'est pas universel. S'il existe un autre « backbone » conçu sur la base de ResNet, il ne peut pas être optimisé via le framework NAS existant, mais l'espace de recherche doit être repensé.
Afin de résoudre ce problème, AIO-P a choisi de représenter différentes structures de réseau à partir du niveau du graphe informatique, obtenant ainsi une représentation unifiée de toute structure de réseau. Comme le montre la figure 2, le format de graphique informatique permet à AIO-P de coder ensemble l'en-tête et le squelette pour représenter l'ensemble de la structure du réseau. Cela permet également à AIO-P de prédire les performances des réseaux à partir de différents espaces de recherche (tels que MobileNets et ResNets) sur diverses tâches.
Figure 2. Représentation du module Squeeze-and-Excite dans MobileNetV3 au niveau du graphe informatique
La structure de prédicteur proposée dans AIO-P part d'un seul modèle de régression GNN (Figure 3, bloc vert) , Il prédit les performances des réseaux de classification d'images. Pour y ajouter la connaissance d'autres tâches CV, telles que la détection ou la segmentation, l'étude a attaché un K-Adapter (Fig. 3, bloc orange) au modèle de régression original. Le K-Adapter est formé sur des échantillons de la nouvelle tâche, tandis que les poids du modèle d'origine sont gelés. Par conséquent, cette étude forme séparément plusieurs K-Adapters (Figure 4) pour ajouter des connaissances provenant de plusieurs tâches.
Figure 3. Prédicteur AIO-P avec un adaptateur K
Figure 4. Prédicteur AIO-P avec plusieurs adaptateurs K
Afin de réduire davantage le temps d'entraînement avec le Au-dessus d'un K-Adapter, cette étude propose une technologie intelligente de pseudo-étiquetage. Cette technique utilise un schéma d'échantillonnage latent pour former un modèle « principal » qui peut être partagé entre différentes tâches. La tête partagée peut ensuite être associée à n'importe quel réseau fédérateur dans l'espace de recherche et ajustée pour générer des pseudo-étiquettes en 10 à 15 minutes (Figure 5).
Figure 5. Entraîner un modèle de "tête" pouvant être partagé entre différentes tâches
Il a été prouvé expérimentalement qu'utiliser des pseudo-étiquettes obtenues en partageant des têtes équivaut à entraîner un réseau à partir de zéro pendant une journée ou plus Les performances réelles obtenues sont corrélées positivement, parfois avec des coefficients de corrélation de rang supérieurs à 0,5 (corrélation de Spearman).
De plus, différentes tâches auront des indicateurs de performance différents. Ces indicateurs de performance ont généralement leur propre plage de distribution spécifique. Par exemple, un réseau de classification utilisant un réseau fédérateur spécifique peut avoir une précision de classification d'environ 75 % sur ImageNet, tandis que le mAP sur la tâche de détection d'objets MS-COCO peut être de 30 à 35 %. . Pour tenir compte de ces différents intervalles, cette étude propose une méthode pour comprendre les performances du réseau à partir d'une distribution normale basée sur le concept de normalisation. En termes simples, si la valeur prédite est 0, les performances du réseau sont moyennes ; si > 0, il s'agit d'un meilleur réseau
Figure 6. Comment normaliser les performances du réseau
Les FLOP d'un réseau sont liés à la taille du modèle, aux données d'entrée et ont généralement une tendance positive avec les performances. Cette étude utilise les transformations FLOP pour améliorer les étiquettes dont AIO-P apprend.
Cette étude a d'abord formé AIO-P aux tâches d'estimation de pose humaine et de détection d'objets, puis l'a utilisée pour prédire les performances des structures de réseau sur plusieurs tâches, notamment l'estimation de pose (LSP et MPII), la détection (OD ) ), la segmentation d'instance (IS), la segmentation sémantique (SS) et la segmentation panoramique (PS). Même dans le cas d'une migration directe sans tir, utilisez AIO-P pour prédire les performances des réseaux à partir de l'espace de recherche Once for All (OFA) (ProxylessNAS, MobileNetV3 et ResNet-50) sur ces tâches, et la prédiction finale résultats Un MAE inférieur à 1,0 % et une corrélation de classement supérieure à 0,5 ont été obtenus.
De plus, cette étude a également utilisé AIO-P pour prédire les performances des réseaux dans la bibliothèque de modèles open source TensorFlow-Slim (tels que le modèle de segmentation sémantique DeepLab, ResNets, Inception nets, MobileNets et EfficientNets These network). les structures n’ont peut-être pas été utilisées auparavant. Apparaît dans les échantillons de formation d’AIO-P.
AIO-P est capable d'obtenir un SRCC presque parfait sur 3 bibliothèques de modèles de segmentation sémantique DeepLab en tirant parti de la transformation FLOP, tout en obtenant un SRCC positif sur les 4 bibliothèques de modèles de classification et en atteignant SRCC=1.0 sur le modèle EfficientNet.
Enfin, la motivation principale d'AIO-P est de pouvoir le coupler avec un algorithme de recherche et de l'utiliser pour optimiser des structures de réseau arbitraires, qui peuvent être indépendantes et ne faire partie d'aucun espace de recherche ou bibliothèque de modèles connue, Il pourrait même s’agir d’une structure pour une tâche pour laquelle il n’a jamais été formé. Cette étude utilise AIO-P et l'algorithme de recherche de mutation aléatoire pour optimiser le modèle de reconnaissance faciale (FR) utilisé sur les téléphones mobiles Huawei. Les résultats montrent qu'AIO-P peut réduire les FLOP de calcul du modèle de plus de 13,5 % tout en maintenant les performances (précision). (Pr) et rappel (Rc)).
Les lecteurs intéressés peuvent lire l’article original pour en savoir plus sur la recherche.
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!