Artificiell intelligens
TinySAM : Pushing the Boundaries for Segment Anything Model

Objektsegmentering är ett grundläggande och kritiskt viktigt område inom modern datorseende. Det spelar en avgörande roll i applikationer som kräver omfattande visuella komponenter, såsom objektlokalisering och identifiering, och kräver realtids-, snabb och exakt segmentering. Denna betydelse har gjort objektsegmentering till ett konstant het forskningstema, med betydande arbete som har utförts inom områden som instanssegmentering, semantisk segmentering och panoptisk segmentering.
Med utvecklingen av objektsegmentering har Segment Anything Model (SAM) uppstått som ett remarkabelt verktyg, som visar utmärkta segmenteringsförmågor och snabbt antagits i olika datorseendeapplikationer. Ramverk som använder en förtränad SAM-arkitektur har uppnått imponerande prestanda i nedströmsvisionstyper. Men trots dess förmågor och höga noggrannhet i segmenteringsuppgifter, kräver SAM:s komplexa och tunga arkitektur betydande beräkningskraft, vilket hindrar dess implementering på enheter med begränsade beräkningsresurser.
För att ta itu med SAM:s beräkningsutmaningar har forskare utvecklat Tiny Segment Anything Model (TinySAM), som behåller den nollskottsprestanda som det ursprungliga ramverket har, samtidigt som det är mer lättviktigt. TinySAM använder en fullständig kunskapsdestillering med online-hårda prompter för att skapa en mer effektiv studentmodell. Post-träningskvantifiering anpassad till promptbara segmenteringsuppgifter minskar ytterligare beräkningsbehoven. Dessutom syftar TinySAM:s design till hierarkisk segmentering, vilket nästan dubblar inferenshastigheten utan att äventyra prestandan.
Den här artikeln undersöker TinySAM-ramverket, med fokus på dess grundläggande principer, arkitektur och prestanda i jämförelse med andra state-of-the-art-segmenteringsramverk. Låt oss undersöka dessa aspekter i mer detalj.
TinySAM : Effektiv Segment Anything Model
Segment Anything Model har bidragit till den snabba utvecklingen av flera datorseendeapplikationer tack vare dess berömvärda segmenteringsförmågor i kombination med en stor segmenteringsdataset som innehåller över 11 miljoner bilder och över en miljard bildmasker. Tack vare dess exceptionella prestanda på uppgifter som segmenterar objekt med godtyckliga kategorier och former, fungerar det som grunden för ramverk som utför nedströmsuppgifter som bildinpainting, objekttspårning, 3D-vision och mer. Dessutom erbjuder Segment Anything Model också remarkabel nollskottsegmentering som har gynnat känsliga industrier som arbetar med en begränsad mängd data, inklusive medicinsk forskning och medicinsk avbildning.
Även om man inte kan ifrågasätta de remarkabla segmenteringsförmågorna som Segment Anything Model erbjuder på en mängd olika nedströmsvisionstyper, har det sina nackdelar i form av en komplex arkitektur, höga beräkningskrav och betydande driftskostnader. För ett system som körs på en modern GPU kan inferenstiden för en SAM-modell vara så hög som upp till 2 sekunder för en 1024×1024-bild. Som ett resultat är det en mycket svår uppgift att implementera SAM-applikationer på enheter med begränsade beräkningsförmågor. För att övervinna detta hinder har nyliga arbeten som MobileSAM och FastSAM försökt att utveckla en SAM-modell med högre beräknings-effektivitet. MobileSAM-ramverket försöker ersätta den tunga komponenten i bildkodaren med TinyViT-arkitekturen, medan FastSAM-modellen överför segmentuppgiften till en instanssegmenteringsuppgift med endast en kategori med YoloV8-modellen. Även om dessa metoder kunde uppnå en viss grad av framgång i termer av minskade beräkningskrav, kunde de inte upprätthålla prestandan, särskilt på nedströms nollskottsuppgifter.
TinySAM eller Tiny Segment Anything Model är ett försök att minska den beräkningskrav som den nuvarande SAM-modellen har, utan att äventyra prestandan på nollskott-nedströmsuppgifter. Dessutom föreslår TinySAM-ramverket att implementera en fullständig kunskapsdestillering i sin arkitektur, i syfte att förbättra den kompakta studentnätverksförmågan. TinySAM-ramverket destillerar studentnätverket på ett slut-till-slut-sätt under övervakning av lärarnätverket från olika stadier. För att ytterligare förbättra prestandan tillåter ramverket destillationsprocessen att fokusera mer på svåra exempel genom att implementera en ytterligare online-hård prompt-provtagning. Dessutom, för att ytterligare minska beräkningskostnaderna, utsätter TinySAM-ramverket promptbara segmenteringsuppgifter för post-träningskvantifiering.
Den största delen av beräkningskraven för en Segment Anything Model beror på att modellen genererar stora masker från rutnätspunkter för att segmentera allt i bilden. För att övervinna beräkningskraven för denna segmenteringsstrategi, använder TinySAM-ramverket en hierarkisk segmenteringsstrategi som nästan dubblar inferenstiden utan att försämra prestandan. Med dessa metoder som implementeras i sin arkitektur, erbjuder TinySAM-ramverket en betydande minskning av beräkningskraven och sätter nya gränser för effektiva segmenteringsuppgifter.
TinySAM : Arkitektur och Metodik
Innan vi diskuterar TinySAM-ramverkets arkitektur och metodik, är det viktigt att först titta på dess föregångare, SAM-ramverket. Sedan dess introduktion har Segment Anything Model visat remarkabel prestanda, flexibilitet och generaliseringsförmåga över en mängd olika nedströmsvisionstyper och objektssegmenteringsuppgifter.
I sin kärna består SAM-modellen av tre undernätverk: promptkodaren, bildkodaren och maskavkodaren. Det primära syftet med promptkodaren är att koda de godtyckligt formade maskerna, inmatningspunkterna och -rutorna, samt fria texter med positionsinformation. Bildkodaren är ett tungt ViT- eller visionstransformatorbaserat nätverk som extraherar inmatningsbilden till inbäddningar. Modellen använder olika nätverk för att bearbeta de geometriska och textbaserade prompterna. Slutligen innehåller maskavkodaren en tvåvägs-transformator som tar emot utdata från prompt- och bildkodaren för att generera den slutliga maskprediktionen. Med datasetet visar SAM-ramverket remarkabel högkvalitativ segmenteringsförmåga för objekt oavsett form och kategori. Dessutom visar Segment Anything Model remarkabel prestanda och effektivitet över nollskott-nedströmsvisionstyper, inklusive objektförslag, kantdetektering, text-till-mask-prediktion och instanssegmentering. Tack vare dess högkvalitativa segmenteringsförmåga och flexibla prompterbjudanden, utgör SAM-ramverken grunden för visionapplikationer. Med det sagt, kan man inte bortse från den höga beräkningskrav som den traditionella SAM-arkitekturen har, med ett stort antal parametrar som gör det nästan omöjligt för utvecklare att distribuera SAM-baserade applikationer på enheter med begränsade resurser.
Kunskapsdestillering
Kunskapsdestillering är en viktig metod för att förbättra prestandan hos kompakta nätverk under träningsfasen. Kunskapsdestilleringsmetoden som använder utdata från lärarnätverket för att övervaka träningsprocessen för det lätta studentnätverket. Kunskapsdestilleringsmetoden kan delas in i två underkategorier: destillering för mellanliggande funktioner och destillering för nätverksutdata, med en majoritet av forskningsarbeten kring kunskapsdestillering som fokuserar på bildklassificeringsuppgifter.
Som visas i följande figur, visar TinySAM-ramverket en generisk arkitektur för TinySAM-ramverket, tillsammans med prestandaöversikten för nollskott-instanssegmenteringsuppgifter.

