Modèles et plateformes d’IA
TinySAM : Modèle de segmentation efficace pour tout segmenter
La segmentation d’objets est un domaine fondamental et crucial dans la vision par ordinateur moderne. Elle joue un rôle essentiel dans les applications nécessitant des composants visuels étendus, tels que la localisation et l’identification d’objets, et nécessite une segmentation rapide, précise et en temps réel. Cette importance a fait de la segmentation d’objets un sujet de recherche constamment populaire, avec des travaux significatifs réalisés dans des domaines tels que la segmentation d’instances, la segmentation sémantique et la segmentation panoptique.
Avec l’évolution de la segmentation d’objets, le Modèle de segmentation de tout (SAM) est apparu comme un outil remarquable, présentant des capacités de segmentation exceptionnelles et étant rapidement adopté dans diverses applications de vision par ordinateur. Les cadres utilisant une architecture SAM pré-entraînée ont obtenu des performances impressionnantes dans les tâches de vision en aval. Cependant, malgré ses capacités et sa grande précision dans les tâches de segmentation, l’architecture complexe et lourde du SAM nécessite une puissance de calcul importante, ce qui entrave sa mise en œuvre sur des appareils à ressources computationnelles limitées.
Pour répondre aux défis de calcul du SAM, les chercheurs ont développé le Tiny Segment Anything Model (TinySAM), qui conserve les performances de zéro-shot de la trame d’origine tout en étant plus léger. Le TinySAM utilise une méthode de distillation des connaissances à plein stage avec des invites difficiles en ligne pour créer un modèle d’étudiant plus efficace. La quantification post-formation adaptée aux tâches de segmentation invocables réduit encore les besoins de calcul. De plus, la conception du TinySAM vise à segmenter de manière hiérarchique tout, ce qui double presque la vitesse d’inférence sans compromettre les performances.
Cet article se penche sur le cadre TinySAM, en explorant ses principes fondamentaux, son architecture et ses performances par rapport à d’autres cadres de segmentation d’état de l’art. Explorons ces aspects en détail.
TinySAM : Modèle de segmentation efficace pour tout segmenter
Le Modèle de segmentation de tout a contribué à la progression rapide de plusieurs applications de vision par ordinateur en raison de ses capacités de segmentation remarquables, couplées à un énorme ensemble de données de segmentation qui abrite plus de 11 millions d’images et plus d’un milliard de masques d’image. En raison de ses performances exceptionnelles dans les tâches de segmentation d’objets avec des catégories et des formes arbitraires, il sert de base pour les cadres qui effectuent des tâches en aval telles que le retouching d’images, le suivi d’objets, la vision 3D et plus encore. De plus, le Modèle de segmentation de tout offre des performances de segmentation zéro-shot remarquables qui ont bénéficié à des industries sensibles qui travaillent avec une quantité limitée de données, notamment les industries de la recherche médicale et de l’imagerie médicale.
Bien que l’on ne puisse pas remettre en question les capacités de segmentation remarquables offertes par le Modèle de segmentation de tout sur une large gamme de tâches de vision en aval, il a son inconvénient en termes de surcharge architecturale complexe, de besoins de calcul élevés et de coûts d’exploitation importants. Pour un système fonctionnant sur une GPU moderne, le temps d’inférence d’un modèle SAM peut être aussi élevé que 2 secondes pour une image 1024×1024. Par conséquent, il est très difficile de mettre en œuvre des applications SAM sur des appareils à ressources computationnelles limitées. Pour surmonter cet obstacle, des travaux récents tels que MobileSAM et FastSAM ont tenté de développer un modèle SAM plus efficace sur le plan computationnel. Le cadre MobileSAM tente de remplacer le composant lourd de l’encodeur d’image par l’architecture de la trame TinyViT, tandis que le modèle FastSAM transfère la tâche de segmentation à une tâche de segmentation d’instances avec une seule catégorie avec le modèle YoloV8. Bien que ces méthodes aient pu atteindre un certain niveau de succès en termes de réduction des besoins de calcul, elles n’ont pas pu maintenir les performances, en particulier sur les tâches zéro-shot en aval.
TinySAM ou le Tiny Segment Anything Model est une tentative pour réduire les besoins de calcul du modèle SAM actuel sans nuire aux performances sur les tâches zéro-shot en aval. De plus, le cadre TinySAM propose de mettre en œuvre une méthode de distillation des connaissances à plein stage dans son architecture, dans le but d’améliorer la capacité du réseau d’étudiant compact. Le cadre TinySAM distille le réseau d’étudiant de manière globale sous la supervision du réseau d’enseignant à différents stades. Pour améliorer les performances, le cadre permet à la distillation de se concentrer davantage sur les exemples difficiles en mettant en œuvre une stratégie d’échantillonnage d’invites difficiles en ligne. De plus, pour réduire encore les coûts de calcul, le cadre TinySAM expose les tâches de segmentation invocables aux composants de quantification post-formation.
La majeure partie des besoins de calcul du Modèle de segmentation de tout est due au fait que le modèle génère des masques massifs à partir des points de grille pour segmenter tout dans l’image. Pour surmonter les besoins de calcul de cette stratégie de segmentation, le cadre TinySAM emploie une stratégie de segmentation hiérarchique, qui double presque la vitesse d’inférence sans compromettre les performances. Avec ces méthodes mises en œuvre dans son architecture, le cadre TinySAM offre une réduction significative des besoins de calcul et fixe de nouvelles limites pour les tâches de segmentation efficaces.
TinySAM : Architecture et méthodologie
Avant de discuter de l’architecture et de la méthodologie du cadre TinySAM, il est important de regarder d’abord son prédécesseur, le cadre SAM. Depuis son introduction, le Modèle de segmentation de tout a démontré des performances remarquables, une polyvalence et des capacités de généralisation à travers une gamme de tâches de vision et de segmentation d’objets.
Au cœur du modèle SAM, il y a trois sous-réseaux : l’encodeur d’invite, l’encodeur d’image et le décodeur de masque. L’objectif principal de l’encodeur d’invite est de coder les masques de formes arbitraires, les points et les boîtes d’entrée, ainsi que le texte libre avec des informations de position. L’encodeur d’image est un réseau lourd basé sur un transformateur de vision qui extrait l’image d’entrée en embeddings. Le modèle utilise différents réseaux pour traiter les invites géométriques et textuelles. Enfin, le décodeur de masque contient un transformateur à deux voies qui reçoit la sortie de l’encodeur d’invite et de l’encodeur d’image pour générer la prédiction finale du masque. Avec l’ensemble de données, le cadre SAM démontre des capacités de segmentation de haute qualité pour les objets, quelle que soit leur forme et leur catégorie. De plus, le Modèle de segmentation de tout démontre des performances remarquables et une efficacité à travers les tâches de vision zéro-shot, notamment la proposition d’objets, la détection de bords, la prédiction de masque de texte et la segmentation d’instances. En raison de ses capacités de segmentation de haute qualité et de ses invites flexibles, les cadres SAM forment la base des applications de vision. Cependant, on ne peut pas ignorer les besoins de calcul élevés de l’architecture SAM traditionnelle, avec un grand nombre de paramètres qui rendent presque impossible pour les développeurs de déployer des applications SAM sur des appareils à ressources computationnelles limitées.
Distillation des connaissances
La distillation des connaissances est une approche importante pour améliorer les performances des réseaux compacts pendant la phase d’entraînement. La méthode de distillation des connaissances utilise la sortie du réseau d’enseignant pour superviser l’entraînement du réseau d’étudiant léger. La méthode de distillation des connaissances peut être divisée en deux sous-catégories : la distillation pour les fonctionnalités intermédiaires et la distillation pour les sorties de réseau, avec la majorité des travaux de recherche sur la distillation des connaissances se concentrant sur les tâches de classification d’images.
Comme indiqué plus haut, la figure suivante montre l’architecture générique du cadre TinySAM, ainsi que les performances sur les tâches de segmentation d’instances zéro-shot.

