AI-modellen en platforms

TinySAM : Efficiënte Segment Anything Model

mm
Voeg Unite.AI toe aan je voorkeursbronnen op Google

Objectsegmentatie is een fundamenteel en kritisch belangrijk vakgebied in de moderne computervisie. Het speelt een vitale rol in toepassingen die uitgebreide visuele componenten vereisen, zoals objectlocalisatie en -identificatie, en vereist real-time, snelle en nauwkeurige segmentatie. Deze belangrijkheid heeft ertoe geleid dat objectsegmentatie een consistent populair onderzoeksgebied is, met aanzienlijk werk verricht op gebieden zoals instance segmentatie, semantische segmentatie en panoptische segmentatie.

Met de evolutie van objectsegmentatie is het Segment Anything Model (SAM) opgekomen als een opmerkelijk instrument, met uitstekende segmentatiecapaciteiten en snel geadopteerd in diverse computervisietoepassingen. Frameworks die een vooraf getrainde SAM-architectuur gebruiken, hebben indrukwekkende prestaties behaald in downstream visietaken. Echter, ondanks zijn capaciteiten en hoge nauwkeurigheid in segmentatie taken, vereist de complexe en zware architectuur van SAM aanzienlijke rekenkracht, waardoor het moeilijk is om het te implementeren op apparaten met beperkte rekenbronnen.

Om de rekenkundige uitdagingen van SAM aan te pakken, hebben onderzoekers het Tiny Segment Anything Model (TinySAM) ontwikkeld, dat de zero-shot prestaties van het oorspronkelijke framework behoudt terwijl het lichter is. TinySAM gebruikt een full-stage kennisdistillatiemethode met online harde prompts om een efficiënter studentmodel te creëren. Post-training quantificatie aangepast aan promptable segmentatie taken vermindert de rekenkundige behoeften verder. Bovendien is de TinySAM-architectuur ontworpen voor hiërarchische segmentatie, waardoor de inferentiesnelheid bijna verdubbelt zonder de prestaties te schaden.

Dit artikel gaat dieper in op het TinySAM-framework, waarin de fundamenten, architectuur en prestaties in vergelijking met andere state-of-the-art segmentatieframeworks worden onderzocht. Laten we deze aspecten in meer detail bekijken.

TinySAM : Efficiënte Segment Anything Model

Het Segment Anything Model heeft bijgedragen aan de snelle vooruitgang van verschillende computervisietoepassingen vanwege zijn lovenswaardige segmentatiecapaciteiten in combinatie met een massive segmentatiedataset die meer dan 11 miljoen afbeeldingen en meer dan een miljard afbeeldingsmaskers bevat. Vanwege zijn uitzonderlijke prestaties op taken die objecten segmenteren met willekeurige categorieën en vormen, dient het als basis voor frameworks die downstream taken uitvoeren zoals afbeelding invoegen, objectvolging, 3D-visie en meer. Bovendien biedt het Segment Anything Model ook opmerkelijke zero-shot segmentatie prestaties die hebben geprofiteerd van gevoelige industrieën die werken met een beperkte hoeveelheid gegevens, waaronder de medische onderzoeks- en medische beeldvorming industrieën.

Hoewel men de opmerkelijke segmentatiecapaciteiten van het Segment Anything Model op een breed scala aan downstream visietaken niet in twijfel kan trekken, heeft het zijn nadelen in termen van een complexe architecturale overload, hoge rekenkundige vereisten en aanzienlijke operationele kosten. Voor een systeem dat draait op een moderne GPU, kan de inferentietijd van een SAM-model tot 2 seconden bedragen voor een 1024×1024 afbeelding. Als gevolg daarvan is het een moeilijke taak om SAM-toepassingen te implementeren op apparaten met beperkte rekenbronnen. Om deze hindernis te overwinnen, hebben recente werken zoals MobileSAM en FastSAM geprobeerd om een SAM-model met meer rekenkundige efficiëntie te ontwikkelen. Het MobileSAM-framework probeert de zware component in de afbeeldingsencoder te vervangen door de architectuur van het TinyViT-framework, terwijl het FastSAM-model de segmenttaak overdraagt aan een instance segmentatie taak met slechts één categorie met het YoloV8 model. Hoewel deze methoden enige mate van succes hebben behaald in termen van reductie van de rekenkundige vereisten, konden ze de prestaties niet behouden, vooral op downstream zero-shot taken.