I den första fasen implementerar TinySAM-ramverket kunskapsdestillering som är speciellt utformad för SAM-ramverket, och för att aktivera destillationsprocessen ytterligare, använder modellen en online-hård prompt-provtagning för att utvinna svåra kunskaper till studentnätverket från lärarnätverket. I den andra fasen anpassar TinySAM-ramverket post-träningskvantifieringsmetoden till promptbara segmenteringsuppgifter och implementerar den på det lätta studentnätverket. Slutligen implementerar modellen den hierarkiska segmenteringsstrategin som är utformad för segmenteringsuppgifter, vilket nästan dubblar inferenstiden utan att försämra prestandan.
Fullständig Kunskapsdestillering
Som nämnts tidigare består Segment Anything Model av tre undernätverk i sin kärna: promptkodaren, bildkodaren och maskavkodaren, med bildkodaren som bygger på en visionstransformator och har höga beräkningskrav. För att tackla detta problem implementerar TinySAM-ramverket en fullständig kunskapsdestillering som guidar det lätta bildkodningsnätverket från lärandenivå till flera kunskapsnivåer. Utöver den konventionella förlusten mellan ground-truth-etiketterna och de predikterade resultaten, introducerar TinySAM-ramverket flera destillationsförluster under olika stadier, som visas i följande figur.

