AI-modeller og plattformer

TinySAM : Effektiv Segment Anything Modell

mm
Legg til Unite.AI blant dine foretrukne kilder på Google

Objektsegmentering er et grunnleggende og kritisk viktig område i moderne datavisjon. Det spiller en vital rolle i applikasjoner som krever omfattende visuelle komponenter, som objektlokalisering og -identifisering, og krever sanntids-, rask og nøyaktig segmentering. Denne betydningen har gjort objektsegmentering til et konstant varmt forskningsemne, med betydelig arbeid gjort i områder som instanssegmentering, semantisk segmentering og panoptisk segmentering.

Med utviklingen av objektsegmentering, har Segment Anything Model (SAM) dukket opp som et bemerkelsesverdig verktøy, som viser fremragende segmenteringsferdigheter og raskt blir tatt i bruk i ulike datavisjonsapplikasjoner. Rammer som bruker en forhånds trenet SAM-arkitektur har oppnådd imponerende resultater i nedstrøms visjonstasks. Men, til tross for dens evner og høy nøyaktighet i segmenteringsoppgaver, krever SAMs komplekse og tunge arkitektur betydelig beregningskraft, og hindrer dens implementering på enheter med begrensede ressurser.

For å møte SAMs beregningsutfordringer, har forskere utviklet Tiny Segment Anything Model (TinySAM), som beholder null-skudds ytelsen til den opprinnelige rammen, mens den er mer lettvekt. TinySAM bruker en fullstendig kunnskapsdestillasjonsmetode med online hard prompts for å skape en mer effektiv studentmodell. Post-trening kvantisering tilpasset promptable segmenteringsoppgaver reduserer ytterligere beregningsbehov. I tillegg søker TinySAMs design å segmentere alt hierarkisk, noe som nesten doblerer inferenshastigheten uten å påvirke ytelsen.

Denne artikkelen dykker ned i TinySAM-rammen, og utforsker dens grunnleggende prinsipper, arkitektur og ytelse sammenlignet med andre state-of-the-art segmenteringsrammer. La oss utforske disse aspektene i mer detalj.

TinySAM : Effektiv Segment Anything Modell

Segment Anything Model har bidratt til rask fremgang i flere datavisjonsapplikasjoner takket være dens bemerkelsesverdige segmenteringsferdigheter kombinert med en massiv segmenteringsdataset som huset over 11 millioner bilder og over en milliard bilde masker. Takket være dens usedvanlige ytelse på oppgaver som segmenterer objekter med vilkårlige kategorier og former, tjener det som grunnlag for rammer som utfører nedstrøms oppgaver som bilde innfylling, objektsporing, 3D-visjon og mer. Videre tilbyr Segment Anything Model også bemerkelsesverdig null-skudds segmentering som har fordelt sensitive industrier som arbeider med begrenset mengde data, inkludert medisinsk forskning og medisinsk bildebehandling.

Selv om man ikke kan betvile de bemerkelsesverdige segmenteringsferdighetene tilbudt av Segment Anything Model på en rekke nedstrøms visjonstasks, har det sine ulemper i form av en kompleks arkitektonisk overbelastning, høye beregningskrav og betydelige driftskostnader. For et system som kjører på en moderne GPU, kan inferenstiden for en SAM-modell være så høy som opptil 2 sekunder for et 1024×1024 bilde. Som et resultat er det en svært vanskelig oppgave å implementere SAM-applikasjoner på enheter med begrensede ressurser. For å overvinne denne hindringen, har nyere arbeid som MobileSAM og FastSAM forsøkt å utvikle en SAM-modell med mer beregnings-effektivitet. MobileSAM-rammen forsøker å erstatte den tunge komponenten i bilde-encoderen med TinyViT-arkitekturen, mens FastSAM-modellen overfører segment-oppgaven til en instans-segmenteringsoppgave med bare en kategori med YoloV8-modellen. Selv om disse metodene klarte å oppnå en viss suksess i form av reduksjon av beregningskrav, klarte de ikke å opprettholde ytelsen, spesielt på nedstrøms null-skudds oppgaver.

TinySAM eller Tiny Segment Anything Model er et forsøk på å redusere beregningskravet til den nåværende SAM-modellen uten å hindre ytelsen på null-skudds nedstrøms oppgaver. Videre foreslår TinySAM-rammen å implementere en fullstendig kunnskapsdestillasjonsmetode i sin arkitektur med målet om å forbedre evnen til den kompakte studentnettverket. TinySAM-rammen destillerer studentnettverket på en slutt-til-slutt måte under tilsyn av lærer nettverket fra ulike stadier. For å forbedre ytelsen ytterligere, tillater rammen destillasjonsprosessen å fokusere mer på vanskelige eksempler ved å implementere en ekstra online hard prompt-sampling strategi. Videre, for å ytterligere redusere beregningskostnader, eksponerer TinySAM-rammen promptable segmenteringsoppgaver til post-trening kvantisering komponenter.