TinySAM of het Tiny Segment Anything Model is een poging om de rekenkundige vereisten van het huidige SAM-model te verminderen zonder de prestaties op zero-shot downstream taken te schaden. Bovendien stelt het TinySAM-framework voor om een full-stage kennisdistillatiemethode in zijn architectuur te implementeren met als doel de capaciteit van het compacte studentennetwerk te verbeteren. Het TinySAM-framework destilleert het studentennetwerk op een eind-tot-eind manier onder toezicht van het teachernetwerk vanuit verschillende stadia. Om de prestaties verder te verbeteren, staat het framework toe dat het destillatieproces meer aandacht besteedt aan moeilijke voorbeelden door een extra online harde prompt sampling strategie te implementeren. Bovendien, om de rekenkundige kosten verder te verminderen, exposeert het TinySAM-framework de promptable segmentatie taken aan post-training quantificatie componenten.

Het grootste deel van de rekenkundige vereisten van een Segment Anything Model komt voort uit het feit dat het model massive maskers genereert vanuit de grid prompt punten om alles in de afbeelding te segmenteren. Om de rekenkundige vereisten van deze segmentatie strategie te overwinnen, gebruikt het TinySAM-framework een hiërarchische segment everything strategie die de inferentiesnelheid bijna verdubbelt zonder de prestaties te schaden. Met deze methoden geïmplementeerd in zijn architectuur, biedt het TinySAM-framework een aanzienlijke reductie in rekenkundige vereisten en stelt het nieuwe limieten voor efficiënte segment anything taken.

TinySAM : Architectuur en Methodologie

Voordat we praten over de architectuur en methodologie van het TinySAM-framework, is het belangrijk om eerst naar zijn voorganger, het SAM-framework, te kijken. Sinds zijn introductie heeft het Segment Anything Model opmerkelijke prestaties, veelzijdigheid en generalisatiecapaciteiten getoond over een breed scala aan downstream visie- en objectsegmentatie taken.

In zijn kern bestaat het SAM-model uit drie subnetwerken: de prompt encoder, de afbeeldingsencoder en de mask decoder. De primaire doelstelling van de prompt encoder is om de willekeurig gevormde maskers, invoerpunten en -boxen en vrije tekst met positionele informatie te encoderen. De afbeeldingsencoder is een zware ViT- of visietransformator gebaseerd netwerk dat de invoer afbeelding in embeddings omzet. Het model gebruikt verschillende netwerken om de geometrische en tekst prompts te verwerken. Ten slotte bevat de mask decoder een twee-weg transformer die de output van de prompt en de afbeeldingsencoder ontvangt om de uiteindelijke masker predictie te genereren. Met de dataset toont het SAM-framework opmerkelijke hoge kwaliteit segmentatie capaciteiten voor objecten ongeacht hun vorm en categorie. Bovendien toont het Segment Anything Model opmerkelijke prestaties en efficiëntie over zero-shot downstream visietaken, waaronder object voorstel, rand detectie, tekst naar masker predictie en instance segmentatie. Vanwege zijn hoge kwaliteit segmentatie capaciteiten en flexibele prompt aanbod, vormen de SAM-frameworks de basis voor visie toepassingen. Met dat gezegd, kan men de hoge rekenkundige vereisten van de traditionele SAM-architectuur met een groot aantal parameters niet negeren, waardoor het bijna onmogelijk is voor ontwikkelaars om SAM-gebaseerde toepassingen te implementeren op apparaten met beperkte middelen.

Kennisdistillatie

