tynkä DiffSeg: valvomaton nolla-segmentointi vakaalla diffuusiolla - Unite.AI
Liity verkostomme!

Tekoäly

DiffSeg: valvomaton nolla-segmentointi käyttämällä vakaata diffuusiota

mm

Julkaistu

 on

DiffSeg: valvomaton nolla-segmentointi käyttämällä vakaata diffuusiota

Yksi tietokonenäköpohjaisten mallien keskeisistä haasteista on korkealaatuisten segmentointimaskien luominen. Viimeaikaiset edistysaskeleet laajamittaisessa ohjatussa koulutuksessa ovat mahdollistaneet nollakuvan segmentoinnin eri kuvatyyleissä. Lisäksi ohjaamaton koulutus on yksinkertaistanut segmentointia ilman laajoja huomautuksia. Näistä kehityksestä huolimatta tietokonenäkökehyksen rakentaminen, joka pystyy segmentoimaan mitä tahansa nollakuvassa ilman huomautuksia, on edelleen monimutkainen tehtävä. Semanttinen segmentointi, peruskäsite tietokonenäkömalleissa, sisältää kuvan jakamisen pienempiin alueisiin, joilla on yhtenäinen semantiikka. Tämä tekniikka luo perustan lukuisille myöhemmille tehtäville, kuten lääketieteelliselle kuvantamiselle, kuvankäsittelylle, autonomiselle ajolle ja muille.

Tietokonenäkömallien kehittämisen edistämiseksi on ratkaisevan tärkeää, että kuvien segmentointi ei rajoitu kiinteään tietojoukkoon, jossa on rajoitettuja luokkia. Sen sijaan sen pitäisi toimia monipuolisena perustana useille muille sovelluksille. Pikselikohtaisten tarrojen keräämisen korkeat kustannukset muodostavat kuitenkin merkittävän haasteen, mikä rajoittaa nollakuvausmenetelmien ja valvottujen segmentointimenetelmien edistymistä, jotka eivät vaadi huomautuksia ja joilla ei ole aiempaa pääsyä kohteeseen. Tässä artikkelissa käsitellään itsetuntemuksen tasoa vakaat diffuusiomallit voi helpottaa sellaisen mallin luomista, joka pystyy segmentoimaan minkä tahansa syötteen nolla-asetuksella, jopa ilman asianmukaisia ​​huomautuksia. Nämä itsehuomiokerrokset ymmärtävät luonnostaan ​​esiopetetun vakaan diffuusiomallin oppimia objektikäsitteitä.

DiffSeg: Tehostettu nollakohtasegmentointialgoritmi

Semanttinen segmentointi on prosessi, joka jakaa kuvan useisiin osiin, joista jokaisella on samanlainen semantiikka. Tämä tekniikka muodostaa perustan lukuisille loppupään tehtäville. Perinteisesti nollakuvan tietokonenäön tehtävät ovat riippuneet valvotusta semanttisesta segmentoinnista, jossa on käytetty suuria tietojoukkoja, joissa on huomautettuja ja merkittyjä luokkia. Valvomattoman semanttisen segmentoinnin toteuttaminen nolla-asetuksella on kuitenkin edelleen haaste. Vaikka perinteiset valvotut menetelmät ovat tehokkaita, niiden pikselikohtaiset merkintäkustannukset ovat usein kohtuuttomat, mikä korostaa tarvetta kehittää valvomattomia segmentointimenetelmiä vähemmän rajoittavassa nollakuvassa, jossa malli ei vaadi huomautettuja tietoja eikä tiedosta aiempaa tietoa.

Tämän rajoituksen korjaamiseksi DiffSeg esittelee uuden jälkikäsittelystrategian, joka hyödyntää Stable Diffusion -kehyksen kykyjä rakentaakseen yleisen segmentointimallin, joka pystyy siirtämään nollakuvan mihin tahansa kuvaan. Vakaat diffuusiokehykset ovat osoittaneet tehokkuutensa luotaessa korkearesoluutioisia kuvia nopeiden olosuhteiden perusteella. Luoduille kuville nämä kehykset voivat tuottaa segmentointimaskeja käyttämällä vastaavia tekstikehotteita, jotka sisältävät tyypillisesti vain hallitsevia etualan objekteja.