Den største delen av beregningskravet til en Segment Anything Model skyldes at modellen genererer massive masker fra grid-punkter til å segmentere alt i bildet. For å overvinne beregningskravet til denne segmenteringsstrategien, bruker TinySAM-rammen en hierarkisk segmenter alt-strategi som nesten doblerer inferenshastigheten uten å påvirke ytelsen. Med disse metodene implementert i sin arkitektur, tilbyr TinySAM-rammen en betydelig reduksjon i beregningskrav og setter nye grenser for effektive segment alt-oppgaver.

TinySAM : Arkitektur og Metodologi

Før vi diskuterer arkitekturen og metodologien til TinySAM-rammen, er det viktig å først se på dens forgjenger, SAM-rammen. Siden dens introduksjon, har Segment Anything Model vist fremragende ytelse, fleksibilitet og generaliseringsferdigheter på en rekke nedstrøms visjon- og objektsegmenteringsoppgaver.

I sin kerne består SAM-modellen av tre undernettverk: prompt-encoderen, bilde-encoderen og mask-decoderen. Det primære målet med prompt-encoderen er å kode vilkårlige formede masker, inndata-punkter og -bokser, og frie tekstformer med posisjonsinformasjon. Bilde-encoderen er et tungt ViT- eller visjonstransformator-basert nettverk som ekstraherer inndata-bildet til innkapslinger. Modellen bruker ulike nettverk til å prosessere geometriske og tekst-prompts. Til slutt inneholder mask-decoderen en to-vei-transformator som mottar utgangen av prompt- og bilde-encoderen for å generere den endelige mask-prediksjonen. Med datasettet demonstrerer SAM-rammen fremragende høykvalitets segmenteringsferdigheter for objekter uavhengig av deres form og kategori. Videre demonstrerer Segment Anything Model fremragende ytelse og effektivitet på null-skudds nedstrøms visjonstasks, inkludert objekt-forslag, kant-deteksjon, tekst-til-mask-prediksjon og instans-segmentering. Takket være dens høykvalitets segmenteringsferdigheter og fleksible prompt-tilbud, danner SAM-rammene grunnlaget for visjonsapplikasjoner. Med det sagt, kan man ikke ignorere de høye beregningskravene til den tradisjonelle SAM-arkitekturen med et stort antall parametre, noe som gjør det nesten umulig for utviklere å distribuere SAM-baserte applikasjoner på enheter med begrensede ressurser.

Kunnskapsdestillasjon

Kunnskapsdestillasjon er en viktig tilnærming for å forbedre ytelsen til kompakte nettverk under treningsfasen. Kunnskapsdestillasjonsmetoden som bruker utgangen av lærer nettverket til å overvåke treningsfasen til det lette student nettverket. Kunnskapsdestillasjonsmetoden kan deles inn i to underkategorier: destillasjon for mellomliggende egenskaper og destillasjon for nettverksutgang, med en majoritet av forskningsarbeid rundt kunnskapsdestillasjon som fokuserer på bilde-klassifiseringsoppgaver.

Som det følger, demonstrerer følgende figur den generiske arkitekturen til TinySAM-rammen sammen med ytelsesoversikten på null-skudds instans-segmenteringsoppgaver.

I den første fasen, implementerer TinySAM-rammen kunnskapsdestillasjon designet spesifikt for SAM-rammen, og for å aktivere destillasjonsprosessen ytterligere, bruker modellen en ekstra online hard prompt-sampling for å mine hard kunnskap til student nettverket fra lærer nettverket. I den andre fasen, tilpasser TinySAM-rammen post-trening kvantisering metoden til promptable segmenteringsoppgaver og implementerer den på det lette student nettverket. Til slutt, implementerer modellen en hierarkisk segmenter alt-inferensmodus designet for segmenteringsoppgaver, noe som resulterer i en nesten dobling av inferenshastigheten med ubetydelig nøyaktighets tap.

Fullstendig Kunnskapsdestillasjon

Som nevnt tidligere, består Segment Anything Model av tre undernettverk i sin kerne: prompt-encoderen, bilde-encoderen og mask-decoderen, med bilde-encoder-komponenten bygget på en visjonstransformator og har høye beregningskrav. For å takle dette problemet, implementerer TinySAM-rammen en fullstendig kunnskapsdestillasjonsmetode som guider det lette bilde-encoderen fra læringen til den multiple kunnskapsnivå. I tillegg til den konvensjonelle tapen mellom grunn-sannhetslabelene og de predikerte resultatene, introduserer TinySAM-rammen flere destillasjons-tap under ulike faser, som vist i følgende figur.

Kvantiseringsmetode

Modell kvantiseringsmetode er en populær tilnærming i datavisjonsrammer, og brukes til å komprimere modellen ved å kvantisere vekter eller aktiveringer fra høyere til lavere båndbredde i et forsøk på å redusere beregningskompleksitet og lagringskrav uten å påvirke utgangskvaliteten betydelig.

Det primære målet med kvantiseringsmetoden i TinySAM er å projicere flytende punkt-tensoren til bit-integer-tensoren ved hjelp av en skaleringsfaktor, med målet for å måle avstanden mellom matrisemultiplikasjon og kvantisert matrise som spiller en vital rolle for å optimalisere skaleringsfaktoren.

