Artificial Intelligence
DiffSeg: Zero-Shot-segmentatie zonder toezicht met behulp van stabiele diffusie

Een van de belangrijkste uitdagingen bij op computervisie gebaseerde modellen is het genereren van hoogwaardige segmentatiemaskers. Recente ontwikkelingen op het gebied van grootschalige training onder toezicht hebben zero-shot-segmentatie over verschillende beeldstijlen mogelijk gemaakt. Bovendien heeft training zonder toezicht de segmentatie vereenvoudigd zonder de noodzaak van uitgebreide annotaties. Ondanks deze ontwikkelingen blijft het construeren van een computer vision-framework dat alles in een zero-shot-omgeving kan segmenteren, zonder annotaties, een complexe taak. Semantische segmentatie, een fundamenteel concept in computer vision-modellen, omvat het verdelen van een afbeelding in kleinere gebieden met uniforme semantiek. Deze techniek legt de basis voor tal van vervolgtaken, zoals medische beeldvorming, beeldbewerking, autonoom rijden en meer.
Om de ontwikkeling van computer vision-modellen te bevorderen, is het van cruciaal belang dat beeldsegmentatie niet beperkt blijft tot een vaste dataset met beperkte categorieën. In plaats daarvan zou het moeten fungeren als een veelzijdige basistaak voor verschillende andere toepassingen. De hoge kosten van het verzamelen van labels per pixel vormen echter een aanzienlijke uitdaging, waardoor de voortgang wordt beperkt van zero-shot- en gecontroleerde segmentatiemethoden die geen annotaties vereisen en voorafgaande toegang tot het doel ontberen. In dit artikel wordt besproken hoe zelfaandacht ontstaat stabiele diffusiemodellen kan de creatie vergemakkelijken van een model dat elke invoer in een zero-shot-setting kan segmenteren, zelfs zonder de juiste annotaties. Deze zelfaandachtslagen begrijpen inherent objectconcepten die zijn geleerd door een vooraf getraind stabiel diffusiemodel.
DiffSeg: een verbeterd zero-shot-segmentatie-algoritme
Semantische segmentatie is een proces waarbij een afbeelding in verschillende secties wordt verdeeld, waarbij elke sectie een vergelijkbare semantiek deelt. Deze techniek vormt de basis voor tal van vervolgtaken. Traditioneel waren zero-shot computer vision-taken afhankelijk van semantische segmentatie onder toezicht, waarbij gebruik werd gemaakt van grote datasets met geannoteerde en gelabelde categorieën. Het implementeren van semantische segmentatie zonder toezicht in een zero-shot-omgeving blijft echter een uitdaging. Hoewel traditionele methoden onder toezicht effectief zijn, zijn de etiketteringskosten per pixel vaak onbetaalbaar, wat de noodzaak benadrukt van het ontwikkelen van niet-gecontroleerde segmentatiemethoden in een minder restrictieve zero-shot-setting, waarbij het model geen geannoteerde gegevens of voorafgaande kennis van de gegevens vereist.
Om deze beperking aan te pakken introduceert DiffSeg een nieuwe nabewerkingsstrategie, waarbij gebruik wordt gemaakt van de mogelijkheden van het Stable Diffusion-framework om een ​​generiek segmentatiemodel te bouwen dat in staat is tot zero-shot-overdracht op elk beeld. Stabiele diffusieframeworks hebben hun doeltreffendheid bewezen bij het genereren van beelden met hoge resolutie op basis van snelle omstandigheden. Voor gegenereerde afbeeldingen kunnen deze raamwerken segmentatiemaskers produceren met behulp van overeenkomstige tekstprompts, die doorgaans alleen dominante voorgrondobjecten bevatten.
DiffSeg is daarentegen een innovatieve nabewerkingsmethode die segmentatiemaskers creëert door gebruik te maken van aandachtstensoren uit de zelfaandachtslagen in een diffusiemodel. Het DiffSeg-algoritme bestaat uit drie belangrijke componenten: iteratieve samenvoeging van aandacht, aggregatie van aandacht en niet-maximale onderdrukking, zoals geïllustreerd in de volgende afbeelding.
Het DiffSeg-algoritme bewaart visuele informatie over meerdere resoluties door de 4D-aandachtstensoren met ruimtelijke consistentie samen te voegen en een iteratief samenvoegproces te gebruiken door ankerpunten te bemonsteren. Deze ankers dienen als lanceerplatform voor de samensmeltende aandachtsmaskers waarbij uiteindelijk dezelfde objectankers worden geabsorbeerd. Het DiffSeg-framework bestuurt het samenvoegproces met behulp van KL-divergentiemethode om de gelijkenis tussen twee aandachtskaarten te meten.
In vergelijking met op clustering gebaseerde, niet-gecontroleerde segmentatiemethoden hoeven ontwikkelaars het aantal clusters niet vooraf in het DiffSeg-algoritme te specificeren, en zelfs zonder enige voorkennis kan het DiffSeg-algoritme segmentatie produceren zonder gebruik te maken van extra bronnen. Over het algemeen is het DiffSeg-algoritme “Een nieuwe, onbewaakte zero-shot segmentatiemethode die gebruik maakt van een vooraf getraind Stable Diffusion-model en beelden kan segmenteren zonder aanvullende middelen of voorafgaande kennis."
DiffSeg: fundamentele concepten
DiffSeg is een nieuw algoritme dat voortbouwt op de lessen van diffusiemodellen, ongecontroleerde segmentatie en zero-shot-segmentatie.
Verspreidingsmodellen
Het DiffSeg-algoritme bouwt voort op de lessen van vooraf getrainde diffusiemodellen. Diffusiemodellen zijn een van de meest populaire generatieve raamwerken voor computervisiemodellen en leren het voorwaartse en achterwaartse diffusieproces van een bemonsterd isotroop Gaussiaans ruisbeeld om een ​​beeld te genereren. Stabiele diffusie is de meest populaire variant van diffusiemodellen en wordt gebruikt om een ​​breed scala aan taken uit te voeren, waaronder gesuperviseerde segmentatie, zero-shot classificatie, semantische correspondentiematching, labelefficiënte segmentatie en segmentatie met open woordenschat. Het enige probleem met diffusiemodellen is echter dat ze afhankelijk zijn van hoogdimensionale visuele kenmerken om deze taken uit te voeren, en dat ze vaak aanvullende training nodig hebben om volledig van deze kenmerken te kunnen profiteren.
Ongecontroleerde segmentatie
Het DiffSeg-algoritme is nauw verwant aan segmentatie zonder toezicht, een moderne AI-praktijk die tot doel heeft dichte segmentatiemaskers te genereren zonder gebruik te maken van annotaties. Om goede prestaties te leveren, hebben niet-gecontroleerde segmentatiemodellen echter enige voorafgaande training zonder toezicht nodig over de doeldataset. Ongecontroleerde, op segmentatie gebaseerde AI-frameworks kunnen worden gekarakteriseerd in twee categorieën: clustering met behulp van vooraf getrainde modellen, en clustering op basis van invariantie. In de eerste categorie maken de raamwerken gebruik van de onderscheidende kenmerken die door vooraf getrainde modellen zijn geleerd om segmentatiemaskers te genereren, terwijl raamwerken die zich in de tweede categorie bevinden een generiek clusteralgoritme gebruiken dat de wederzijdse informatie tussen twee afbeeldingen optimaliseert om afbeeldingen in semantische clusters te segmenteren. en gedegenereerde segmentatie vermijden.
Zero-Shot-segmentatie
Het DiffSeg-algoritme is nauw verwant aan zero-shot-segmentatieframeworks, een methode met de mogelijkheid om alles te segmenteren zonder enige voorafgaande training of kennis van de gegevens. Zero-shot-segmentatiemodellen hebben de afgelopen tijd uitzonderlijke zero-shot-overdrachtsmogelijkheden getoond, hoewel ze enige tekstinvoer en aanwijzingen vereisen. Het DiffSeg-algoritme maakt daarentegen gebruik van een diffusiemodel om segmentatie te genereren zonder meerdere afbeeldingen te bevragen en te synthetiseren en zonder de inhoud van het object te kennen.
DiffSeg: Methode en Architectuur
Het DiffSeg-algoritme maakt gebruik van de zelfaandachtslagen in een vooraf getraind stabiel diffusiemodel om segmentatietaken van hoge kwaliteit te genereren.
Stabiel diffusiemodel
Stabiele diffusie is een van de fundamentele concepten in het DiffSeg-framework. Stable Diffusion is een generatief AI-framework en een van de meest populaire diffusiemodellen. Een van de belangrijkste kenmerken van een diffusiemodel is een voorwaartse en een achterwaartse doorgang. Bij de voorwaartse doorgang wordt bij elke tijdstap iteratief een kleine hoeveelheid Gaussische ruis aan een beeld toegevoegd totdat het beeld een isotroop Gaussisch ruisbeeld wordt. Aan de andere kant verwijdert het diffusiemodel bij de omgekeerde doorgang iteratief de ruis in het isotrope Gaussiaanse ruisbeeld om het originele beeld te herstellen zonder enige Gaussische ruis.
Het Stable Diffusion-framework maakt gebruik van een encoder-decoder en een U-Net-ontwerp met aandachtslaag waarbij het een encoder gebruikt om een ​​afbeelding eerst te comprimeren in een latente ruimte met kleinere ruimtelijke afmetingen, en de decoder gebruikt om de afbeelding te decomprimeren. De U-Net-architectuur bestaat uit een stapel modulaire blokken, waarbij elk blok is samengesteld uit een van de volgende twee componenten: een Transformer Layer en een ResNet-laag.
Componenten en architectuur
Zelfaandachtslagen in diffusiemodellen die informatie van inherente objecten groeperen in de vorm van ruimtelijke aandachtskaarten, en DiffSeg is een nieuwe naverwerkingsmethode om aandachtstensoren samen te voegen tot een geldig segmentatiemasker, waarbij de pijplijn uit drie hoofdcomponenten bestaat: aandachtsaggregatie, niet-maximale onderdrukking en iteratieve aandacht.
Aandacht aggregatie
Voor een invoerbeeld dat door de U-Net-lagen en de Encoder gaat, genereert het Stable Diffusion-model in totaal 16 aandachtstensoren, met 5 tensoren voor elk van de dimensies. Het primaire doel van het genereren van 16 tensoren is om deze aandachtstensoren met verschillende resoluties samen te voegen tot een tensor met de hoogst mogelijke resolutie. Om dit te bereiken behandelt het DiffSeg-algoritme de 4 dimensies verschillend van elkaar.
Van de vier dimensies hebben de laatste twee dimensies in de aandachtssensoren verschillende resoluties, maar ze zijn ruimtelijk consistent omdat de 2D ruimtelijke kaart van het DiffSeg-framework overeenkomt met de correlatie tussen de locaties en de ruimtelijke locaties. Het resultaat is dat het DiffSeg-framework deze twee dimensies van alle aandachtskaarten bemonstert met de hoogste resolutie van allemaal, 2 x 64. Aan de andere kant geven de eerste twee dimensies de locatiereferentie van de aandachtskaarten aan, zoals gedemonstreerd in de volgende afbeelding.
Omdat deze dimensies verwijzen naar de locatie van de aandachtskaarten, moeten de aandachtskaarten dienovereenkomstig worden geaggregeerd. Om ervoor te zorgen dat de geaggregeerde aandachtskaart een geldige verdeling heeft, normaliseert het raamwerk bovendien de verdeling na aggregatie, waarbij aan elke aandachtskaart een gewicht wordt toegekend dat evenredig is aan de resolutie ervan.
Iteratieve aandacht samenvoegen
Hoewel het primaire doel van aandachtsaggregatie het berekenen van een aandachtstensor was, is het primaire doel om de aandachtskaarten in de tensor samen te voegen tot een stapel objectvoorstellen waarbij elk individueel voorstel de materiaalcategorie of de activering van een enkel object bevat. De voorgestelde oplossing om dit te bereiken is door een K-Means-algoritme te implementeren op de geldige verdeling van de tensoren om de clusters van de objecten te vinden. Het gebruik van K-Means is echter niet de optimale oplossing, omdat K-Means-clustering vereist dat gebruikers vooraf het aantal clusters specificeren. Bovendien kan het implementeren van een K-Means-algoritme resulteren in verschillende resultaten voor hetzelfde beeld, omdat het stochastisch afhankelijk is van de initialisatie. Om deze hindernis te overwinnen, stelt het DiffSeg-framework voor om een ​​steekproefraster te genereren om de voorstellen te creëren door aandachtskaarten iteratief samen te voegen.
Niet-maximale onderdrukking
De vorige stap van het iteratief samenvoegen van aandacht levert een lijst met objectvoorstellen op in de vorm van waarschijnlijkheids-van-aandachtskaarten, waarbij elk objectvoorstel de activering van het object bevat. Het raamwerk maakt gebruik van niet-maximale onderdrukking om de lijst met objectvoorstellen om te zetten in een geldig segmentatiemasker, en het proces is een effectieve aanpak omdat elk element in de lijst al een kaart is van de waarschijnlijkheidsverdeling. Voor elke ruimtelijke locatie op alle kaarten neemt het algoritme de index met de grootste waarschijnlijkheid en wijst een lidmaatschap toe op basis van de index van de overeenkomstige kaart.
DiffSeg: experimenten en resultaten
Kaders die werken aan ongecontroleerde segmentatie maken gebruik van twee segmentatiebenchmarks, namelijk Cityscapes en COCO-stuff-27. De Cityscapes-benchmark is een zelfrijdende dataset met 27 categorieën op het middenniveau, terwijl de COCO-stuff-27-benchmark een samengestelde versie is van de originele COCO-stuff-dataset die 80 dingen en 91 categorieën samenvoegt in 27 categorieën. Om de segmentatieprestaties te analyseren, gebruikt het DiffSeg-framework bovendien gemiddelde snijpunten over unie of mIoU en pixelnauwkeurigheid of ACC, en aangezien het DiffSeg-algoritme geen semantisch label kan bieden, gebruikt het het Hongaarse matching-algoritme om een ​​grondwaarheidsmasker toe te wijzen met elk voorspeld masker. In het geval dat het aantal voorspelde maskers het aantal grondwaarheidsmaskers overschrijdt, zal het raamwerk de ongeëvenaarde voorspelde taken als vals-negatieven beschouwen.
Bovendien legt het DiffSeg-framework ook de nadruk op de volgende drie werken om interferentie uit te voeren: Language Dependency of LD, Unsupervised Adaptation of UA, en Auxiliary Image of AX. Taalafhankelijkheid betekent dat de methode beschrijvende tekstinvoer nodig heeft om de segmentatie van de afbeelding te vergemakkelijken. Ongecontroleerde aanpassing verwijst naar de vereiste voor de methode om training zonder toezicht te gebruiken op de doeldataset, terwijl Auxiliary Image verwijst dat de methode aanvullende invoer nodig heeft, hetzij in de vorm van synthetische afbeeldingen, of als een verzameling referentiebeelden.
Resultaten
Op de COCO-benchmark omvat het DiffSeg-framework twee k-means-basislijnen, K-Means-S en K-Means-C. De K-Means-C-benchmark omvat 6 clusters die worden berekend door het gemiddelde te nemen van het aantal objecten in de afbeeldingen die worden geëvalueerd, terwijl de K-Means-S-benchmark voor elke afbeelding een specifiek aantal clusters gebruikt op basis van het aantal aanwezige objecten in de grondwaarheid van de afbeelding, en de resultaten op beide benchmarks worden gedemonstreerd in de volgende afbeelding.
Zoals u kunt zien, presteert de K-Means-basislijn beter dan bestaande methoden, wat het voordeel aantoont van het gebruik van zelfaandachtstensoren. Wat interessant is, is dat de K-Means-S-benchmark beter presteert dan de K-Means-C-benchmark, die aangeeft dat het aantal clusters een fundamentele hyperparameter is, en het afstemmen ervan is belangrijk voor elk beeld. Bovendien presteert het DiffSeg-framework, zelfs als het op dezelfde aandachtstensoren vertrouwt, beter dan de K-Means-basislijnen, wat het vermogen van het DiffSeg-framework bewijst om niet alleen betere segmentatie te bieden, maar ook de nadelen te vermijden die gepaard gaan met het gebruik van K-Means-basislijnen.
Op de Cityscapes-dataset levert het DiffSeg-framework resultaten die vergelijkbaar zijn met de frameworks die input gebruiken met een lagere 320-resolutie, terwijl het beter presteert dan frameworks die hogere 512-resolutie-inputs gebruiken op het gebied van nauwkeurigheid en mIoU.
Zoals eerder vermeld, maakt het DiffSeg-framework gebruik van verschillende hyperparameters, zoals gedemonstreerd in de volgende afbeelding.
Aandachtsaggregatie is een van de fundamentele concepten die in het DiffSeg-framework worden gebruikt, en de effecten van het gebruik van verschillende aggregatiegewichten worden gedemonstreerd in de volgende afbeelding, waarbij de resolutie van de afbeelding constant is.
Zoals kan worden waargenomen, leveren kaarten met een hoge resolutie in figuur (b) met kaarten van 64 x 64 de meest gedetailleerde segmentaties op, hoewel de segmentaties enkele zichtbare breuken vertonen, terwijl 32 x 32-kaarten met een lagere resolutie de neiging hebben details te oversegmenteren, hoewel dit wel resulteert in verbeterde coherente segmentaties. In figuur (d) slagen kaarten met een lage resolutie er niet in om enige segmentatie te genereren, omdat het volledige beeld wordt samengevoegd tot een enkelvoudig object met de bestaande hyperparameterinstellingen. Ten slotte resulteert figuur (a), die gebruik maakt van een proportionele aggregatiestrategie, in verbeterde details en evenwichtige consistentie.
Conclusie
Zero-shot ongecontroleerde segmentatie is nog steeds een van de grootste hindernissen voor computer vision-frameworks, en bestaande modellen vertrouwen op niet-zero-shot ongecontroleerde aanpassing of op externe bronnen. Om deze hindernis te overwinnen, hebben we gesproken over hoe zelfaandachtslagen in stabiele diffusiemodellen de constructie van een model mogelijk kunnen maken dat in staat is elke invoer in een zero-shot-setting te segmenteren zonder de juiste annotaties, aangezien deze zelfaandachtslagen de inherente concepten bevatten van het object dat een vooraf getraind stabiel diffusiemodel leert. We hebben ook gesproken over DiffSeg, een nieuwe post-pressing-strategie, die tot doel heeft het potentieel van het Stable Diffusion-framework te benutten om een ​​generiek segmentatiemodel te construeren dat zero-shot-overdracht op elk beeld kan implementeren. Het algoritme vertrouwt op Inter-Attention Gelijkenis en Intra-Attentie Gelijkenis om aandachtskaarten iteratief samen te voegen tot geldige segmentatiemaskers om state-of-the-art prestaties op populaire benchmarks te bereiken.