Sitä vastoin DiffSeg on innovatiivinen jälkikäsittelymenetelmä, joka luo segmentointimaskeja käyttämällä diffuusiomallin itsetarkkailukerrosten huomiotensoreja. DiffSeg-algoritmi koostuu kolmesta avainkomponentista: iteratiivinen huomion yhdistäminen, huomion yhdistäminen ja ei-maksimi tukahduttaminen, kuten seuraavassa kuvassa näkyy.

DiffSeg-algoritmi säilyttää visuaalisen tiedon useissa resoluutioissa aggregoimalla 4D-huomiotensorit spatiaalisella johdonmukaisuudella ja hyödyntämällä iteratiivista yhdistämisprosessia ottamalla näytteitä ankkuripisteistä. Nämä ankkurit toimivat käynnistyslevynä sulautuville huomionaamareille, joissa samat objektiankkurit imeytyvät lopulta. DiffSeg-kehys ohjaa yhdistämisprosessia avulla KL divergenssimenetelmä mittaamaan kahden huomiokartan samankaltaisuutta. 

Verrattuna klusterointiin perustuviin valvomattomiin segmentointimenetelmiin, kehittäjien ei tarvitse määrittää etukäteen klustereiden määrää DiffSeg-algoritmissa, ja DiffSeg-algoritmi voi ilman aiempaa tietoakaan tuottaa segmentointia ilman lisäresursseja. Kaiken kaikkiaan DiffSeg-algoritmi on "Uusi valvomaton ja nollakuvan segmentointimenetelmä, joka käyttää valmiiksi koulutettua Stable Diffusion -mallia ja voi segmentoida kuvia ilman lisäresursseja tai aiempaa tietoa.

DiffSeg: Peruskäsitteet

DiffSeg on uusi algoritmi, joka perustuu diffuusiomallien, valvomattoman segmentoinnin ja Zero-Shot-segmentoinnin oppimiseen. 

Diffuusiomallit

DiffSeg-algoritmi perustuu valmiiksi koulutetuista diffuusiomalleista saatuihin tietoihin. Diffuusiomallit ovat yksi suosituimmista tietokonenäkömallien generatiivisista kehyksistä, ja se oppii eteenpäin- ja taaksepäin diffuusioprosessin näytteitetystä isotrooppisesta Gaussin kohinakuvasta kuvan luomiseksi. Vakaa diffuusio on diffuusiomallien suosituin muunnelma, ja sitä käytetään monenlaisten tehtävien suorittamiseen, mukaan lukien valvottu segmentointi, nolla-luokittelu, semanttinen vastaavuussovitus, etikettitehokas segmentointi ja avoimen sanaston segmentointi. Ainoa ongelma diffuusiomalleissa on kuitenkin se, että ne perustuvat korkean ulottuvuuden visuaalisiin ominaisuuksiin näiden tehtävien suorittamisessa, ja ne vaativat usein lisäkoulutusta voidakseen hyödyntää näitä ominaisuuksia täysin. 

Valvomaton segmentointi

DiffSeg-algoritmi liittyy läheisesti valvomattomaan segmentointiin, nykyaikaiseen tekoälykäytäntöön, jonka tavoitteena on luoda tiheitä segmentointimaskeja käyttämättä mitään huomautuksia. Hyvän suorituskyvyn saavuttamiseksi valvomattomat segmentointimallit tarvitsevat kuitenkin jonkin verran aiempaa valvomatonta koulutusta kohdetietojoukosta. Valvomattomat segmentointiin perustuvat tekoälykehykset voidaan luonnehtia kahteen luokkaan: klusterointi valmiiksi koulutetuilla malleilla ja invarianssiin perustuva klusterointi. Ensimmäisessä kategoriassa viitekehykset hyödyntävät esikoulutettujen mallien oppimia erotteluominaisuuksia segmentointimaskien luomiseen, kun taas toiseen luokkaan kuuluvat puitteet käyttävät yleistä klusterointialgoritmia, joka optimoi kahden kuvan keskinäisen tiedon segmentoidakseen kuvat semanttisiksi klustereiksi. ja välttää rappeutunutta segmentointia. 

Zero-Shot -segmentointi