Kvantifiering
Modellkvantifiering är en populär metod i datorseende-ramverk och används för att komprimera modellen genom att kvantifiera vikter eller aktiveringar från högre till lägre bandbredd i ett försök att minska beräkningskomplexitet och lagringskrav utan att försämra utdatans kvalitet betydligt.
Det primära syftet med kvantifiering i TinySAM är att projicera flyttals-tensorn till bit-integer-tensorn med en skalningsfaktor, med måttet för att mäta avståndet mellan matris-multiplikationen och den kvantifierade matrisen som spelar en viktig roll för att optimera skalningsfaktorn.
Hierarkisk Segmentering
Segment Anything Model föreslår att använda en automatisk maskgenerator som provar punkter som ett rutnät för att segmentera allt i bilden. Men det har visats att användningen av ett tätt punktrutnät resulterar i överfinmaskade segmenteringsutdata och processen kräver betydande beräkningskrav och incurrerar höga driftskostnader. Dessutom kan för många sampelpunkter för ett komplett objekt resultera i att olika delar av objektet segmenteras felaktigt som separata masker, medan å andra sidan, tidskostnaden för allt-lägen-inferens huvudsakligen beror på att bildkodaren har minskats betydligt. För att minska driftskostnaderna för allt-läget, använder TinySAM-ramverket en hierarkisk maskgenereringsstrategi, med skillnaden i strategin med det ursprungliga SAM-ramverket som visas i följande bild.

Till skillnad från strategin som implementeras i det ursprungliga SAM-ramverket, använder TinySAM-modellen endast 25% punkter på varje sida, vilket innebär att den använder endast 1/16 av de tillgängliga punkterna i den ursprungliga inställningen. Modellen inför sedan maskavkodaren och promptkodaren med dessa prompter och får utdata. Modellen filtrerar sedan vissa masker med en tillförlitlighet som överstiger en viss tröskel, och maskerar de motsvarande platserna som områden för potentiella slutliga prediktioner. Eftersom modellen behandlar dessa områden som segmenteringsresultat för instanser med hög tillförlitlighet, har den ingen anledning att generera punktprompter. Strategin förhindrar inte bara överfinmaskad segmentering av objektet, utan minskar också driftskostnaderna och beräkningskraven betydligt. Ramverket sammanfogar och efterbearbetar resultaten från dessa två omgångar för att få den slutliga masken.
TinySAM : Experiment och Resultat
För att påskynda destillationsprocessen beräknar och lagrar TinySAM-ramverket bildinbäddningarna från lärarnätverket i förväg, vilket innebär att det inte är nödvändigt för modellen att beräkna den tunga bildkodaren i lärarnätverket upprepade gånger under träningsfasen. För post-träningskvantifiering kvantifierar TinySAM-ramverket alla matris-multiplikationslagren, konvolutionslagren, dekonvolutionslagren och linjära lagren, med modellen som använder kanalskalningsfaktorer för både konvolutions- och dekonvolutionslagren. För matris-multiplikationslagren implementerar modellen huvudvisa skalningsfaktorer, medan den för linjära lagren implementerar linjära skalningsfaktorer. Modellen genomför också utvärdering på nollskott-nedströmsuppgifter.
För instanssegmenteringsuppgifter i en nollskott-inställning, följer TinySAM-ramverket den experimentella inställningen för sin föregångare, Segment Anything Model, och använder objektidentifieringsresultat från Vision Transformer Det-H eller VitDet-H-ramverket för instanssegmentering. Som visas i följande bild, överträffar TinySAM-ramverket befintliga metoder i termer av instanssegmenteringsnoggrannhet och FLOPs-poäng.

Dessutom visas den kvalitativa prestandan för TinySAM-modellen i följande bild för nollskott-instanssegmentering, med den gröna rutan som representerar box-prompter.

I termer av nollskott-punkters giltiga maskutvärdering, överträffar TinySAM-modellen MobileSAM-ramverket betydligt på olika dataset, och levererar avsevärt bättre resultat när färre punkter används som prompter av ramverket.

Dessutom sammanfattar följande tabell resultaten av accelerationen och minskningen av beräkningskraven som uppnåtts som ett resultat av den hierarkiska allt-lägesstrategin. Modellen tillämpar samma stabilitetspoäng och tröskelvärde med olika strategier för en rättvis jämförelse, och resultaten sammanfattas nedan.

Slutliga Tankar
I den här artikeln har vi diskuterat TinySAM, ett föreslaget ramverk som förändrar gränserna för segmenteringsuppgifter, och erhåller en effektiv modellarkitektur med färre beräkningskrav och noggrannhet som är jämförbar med den ursprungliga SAM-ramverket. TinySAM eller Tiny Segment Anything Model som upprätthåller och levererar den nollskott-prestanda som det ursprungliga ramverket har. TinySAM-ramverket implementerar först en fullständig kunskapsdestillering som använder online-hårda prompter för att destillera en lätt studentmodell. TinySAM-ramverket anpassar sedan post-träningskvantifieringen till promptbara segmenteringsuppgifter, vilket ytterligare minskar beräkningskraven. Dessutom syftar ramverket till att segmentera allt hierarkiskt, vilket nästan dubblar inferenstiden utan att försämra prestandan.