Kennisdistillatie is een belangrijke aanpak om de prestaties van compacte netwerken tijdens de trainingsfase te verbeteren. De kennisdistillatiemethode die de output van het teachernetwerk gebruikt om de training van het lichtgewicht studentennetwerk te superviseren. De kennisdistillatiemethode kan worden onderverdeeld in twee subcategorieën: destillatie voor tussenliggende kenmerken en destillatie voor netwerkoutput, waarbij de meeste onderzoeken naar kennisdistillatie zich richten op beeldclassificatie taken.

Met dat gezegd, toont de volgende figuur de generieke architectuur van het TinySAM-framework samen met de prestatie overzicht op zero-shot instance segmentatie taken.

In de eerste fase implementeert het TinySAM-framework kennisdistillatie specifiek ontworpen voor het SAM-framework, en om het destillatieproces verder te activeren, gebruikt het model een online harde prompt sampling om de harde kennis naar het studentennetwerk vanuit het teachernetwerk te delen. In de tweede fase past het TinySAM-framework de post-training quantificatie methode aan op promptable segmentatie taken en implementeert het deze op het lichtgewicht studentennetwerk. Ten slotte implementeert het model de hiërarchische segment everything inferentie modus ontworpen voor segmentatie taken, waardoor de inferentiesnelheid bijna verdubbelt met verwaarloosbare nauwkeurigheidsverlies.

Full-Stage Kennisdistillatie

Zoals eerder vermeld, bestaat het Segment Anything Model uit drie subnetwerken in zijn kern: de prompt encoder, de afbeeldingsencoder en de mask decoder, waarbij de afbeeldingsencoder component is gebouwd op een visietransformator en hoge rekenkundige vereisten heeft. Om dit probleem aan te pakken, implementeert het TinySAM-framework een full-stage kennisdistillatiemethode die de lichtgewicht afbeeldingsencoder vanaf het leer niveau tot het meerdere kennis niveau gidst. Naast de conventionele verlies tussen de grondwaarheidslabels en de voorspelde resultaten, introduceert het TinySAM-framework verschillende destillatie verliezen tijdens verschillende stadia, zoals getoond in de volgende figuur.

Quantificatie

Model quantificatie is een populaire aanpak in computervisie frameworks en wordt gebruikt om het model te comprimeren door gewichten of activaties van hogere naar lagere bandbreedte te quantificeren in een poging om de rekenkundige complexiteit en opslagvereisten te verminderen zonder de outputkwaliteit aanzienlijk te schaden.

Het primaire doel van quantificatie in TinySAM is om de floating point tensor te projecteren op de bit integer tensor met behulp van een schaalfactor, waarbij de meting voor het meten van de afstand tussen de matrix multiplicatie en de gequantificeerde matrix een vitale rol speelt bij het optimaliseren van de schaalfactor.

Hiërarchische Segment Anything

Het Segment Anything Model stelt voor om een automatische maskergenerator te gebruiken die punten als een grid sampleert om alles in de afbeelding te segmenteren. Echter, is het aangetoond dat het gebruik van een dichte puntgrid resulteert in over-fijne korrelige segmentatie output en het proces vereist massive rekenkundige vereisten en incasseert hoge operationele kosten. Bovendien, aan de ene kant, kan te veel sample punten voor een compleet object ertoe leiden dat verschillende secties van het object onjuist worden gesegmenteerd als afzonderlijke maskers, terwijl aan de andere kant de tijdkosten van de everything modus inferentie voornamelijk te wijten zijn aan het feit dat de afbeeldingsencoder aanzienlijk is geschrapt. Om de operationele kosten van de everything modus te verminderen, gebruikt het TinySAM-framework een hiërarchische maskergeneratie aanpak, waarbij het verschil in strategie met het oorspronkelijke SAM-framework wordt getoond in de volgende afbeelding.