DiffSeg-algoritmi liittyy läheisesti zero-shot-segmentointikehykseen, menetelmään, jolla voidaan segmentoida mitä tahansa ilman aiempaa koulutusta tai tietoa tiedoista. Zero-shot-segmentointimallit ovat viime aikoina osoittaneet poikkeuksellisia nollakuvan siirtoominaisuuksia, vaikka ne vaativatkin jonkin verran tekstinsyöttöä ja kehotteita. Sitä vastoin DiffSeg-algoritmi käyttää diffuusiomallia segmentoinnin luomiseen ilman useiden kuvien kyselyä ja syntetisoimista ja tietämättä objektin sisältöä. 

DiffSeg: Menetelmä ja arkkitehtuuri

DiffSeg-algoritmi käyttää itsetarkkailukerroksia valmiiksi koulutetussa vakaassa diffuusiomallissa tuottaakseen korkealaatuisia segmentointitehtäviä. 

Vakaa diffuusiomalli

Vakaa diffuusio on yksi DiffSeg-kehyksen peruskäsitteistä. Stable Diffusion on generatiivinen tekoälykehys ja yksi suosituimmista diffuusiomalleista. Yksi diffuusiomallin pääominaisuuksista on eteenpäin- ja taaksepäin-ajo. Eteenpäin kulkevassa kuvassa pieni määrä Gaussin kohinaa lisätään kuvaan iteratiivisesti joka aikavaiheessa, kunnes kuvasta tulee isotrooppinen Gaussin kohinakuva. Toisaalta käänteisessä passissa diffuusiomalli poistaa iteratiivisesti kohinan isotrooppisesta Gaussin kohinakuvasta palauttaakseen alkuperäisen kuvan ilman Gaussin kohinaa. 

Stable Diffusion -kehys käyttää enkooderi-dekooderia ja U-Net-suunnittelua huomiokerroksella, jossa se käyttää kooderia ensin kuvan pakkaamiseen piilevään tilaan, jolla on pienempi tilamitta, ja käyttää dekooderia kuvan purkamiseen. U-Net-arkkitehtuuri koostuu pinosta modulaarisia lohkoja, joissa jokainen lohko koostuu jommastakummasta seuraavista kahdesta komponentista: Transformer Layer ja ResNet-kerros. 

Komponentit ja arkkitehtuuri

Itsehuomiokerrokset diffuusiomalleissa ryhmittelevät luontaisten kohteiden tiedot spatiaalisten huomiokarttojen muodossa, ja DiffSeg on uusi jälkikäsittelymenetelmä huomiotensorien yhdistämiseksi kelvolliseen segmentointimaskiin, jossa putki koostuu kolmesta pääkomponentista: huomion yhdistäminen, ei-maksimaalinen tukahduttaminen ja iteratiivinen huomio.

Huomion yhdistäminen

U-Net-kerrosten ja Enkooderin läpi kulkevalle syöttökuvalle Stable Diffusion -malli luo yhteensä 16 huomiotensoria, joista 5 tensoria kullekin ulottuvuudelle. 16 tensorin generoinnin ensisijainen tavoite on yhdistää nämä huomiotensorit eri resoluutioilla tensoriksi, jolla on suurin mahdollinen resoluutio. Tämän saavuttamiseksi DiffSeg-algoritmi käsittelee neljää ulottuvuutta eri tavalla kuin toisiaan. 

Neljästä ulottuvuudesta huomioanturien kahdella viimeisellä ulottuvuudella on eri resoluutiot, mutta ne ovat spatiaalisesti johdonmukaisia, koska DiffSeg-kehyksen 2D-tilakartta vastaa sijaintien ja spatiaalisten sijaintien välistä korrelaatiota. Tämän seurauksena DiffSeg-kehys ottaa näytteitä kaikista huomiokartoista näistä kahdesta ulottuvuudesta niiden kaikkien korkeimmalla resoluutiolla, 2 x 64. Toisaalta kaksi ensimmäistä ulottuvuutta osoittavat huomiokarttojen sijaintiviittauksen, kuten seuraavassa kuvassa on esitetty. 

Koska nämä mitat viittaavat huomiokarttojen sijaintiin, huomiokartat on koottava vastaavasti. Lisäksi varmistaakseen, että aggregoidulla huomiokartalla on kelvollinen jakauma, kehys normalisoi jakauman aggregoinnin jälkeen ja jokaiselle huomiokartalle annetaan sen resoluutioon verrannollinen paino. 