Hierarkisk Segment Alt

Segment Anything Model foreslår å bruke en automatisk mask-generering som sampler punkter som et grid for å segmentere alt i bildet. Men, det har vært indikert at bruken av en tett punkt-grid resulterer i over-fine-grainede segmenteringsutganger og prosessen krever massive beregningskrav og incurs høye driftskostnader. Videre, på den ene siden, kan for mange sampling-punkter for et fullstendig objekt resultere i at ulike seksjoner av objektet blir segmentert feil som separate masker, mens på den andre siden, er tiden kostnaden for alt-inferensen hovedsakelig på grunn av at bilde-encoderen har blitt kraftig redusert. For å redusere driftskostnadene til alt-inferens, bruker TinySAM-rammen en hierarkisk mask-genereringsmetode, med forskjellen i strategien sammenlignet med den opprinnelige SAM-rammen vist i følgende bilde.

Forskjellig fra tilnærmingen implementert i den opprinnelige SAM-rammen, bruker TinySAM-modellen bare 25% punkter på hver side, og utnytter dermed bare 1/16 av de tilgjengelige punktene i den opprinnelige innstillingen. Modellen infererer så mask-decoderen og prompt-encoderen med disse promptene og får utgangen. Modellen filterer deretter noen masker med en tillit som overstiger en bestemt terskelverdi, og maskerer de tilsvarende lokasjonene som områder for potensielle endelige prediksjoner. Siden modellen behandler disse regionene som segmenteringsresultatet av instanser med høy tillit, har den ingen behov for å generere punkt-prompter. Strategien hjelper ikke bare med å forhindre over-fine-grainede segmentering av objektet, men den hjelper også med å redusere driftskostnadene og beregningskravene betydelig. Rammen mergerer og post-prosesserer deretter resultater fra disse to rundene for å oppnå de endelige maskene.

TinySAM : Eksperimenter og Resultater

For å akselerere destillasjonsprosessen, beregner og lagrer TinySAM-rammen bilde-innkapslingene fra lærer nettverket på forhånd, og det er derfor ikke nødvendig for modellen å beregne den tunge bilde-encoderen til lærer nettverket gjentatte ganger under treningsfasen. For post-trening kvantisering, kvantiserer TinySAM-rammen alle matrisemultiplikasjonslagene, konvolusjonslagene, dekonvolusjonslagene og lineære lagene, med modellen som bruker kanal-vis skaleringsfaktorer for både konvolusjons- og dekonvolusjonslagene. For matrisemultiplikasjonslagene, implementerer modellen hode-vis skaleringsfaktorer, mens for lineære lagene, implementerer modellen lineære skaleringsfaktorer. Modellen gjennomfører også evaluering på null-skudds nedstrøms oppgaver.

For instans-segmenteringsoppgaver i en null-skudds innstilling, følger TinySAM-rammen de eksperimentelle innstillingene til sin forgjenger, Segment Anything Model, og bruker objekt-deteksjonsresultater fra Vision Transformer Det-H eller VitDet-H-rammen for instans-segmentering. Som vist i følgende bilde, overgår TinySAM-rammen eksisterende metoder i form av instans-segmenteringsnøyaktighet og FLOPs-poeng.

Videre demonstreres den kvalitative ytelsen til TinySAM-modellen i følgende bilde for null-skudds instans-segmentering, med den grønne boksen som representerer boks-prompter.

I form av null-skudds punkt-gyldige mask-evaluering, overgår TinySAM-modellen MobileSAM-rammen betydelig på ulike datasett, og leverer vesentlig bedre resultater når færre punkter brukes som prompter av rammen.

Videre summerer følgende tabell resultater fra akselerasjon og reduksjon i beregningskrav som oppnås som et resultat av den hierarkiske alt-inferens-strategien. Modellen anvender samme stabilitetspoeng og terskelverdi med ulike strategier for en rettferdig sammenligning, og resultater summeres nedenfor.

Slutt tanker

I denne artikkelen har vi diskutert TinySAM, en foreslått ramme som presses grensene for å segmentere enhver oppgave, og oppnår en effektiv modell-arkitektur med færre beregningskrav og nøyaktighet på lik linje med den opprinnelige SAM-rammen. TinySAM eller Tiny Segment Anything Model som beholder og leverer null-skudds ytelsen til den opprinnelige rammen. TinySAM-rammen implementerer først en fullstendig kunnskapsdestillasjonsmetode som bruker online hard prompts for å destillere en lett studentmodell. TinySAM-rammen tilpasser deretter post-trening kvantisering til promptable segmenteringsoppgaver, noe som ytterligere hjelper med å redusere beregningskravene. Videre søker rammen å segmentere alt hierarkisk, noe som nesten doblerer inferenshastigheten uten å påvirke ytelsen.

En ingeniør av yrke, en forfatter av hjerte. Kunal er en teknisk forfatter med en dyp kjærlighet og forståelse av AI og ML, dedikert til å forenkle komplekse konsepter i disse feltene gjennom sin engasjerende og informerende dokumentasjon.