Anders dan de aanpak geïmplementeerd in het oorspronkelijke SAM-framework, gebruikt het TinySAM-model slechts 25% punten op elke zijde, waardoor het slechts 1/16 van de beschikbare punten in de oorspronkelijke instelling gebruikt. Het model voert vervolgens de mask decoder en de prompt encoder met deze prompts uit en krijgt de output. Het model filtert vervolgens enkele maskers met een vertrouwensniveau dat een bepaalde drempelwaarde overschrijdt en maskert de overeenkomstige locaties als gebieden voor potentiële eindvoorspellingen. Aangezien het model deze gebieden behandelt als de segmentatie resultaten van instanties met hoge vertrouwensniveau, heeft het geen behoefte om punt prompts te genereren. De strategie helpt niet alleen bij het voorkomen van over-fijne korrelige segmentatie van het object, maar helpt ook bij het verminderen van de operationele kosten en rekenkundige vereisten aanzienlijk. Het framework merge en post-processeert vervolgens de resultaten van deze twee ronden om de uiteindelijke maskers te verkrijgen.

TinySAM : Experimenten en Resultaten

Om het destillatieproces te versnellen, berekent en slaat het TinySAM-framework de afbeeldings embeddings van het teachernetwerk van tevoren op, waardoor het niet langer nodig is voor het model om de zware afbeeldingsencoder van het teachernetwerk herhaaldelijk tijdens de trainingsfase te berekenen. Voor post-training quantificatie, quantificeert het TinySAM-framework alle matrix multiply lagen, convolutie lagen, deconvolutie lagen en lineaire lagen, waarbij het model kanaalwijze schaalfactoren voor zowel de convolutie als de deconvolutie lagen gebruikt. Voor de matrix multiply lagen, implementeert het model kop-wijze schaalfactoren, terwijl voor de lineaire lagen, het model lineaire schaalfactoren gebruikt. Het model voert ook een evaluatie uit op zero-shot downstream taken.

Voor instance segmentatie taken in een zero-shot setting, volgt het TinySAM-framework de experimentele instellingen van zijn voorganger, het Segment Anything Model, en gebruikt het object detectie resultaten van het Vision Transformer Det-H of VitDet-H framework voor instance segmentatie. Zoals getoond in de volgende afbeelding, overtreft het TinySAM-framework bestaande methoden in termen van instance segmentatie nauwkeurigheid en de FLOPs score.

Bovendien wordt de kwalitatieve prestatie van het TinySAM-model getoond in de volgende afbeelding voor zero-shot instance segmentatie, waarbij de groene doos de box prompts vertegenwoordigt.

In termen van zero-shot punten valide masker evaluatie, overtreft het TinySAM-model het MobileSAM-framework aanzienlijk op verschillende datasets en levert het aanzienlijk betere resultaten wanneer een kleinere hoeveelheid punten wordt gebruikt als prompts door het framework.

Bovendien wordt de volgende tabel samengevat met de resultaten van de versnelling en reductie in rekenkundige vereisten die zijn behaald als gevolg van de hiërarchische everything modus strategie. Het model past dezelfde stabiliteitscore en drempelwaarde toe met verschillende strategieën voor een eerlijke vergelijking, en de resultaten worden hieronder samengevat.

Slotgedachten

In dit artikel hebben we gesproken over TinySAM, een voorgesteld framework dat de grenzen van segment anything taken verlegt en een efficiënte model architectuur biedt met minder rekenkundige vereisten en nauwkeurigheid die gelijk is aan het oorspronkelijke SAM-framework. TinySAM of het Tiny Segment Anything Model dat de zero-shot prestaties van het oorspronkelijke framework behoudt. Het TinySAM-framework implementeert eerst een full-stage kennisdistillatiemethode die online harde prompts gebruikt om een lichtgewicht studentmodel te destilleren. Het TinySAM-framework past vervolgens de post-training quantificatie aan op promptable segmentatie taken, waardoor de rekenkundige vereisten verder worden vermindert. Bovendien is het framework ontworpen om alles hiërarchisch te segmenteren, waardoor de inferentiesnelheid bijna verdubbelt zonder de prestaties te schaden.

Een ingenieur van beroep, een schrijver van hart. Kunal is een technisch schrijver met een diepe liefde en begrip voor AI en ML, toegewijd aan het vereenvoudigen van complexe concepten in deze gebieden door middel van zijn boeiende en informatieve documentatie.