Maison > Article > Périphériques technologiques > La bonne façon de jouer à l’apprentissage profond par blocs de construction ! L'Université nationale de Singapour lance DeRy, un nouveau paradigme d'apprentissage par transfert qui transforme le transfert de connaissances en impression à caractères mobiles
Pendant la période Qingli de Renzong, sous la dynastie des Song du Nord, il y a 980 ans, une révolution du savoir se déroulait tranquillement en Chine.
Le déclencheur de tout cela, ce ne sont pas les paroles des sages qui vivent dans les temples, mais les briques d'argile aux inscriptions régulières cuites pièce par pièce.
Cette révolution, c'est exactement "l'impression à caractères mobiles".
La subtilité de l'impression à caractères mobiles réside dans l'idée d'"assemblage de blocs de construction" : l'artisan réalise d'abord le moule de caractère inversé du caractère unique, puis sélectionne le caractère unique en fonction du manuscrit et des pinceaux. L'encre et la frotte. Ces moules de personnages peuvent être personnalisés selon les besoins. Utilisés plusieurs fois.
Comparé au processus fastidieux de « une impression, une version » de gravure et d'impression, le mode de travail assemblage modulaire à la demande à usage multiple améliore géométriquement l'efficacité du travail d'impression et fournit également un millénaire. Il a jeté les bases du développement et de l’héritage de la civilisation humaine dans le futur.
Pour en revenir au domaine de l'apprentissage profond, aujourd'hui où les grands modèles pré-entraînés sont populaires, comment transférer les capacités d'une série de grands modèles vers des tâches spécifiques en aval est devenu une question clé.
La méthode précédente de transfert ou de réutilisation de connaissances est similaire à « l'impression en bloc » : nous avons souvent besoin de former un nouveau modèle complet en fonction des exigences de la tâche. Ces méthodes s’accompagnent souvent de coûts de formation énormes et sont difficiles à adapter à un grand nombre de tâches.
Une idée très naturelle est alors venue : Peut-on considérer le réseau de neurones comme un assemblage de blocs de construction et obtenir un nouveau réseau en réassemblant le réseau existant, et l'utiliser pour l'apprentissage par transfert ?
Lors de NeurIPS 2022, l'équipe du LVlab de l'Université nationale de Singapour a proposé un nouveau paradigme d'apprentissage par transfert appelé "Deep Model Reassembly".
Lien papier : https://arxiv.org/abs/2210.17409
Lien code : https://github.com/Adamdad/DeRy
Accueil du projet page : https://adamdad.github.io/dery/
OpenReview : https://openreview.net/forum?id=gtCPWaY5bNh
L'auteur a d'abord classé les modèles pré-entraînés existants selon fonctions similaires Décomposez-le en un sous-réseau, puis réassemblez le sous-réseau pour créer un modèle efficace et facile à utiliser pour des tâches spécifiques.
L'article a été accepté par NeurIPS avec un score de 886 et recommandé pour la nomination au Paper Award.
Dans cet article, l'auteur explore une nouvelle tâche de transfert de connaissances appelée Deep Model Reassembly (DeRy) pour la réutilisation générale de modèles.
Étant donné un ensemble de modèles pré-entraînés formés sur différentes données et architectures hétérogènes, la restructuration approfondie du modèle divise d'abord chaque modèle en morceaux de modèle indépendants, puis réassemble sélectivement les éléments du sous-modèle.
Cette méthode est similaire au traitement du modèle de réseau neuronal profond comme des blocs de construction : démonter les grands blocs de construction existants en petits blocs de construction, puis assembler les pièces selon les exigences. Le nouveau modèle assemblé ne doit pas seulement avoir des performances plus élevées ; le processus d'assemblage ne doit pas modifier autant que possible la structure et les paramètres du module d'origine pour garantir son efficacité.
La méthode présentée dans cet article peut être divisée en deux parties. DeRy résout d'abord un problème de couverture d'ensemble et divise tous les réseaux pré-entraînés selon les niveaux fonctionnels ; dans la deuxième étape, DeRy formalise l'assemblage du modèle en un problème de programmation entier 0-1 pour garantir que le modèle assemblé offre les meilleures performances sur des tâches spécifiques.
Réassemblage profond de modèles
Tout d'abord, l'auteur définit le problème du réassemblage de modèles profonds : étant donné un modèle profond entraîné, on l'appelle une bibliothèque de modèles.
Chaque modèle est composé de liens de calque, représentés par . Différents réseaux peuvent avoir des structures et des opérations complètement différentes, à condition que le modèle soit connecté couche par couche.
Étant donné une tâche, nous espérons trouver le modèle de mélange de couches avec les meilleures performances, et la quantité de calcul du modèle répond à certaines limites :
La performance sur la tâche représente le ème modèle de ; les opérations de la ème couche ;
Ce problème nécessite de rechercher toutes les permutations de toutes les couches du modèle afin de maximiser le gain. Essentiellement, cette tâche implique une optimisation combinatoire extrêmement complexe.
Afin de simplifier le coût de recherche, cet article divise d'abord le modèle de bibliothèque de modèles dans la direction de la profondeur pour former des sous-réseaux moins profonds et plus petits, puis effectue une recherche d'épissage au niveau du sous-réseau ;
Diviser le réseau selon les niveaux fonctionnels
La première étape de DeRy consiste à démonter le modèle d'apprentissage profond comme des éléments de base. L'auteur adopte une méthode de division profonde du réseau pour diviser le modèle profond en petits modèles moins profonds.
L'article espère que les sous-modèles démontés auront autant que possible des fonctionnalités différentes. Ce processus peut être comparé au processus de démontage des blocs de construction et de leur classement dans des coffres à jouets en catégories : Des blocs de construction similaires sont assemblés et différents blocs de construction sont démontés.
Par exemple, divisez le modèle en couche inférieure et couche supérieure, et attendez-vous à ce que la couche inférieure soit principalement responsable de l'identification des modèles locaux tels que les courbes ou les formes, tandis que la couche supérieure peut juger de la sémantique globale du échantillon.
En utilisant l'indice de mesure de similarité des caractéristiques générales, la similarité fonctionnelle de n'importe quel modèle peut être mesurée quantitativement.
L'idée clé est que pour des entrées similaires, des réseaux de neurones ayant la même fonction peuvent produire des sorties similaires.
Ainsi, pour les tenseurs d'entrée X et X' correspondant à la somme des deux réseaux, leur similarité fonctionnelle est définie comme :
Ensuite, la bibliothèque de modèles peut être divisée en ensembles d'équivalences fonctionnelles grâce à la similarité fonctionnelle.
Les sous-réseaux de chaque ensemble d'équivalences ont une grande similarité fonctionnelle et la division de chaque modèle garantit la séparabilité de la bibliothèque de modèles.
L'un des principaux avantages du démantèlement de cette manière est qu'en raison de la similitude fonctionnelle, les sous-réseaux de chaque ensemble d'équivalence peuvent être considérés comme approximativement interchangeables, c'est-à-dire qu'un bloc de réseau peut être remplacé par un autre sous-réseau du même ensemble d’équivalences sans affecter les prédictions du réseau.
Le problème de fractionnement ci-dessus peut être formalisé comme un problème d'optimisation contrainte à trois niveaux :
L'optimisation de niveau interne de ce problème a une plus grande relation avec le problème général de l'ensemble de couverture ou le problème de segmentation de graphe . similarité. Par conséquent, l’auteur utilise un algorithme heuristique de Kernighan-Lin (KL) pour optimiser la couche interne.
L'idée générale est que pour deux sous-modèles initialisés aléatoirement, une couche d'opérations est échangée à chaque fois. Si l'échange peut augmenter la valeur de la fonction d'évaluation, l'échange est conservé sinon, l'échange est abandonné ;
La boucle externe adopte ici un algorithme de clustering K-Means.
Pour chaque division du réseau, chaque sous-réseau est toujours affecté à la fonction définie avec le plus grand entraxe. Étant donné que les boucles interne et externe sont itératives et ont une garantie de convergence, la répartition optimale du sous-réseau selon les niveaux fonctionnels peut être obtenue en résolvant le problème ci-dessus.
Assemblage de réseau basé sur une optimisation entière
La division du réseau divise chaque réseau en sous-réseaux, et chaque sous-réseau appartient à un ensemble d'équivalences. Cela peut être utilisé comme espace de recherche pour trouver l’épissage de réseau optimal pour les tâches en aval.
En raison de la diversité des sous-modèles, ce type d'assemblage de réseau est un problème d'optimisation combinatoire avec un grand espace de recherche, et certaines conditions de recherche sont définies : chaque combinaison de réseau extrait un bloc de réseau du même ensemble de fonctionnalités et placé en fonction de sa position dans le réseau d'origine ; le réseau synthétisé doit respecter la limite de calcul. Ce processus est décrit comme l'optimisation d'un problème d'optimisation d'entiers 0-1.
Afin de réduire davantage les frais généraux de formation pour chaque calcul des performances du modèle combiné, l'auteur s'appuie sur une fonction alternative dans la formation NAS qui ne nécessite pas de formation, appelée NASWOT. À partir de là, les performances réelles du réseau peuvent être estimées simplement en utilisant l'inférence du réseau sur un ensemble de données spécifié.
Grâce au processus de split-recombinaison ci-dessus, différents modèles pré-entraînés peuvent être épissés et fusionnés pour obtenir un modèle nouveau et plus solide.
L'auteur a soigneusement démonté et réorganisé une bibliothèque de modèles contenant 30 réseaux pré-entraînés différents et a effectué une évaluation des performances sur ImageNet et 9 autres tâches de classification en aval .
Deux méthodes de formation différentes ont été utilisées dans l'expérience : Full-Tuning, ce qui signifie que tous les paramètres du modèle après l'épissage sont entraînés Freeze-Tuning, ce qui signifie que seule la couche de connexion après l'épissage est entraînée ; .
De plus, cinq modèles réduits sont sélectionnés et comparés, appelés DeRy(, ,).
Comme vous pouvez le voir sur l'image ci-dessus, sur l'ensemble de données ImageNet, les modèles de différentes échelles obtenus par DeRy peuvent être meilleurs ou égaux aux modèles de tailles similaires dans la bibliothèque de modèles.
On constate que même si seuls les paramètres de la partie lien sont entraînés, le modèle peut toujours réaliser de forts gains de performances. Par exemple, le modèle DeRy(4,90,20) a atteint une précision Top1 de 78,6 % avec seulement 1,27 million de paramètres entraînés.
Dans le même temps, 9 expériences d'apprentissage par transfert ont également vérifié l'efficacité de DeRy. On peut voir que sans pré-entraînement, le modèle de DeRy peut surpasser les autres modèles dans les comparaisons de différentes tailles de modèles ; en pré-entraînant continuellement le modèle réassemblé, les performances du modèle peuvent être considérablement améliorées.
Comparé à d'autres méthodes d'apprentissage par transfert de la bibliothèque de modèles telles que LEEP ou LogME, DeRy peut dépasser les limitations de performances de la bibliothèque de modèles elle-même, et même être meilleur que le meilleur modèle de la bibliothèque de modèles d'origine.
Explorer la nature de la réorganisation du modèle
L'auteur est également curieux de connaître la nature de la réorganisation du modèle proposée dans cet article, telle que « Selon quel type de modèle le modèle sera divisé ? » et « Selon quel type de modèle le modèle sera-t-il divisé ? » Des règles à restructurer ? L'auteur propose des expériences pour l'analyse.
Similitude fonctionnelle, position de recombinaison et performances de recombinaison
L'auteur a exploré le Freeze-Tuning 20 époques après avoir remplacé le même bloc de réseau par d'autres blocs de réseau présentant des similitudes fonctionnelles différentes.
Pour ResNet50 formé sur ImageNet, remplacez les blocs réseau de ses 3ème et 4ème étages par différents blocs réseau de ResNet101, ResNeXt50 et RegNetY8G.
On constate que le poste de remplacement a un grand impact sur les performances.
Par exemple, si le troisième étage est remplacé par le troisième étage d'un autre réseau, la performance du réseau réorganisé sera particulièrement forte. Dans le même temps, la similarité fonctionnelle correspond également positivement aux performances de recombinaison.
Les blocs de modèle de réseau à la même profondeur ont une plus grande similitude, ce qui se traduit par des capacités de modèle plus fortes après l'entraînement. Cela souligne la dépendance et la relation positive entre similarité - position de recombinaison - performance de recombinaison .
Observation des résultats du fractionnement
Dans l'image ci-dessous, l'auteur dessine les résultats de la première étape du fractionnement. La couleur représente la similarité entre le bloc réseau et le bloc réseau au centre de l'ensemble d'équivalence de la chanson.
On constate que le découpage proposé dans cet article tend à regrouper les sous-réseaux entre eux selon la profondeur et à les diviser. Dans le même temps, les données de similarité fonctionnelle de CNN et de Transformer sont faibles, mais la similarité fonctionnelle entre CNN et CNN d'architectures différentes est généralement plus grande.
Utilisation de NASWOT comme indicateur de performance
Étant donné que cet article applique pour la première fois NASWOT pour la prédiction de transfert sans entraînement, l'auteur a également testé la fiabilité de cet indicateur.
Dans la figure ci-dessous, l'auteur calcule les scores NASWOT de différents modèles sur différents ensembles de données et les compare avec la précision de l'apprentissage par transfert plus un.
On peut observer que les scores NASWOT ont obtenu un classement des performances plus précis (corrélation Tau de Kendall). Cela montre que l'indice de formation zéro utilisé dans cet article peut prédire efficacement les performances du modèle sur les données en aval.
Cet article propose une nouvelle tâche de transfert de connaissances appelée Deep Model Reassembly (DeRy). Il construit un modèle adapté aux tâches en aval en brisant les modèles hétérogènes pré-entraînés existants et en les réassemblant.
L'auteur propose une mise en œuvre simple en deux étapes pour accomplir cette tâche. Premièrement, DeRy résout un problème d'ensemble de couverture et divise tous les réseaux pré-entraînés selon les niveaux fonctionnels ; dans la deuxième étape, DeRy formalise l'assemblage du modèle en un problème de programmation entier 0-1 pour garantir les performances du modèle assemblé sur des tâches spécifiques. optimale.
Ce travail a non seulement permis d'améliorer fortement les performances, mais a également cartographié la connectivité possible entre différents réseaux neuronaux.
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!