Dans la première étape, le cadre TinySAM met en œuvre la distillation des connaissances conçue spécifiquement pour le cadre SAM, et pour activer le processus de distillation, le modèle utilise un échantillonnage d’invites difficiles en ligne pour extraire les connaissances difficiles du réseau d’enseignant vers le réseau d’étudiant. Dans la deuxième étape, le cadre TinySAM adapte la méthode de quantification post-formation aux tâches de segmentation invocables et la met en œuvre sur le réseau d’étudiant léger. Enfin, le modèle met en œuvre le mode d’inférence de segmentation hiérarchique conçu pour les tâches de segmentation, ce qui double la vitesse d’inférence avec une perte d’exactitude négligeable.
Distillation des connaissances à plein stage
Comme mentionné plus haut, le Modèle de segmentation de tout se compose de trois sous-réseaux au cœur : l’encodeur d’invite, l’encodeur d’image et le décodeur de masque, avec le composant d’encodeur d’image construit sur un transformateur de vision et ayant des besoins de calcul élevés. Pour résoudre ce problème, le cadre MobileSAM a remplacé le transformateur de vision par un TinyViT ou un transformateur de vision miniature, bien que le remplacement n’ait pas été efficace en raison de la perte de performance significative. Pour garantir qu’il n’y ait pas de perte de performance, le cadre TinySAM met en œuvre une méthode de distillation des connaissances à plein stage qui guide le réseau d’étudiant léger de l’encodeur d’image depuis le niveau d’apprentissage jusqu’au niveau de connaissance multiple. En plus de la perte conventionnelle entre les étiquettes de vérité et les résultats prédits, le cadre TinySAM introduit plusieurs pertes de distillation pendant différentes étapes, comme indiqué dans la figure suivante.