Iteratiivinen huomion yhdistäminen

Kun huomion yhdistämisen ensisijainen tavoite oli huomiotensorin laskeminen, ensisijainen tavoite on yhdistää tensorin huomiokartat objektiehdotusten pinoon, jossa jokainen yksittäinen ehdotus sisältää joko tavarakategorian tai yksittäisen objektin aktivoinnin. Ehdotettu ratkaisu tämän saavuttamiseksi on toteuttaa K-Means-algoritmi kelvolliseen tensoreiden jakaumaan objektien klusterien löytämiseksi. K-Meansin käyttö ei kuitenkaan ole optimaalinen ratkaisu, koska K-Means-klusterointi vaatii käyttäjien määrittämään klusterien lukumäärän etukäteen. Lisäksi K-Means-algoritmin toteuttaminen voi johtaa erilaisiin tuloksiin samalle kuvalle, koska se on stokastisesti riippuvainen alustuksesta. Esteen voittamiseksi DiffSeg-kehys ehdottaa näytteenottoruudukon luomista ehdotusten luomiseksi yhdistämällä huomiokartat iteratiivisesti. 

Ei-maksimivaimennus

Edellinen iteratiivisen huomion yhdistämisen vaihe tuottaa luettelon objektiehdotuksista todennäköisyyskarttojen muodossa, joissa jokainen kohdeehdotus sisältää objektin aktivoinnin. Kehys käyttää ei-maksimia estoa muuntaakseen objektiehdotusten luettelon kelvolliseksi segmentointimaskiksi, ja prosessi on tehokas lähestymistapa, koska jokainen luettelon elementti on jo todennäköisyysjakauman kartta. Algoritmi ottaa jokaiselle paikkakunnalle kaikissa kartoissa suurimman todennäköisyyden indeksin ja määrittää jäsenyyden vastaavan kartan indeksin perusteella. 

DiffSeg: Kokeilut ja tulokset

Valvomattoman segmentoinnin parissa työskentelevät viitekehykset käyttävät kahta segmentointikriteeriä, nimittäin kaupunkimaisemia ja COCO-stuff-27:ää. Cityscapes-benchmark on itseohjautuva tietojoukko, jossa on 27 keskitason luokkaa, kun taas COCO-stuff-27-benchmark on alkuperäisen COCO-stuff-tietojoukon kuratoitu versio, joka yhdistää 80 asiaa ja 91 luokkaa 27 kategoriaan. Lisäksi segmentoinnin suorituskyvyn analysoimiseksi DiffSeg-kehys käyttää keskimääräistä leikkauspistettä liiton tai mIoU:n yli ja pikselitarkkuutta tai ACC:tä, ja koska DiffSeg-algoritmi ei pysty tarjoamaan semanttista otsikkoa, se käyttää unkarilaista täsmäysalgoritmia määrittääkseen maan totuusmaskin jokainen ennustettu maski. Jos ennustettujen maskien määrä ylittää perustotuusmaskien määrän, kehys ottaa vertaansa vailla olevat ennustetut tehtävät väärinä negatiivisina. 

Lisäksi DiffSeg-kehys korostaa myös seuraavia kolmea työtä häiriöiden suorittamiseksi: kieliriippuvuus tai LD, valvomaton mukautus tai UA ja apukuva tai AX. Kieliriippuvuus tarkoittaa, että menetelmä tarvitsee kuvailevia tekstisyötteitä kuvan segmentoinnin helpottamiseksi. Valvomaton mukautus tarkoittaa vaatimusta, että menetelmä käyttää valvomatonta koulutusta kohdetietojoukossa, kun taas apukuva viittaa siihen, että menetelmä tarvitsee lisäsyöttöä joko synteettisinä kuvina, tai vertailukuvien yhdistelmänä. 

tulokset

COCO-benchmarkissa DiffSeg-kehys sisältää kaksi k-means-perusviivaa, K-Means-S ja K-Means-C. K-Means-C-benchmark sisältää 6 klusteria, jotka se laskee laskemalla arvioimiensa kuvien kohteiden lukumäärän keskiarvon, kun taas K-Means-S-benchmark käyttää kullekin kuvalle tiettyä määrää klustereita läsnä olevien objektien lukumäärän perusteella. kuvan todellisessa totuudessa, ja molempien vertailuarvojen tulokset esitetään seuraavassa kuvassa. 