Quantification
La quantification de modèle est une approche populaire dans les cadres de vision par ordinateur et est utilisée pour compresser le modèle en quantifiant les poids ou les activations depuis une bande passante plus élevée vers une bande passante plus basse dans le but de réduire la complexité de calcul et les besoins de stockage sans dégrader significativement la qualité de sortie.
L’objectif principal de la quantification dans le TinySAM est de projeter le tenseur à virgule flottante sur le tenseur entier à l’aide d’un facteur d’échelle, avec la métrique pour mesurer la distance entre la multiplication de matrices et la matrice quantifiée jouant un rôle essentiel pour optimiser le facteur d’échelle.
Segmentation hiérarchique
Le Modèle de segmentation de tout propose d’utiliser un générateur de masque automatique qui échantillonne des points sous forme de grille pour segmenter tout dans l’image. Cependant, il a été indiqué que l’utilisation d’une grille de points dense entraîne des sorties de segmentation trop fines et que le processus nécessite des besoins de calcul importants et engendre des coûts d’exploitation élevés. De plus, d’une part, trop de points d’échantillonnage pour un objet complet peuvent entraîner une segmentation incorrecte de différentes sections de l’objet en masques distincts, tandis que d’autre part, le coût temps de l’inférence du mode tout est principalement dû au fait que l’encodeur d’image a été réduit de manière significative. Pour réduire le coût d’exploitation du mode tout, le cadre TinySAM utilise une approche de génération de masque hiérarchique, avec la différence dans la stratégie par rapport au cadre SAM d’origine démontrée dans l’image suivante.

Différent de l’approche mise en œuvre dans le cadre SAM d’origine, le modèle TinySAM n’utilise que 25 % des points de chaque côté, ce qui signifie qu’il utilise seulement 1/16 des points disponibles dans la configuration d’origine. Le modèle infère ensuite le décodeur de masque et l’encodeur d’invite avec ces invites et obtient la sortie. Le modèle filtre ensuite certains masques avec une confiance dépassant un certain seuil et masque les emplacements correspondants comme des zones pour les prédictions finales potentielles. Puisque le modèle traite ces régions comme le résultat de la segmentation d’instances avec une confiance élevée, il n’a pas besoin de générer des invites de points. La stratégie non seulement aide à prévenir la segmentation trop fine de l’objet, mais elle aide également à réduire les coûts d’exploitation et les besoins de calcul de manière significative. Le cadre fusionne ensuite et post-traite les résultats de ces deux étapes pour obtenir les masques finals.
TinySAM : Expériences et résultats
Pour accélérer le processus de distillation, le cadre TinySAM calcule et stocke les embeddings d’images du réseau d’enseignant à l’avance, ce qui signifie qu’il n’est pas nécessaire pour le modèle de calculer l’encodeur d’image lourd du réseau d’enseignant à plusieurs reprises pendant la phase d’entraînement. Pour la quantification post-formation, le cadre TinySAM quantifie toutes les couches de multiplication de matrices, les couches de convolution, les couches de déconvolution et les couches linéaires, avec le modèle utilisant des facteurs d’échelle canal par canal pour les couches de convolution et de déconvolution. Pour les couches de multiplication de matrices, le modèle met en œuvre des facteurs d’échelle tête par tête, tandis que pour les couches linéaires, le modèle met en œuvre des facteurs d’échelle linéaire par linéaire. Le modèle effectue également une évaluation sur les tâches en aval zéro-shot.
Pour les tâches de segmentation d’instances dans un contexte zéro-shot, le cadre TinySAM suit les paramètres expérimentaux de son prédécesseur, le Modèle de segmentation de tout, et utilise les résultats de détection d’objets du cadre Vision Transformer Det-H ou VitDet-H pour la segmentation d’instances. Comme démontré dans l’image suivante, le cadre TinySAM surpasse les méthodes existantes en termes de précision de segmentation d’instances et de score FLOPs.

De plus, les performances qualitatives du modèle TinySAM sont démontrées dans l’image suivante pour la segmentation d’instances zéro-shot, avec la boîte verte représentant les invites de boîte.

En termes d’évaluation de masque valide zéro-shot, le modèle TinySAM surpasse de manière significative le cadre MobileSAM sur différents ensembles de données et fournit des résultats substantiellement meilleurs lorsque le cadre utilise un nombre réduit de points comme invites.

De plus, le tableau suivant résume les résultats de l’accélération et de la réduction des besoins de calcul obtenus grâce à la stratégie de mode tout hiérarchique. Le modèle applique le même score de stabilité et la même valeur de seuil avec différentes stratégies pour une comparaison équitable, et les résultats sont résumés ci-dessous.

Pensées finales
Dans cet article, nous avons discuté du TinySAM, un cadre proposé qui pousse les limites pour segmenter n’importe quelle tâche, et obtient une architecture de modèle efficace avec moins de besoins de calcul et une précision équivalente à celle du cadre SAM d’origine. Le TinySAM ou le Tiny Segment Anything Model conserve et livre les performances zéro-shot de la trame d’origine. Le cadre TinySAM met d’abord en œuvre une méthode de distillation des connaissances à plein stage qui utilise des invites difficiles en ligne pour distiller un modèle d’étudiant léger. Le cadre TinySAM adapte ensuite la quantification post-formation aux tâches de segmentation invocables, ce qui aide à réduire encore les besoins de calcul. De plus, le cadre vise également à segmenter de manière hiérarchique tout, ce qui double presque la vitesse d’inférence sans affecter les performances.