Kuten voidaan nähdä, K-Meansin lähtötaso ylittää olemassa olevat menetelmät, mikä osoittaa itsetarkkailutensorien käytön edun. Mielenkiintoista on, että K-Means-S-benchmark ylittää K-Means-C-benchmarkin, mikä osoittaa, että klusterien määrä on perushyperparametri, ja sen virittäminen on tärkeää jokaiselle kuvalle. Lisäksi, vaikka tukeutuisi samoihin huomiotensoreihin, DiffSeg-kehys ylittää K-Meansin perusviivat, mikä todistaa DiffSeg-kehyksen kyvyn paitsi tarjota parempaa segmentointia, myös välttää K-Means-perusviivojen käytön aiheuttamia haittoja. 

Cityscapes-tietojoukossa DiffSeg-kehys tuottaa samanlaisia ​​tuloksia kuin kehyksiä, jotka käyttävät syötettä pienemmällä 320-resoluutiolla, mutta ovat parempia kuin puitteet, jotka ottavat korkeamman 512-resoluution syötteitä tarkkuuden ja miljoonien välillä. 

Kuten aiemmin mainittiin, DiffSeg-kehys käyttää useita hyperparametreja, kuten seuraavassa kuvassa näkyy. 

Huomioaggregointi on yksi DiffSeg-kehyksen peruskäsitteistä, ja erilaisten aggregointipainojen käytön vaikutukset on esitetty seuraavassa kuvassa kuvan resoluution ollessa vakio. 

Kuten voidaan havaita, kuvan (b) korkearesoluutioiset kartat 64 x 64 kartalla antavat yksityiskohtaisimmat segmentaatiot, vaikka segmentoinneissa on joitain näkyviä murtumia, kun taas alhaisemman resoluution 32 x 32 kartat yleensä ylisegmentoivat yksityiskohtia, vaikka se johtaa parannettu yhtenäinen segmentointi. Kuvassa (d) matalaresoluutioiset kartat eivät pysty generoimaan mitään segmentointia, koska koko kuva yhdistetään yksittäiseksi objektiksi olemassa olevilla hyperparametriasetuksilla. Lopuksi, kuva (a), joka käyttää suhteellista aggregointistrategiaa, johtaa parannettuihin yksityiskohtiin ja tasapainoiseen johdonmukaisuuteen. 

Loppuajatukset

Nolla-shot-valvomaton segmentointi on edelleen yksi suurimmista esteistä tietokonenäön viitekehykselle, ja nykyiset mallit ovat joko riippuvaisia ​​ei-nolla-shot-valvomattomasta mukautuksesta tai ulkoisista resursseista. Tämän esteen voittamiseksi olemme puhuneet siitä, kuinka stabiilien diffuusiomallien itsetarkkailukerrokset voivat mahdollistaa mallin rakentamisen, joka pystyy segmentoimaan minkä tahansa syötteen nolla-asetuksella ilman asianmukaisia ​​merkintöjä, koska nämä itsehuomiokerrokset sisältävät luontaiset käsitteet esine, jonka esiopetettu stabiili diffuusiomalli oppii. Olemme myös puhuneet DiffSegistä, uudesta jälkipuristusstrategiasta, jonka tavoitteena on valjastaa Stable Diffusion -kehyksen mahdollisuudet rakentaa yleinen segmentointimalli, joka voi toteuttaa nollakuvan siirron missä tahansa kuvassa. Algoritmi luottaa huomioiden väliseen samankaltaisuuteen ja huomion sisäiseen samankaltaisuuteen, joka yhdistää huomiokartat iteratiivisesti kelvollisiksi segmentointimaskeiksi saavuttaakseen huipputason suorituskyvyn suosituilla vertailuarvoilla. 

"Ammatiltaan insinööri, sydämeltään kirjailija". Kunal on tekninen kirjoittaja, jolla on syvä rakkaus ja ymmärrys tekoälystä ja ML:stä. Hän on omistautunut yksinkertaistamaan monimutkaisia ​​käsitteitä näillä aloilla kiinnostavan ja informatiivisen dokumentaationsa avulla.