Connect with us

Artificiell intelligens

UniTune: Googles alternativa för neuralt bildredigeringsverktyg

mm

Google Research verkar attackera textbaserad bildredigering från flera håll och väntar förmodligen på att se vad som “fungerar”. Hett på spåren av veckans utgivning av deras Imagic-papper, har sökjätten föreslagit en ytterligare latent diffusionsbaserad metod för att utföra annars omöjliga AI-baserade redigeringar av bilder via textkommandon, den här gången kallad UniTune.

Baserat på de exempel som ges i projektets nya papper, har UniTune uppnått en extraordinär grad av disentanglement av semantisk pose och idé från faktiskt hårt bildinnehåll:

UniTunes kommando över semantisk komposition är utmärkt. Observera hur i den översta raden av bilder, ansiktena på de två personerna inte har förvrängts av den extraordinära transformationen på resten av källbilden (höger). Källa: https://arxiv.org/pdf/2210.09477.pdf

UniTunes kommando över semantisk komposition är utmärkt. Observera hur i den översta raden av bilder, ansiktena på de två personerna inte har förvrängts av den extraordinära transformationen på resten av källbilden (höger). Källa: https://arxiv.org/pdf/2210.09477.pdf

Som Stable Diffusion-fans har lärt sig nu, kan tillämpning av redigeringar på delar av en bild utan att negativt påverka resten av bilden vara en knepig, ibland omöjlig operation. Även om populära distributioner som AUTOMATIC1111 kan skapa masker för lokala och begränsade redigeringar, är processen torterande och ofta oförutsägbar.

Det uppenbara svaret, åtminstone för en datorseendepraktiker, är att införa ett lager av semantisk segmentering som kan känna igen och isolera objekt i en bild utan användarintervention, och faktiskt har det funnits flera nya initiativ nyligen utmed denna tankeväg.

En annan möjlighet för att låsa fast oordnade neuralt bildredigeringsoperationer är att utnyttja OpenAI:s inflytelserika Contrastive Language–Image Pre-training (CLIP) modul, som ligger till grund för latenta diffusionsmodeller som DALL-E 2 och Stable Diffusion, för att fungera som en filter vid den punkt där en text-till-bild-modell är redo att skicka en tolkad render tillbaka till användaren. I detta sammanhang bör CLIP fungera som en väktare och kvalitetskontrollmodul, som avvisar felaktiga eller olämpliga render. Detta är på väg att införas (Discord-länk) på Stability.ai:s DreamStudio API-drivna portal.

Men eftersom CLIP är både boven och lösningen i ett sådant scenario (eftersom den i princip också informerade om hur bilden utvecklades), och eftersom maskinvarukraven kan överstiga vad som sannolikt är tillgängligt lokalt för en slutanvändare, kan denna metod inte vara idealisk.

Komprimerat språk

Det föreslagna UniTune “finjusterar” en befintlig diffusionsmodell – i detta fall Googles egen Imagen, fast forskarna påstår att metoden är kompatibel med andra latenta diffusionsarkitekturer – så att en unik token injiceras i den som kan anropas genom att inkludera den i en textprompt.

Till ytan verkar detta som Google DreamBooth, som för närvarande är en besatthet bland Stable Diffusion-fans och utvecklare, som kan injicera nya karaktärer eller objekt i en befintlig checkpoint, ofta på mindre än en timme, baserat på ett fåtal källbilder; eller också som Textual Inversion, som skapar “sidecar”-filer för en checkpoint, som sedan behandlas som om de ursprungligen tränades in i modellen, och kan dra nytta av modellens egna enorma resurser genom att modifiera dess textklassificerare, vilket resulterar i en liten fil (i jämförelse med de minimala 2 GB pruned checkpoints av DreamBooth).

I själva verket hävdar forskarna att UniTune avvisade båda dessa tillvägagångssätt. De fann att Textual Inversion utelämnade för många viktiga detaljer, medan DreamBooth “presterade sämre och tog längre tid” än lösningen de slutligen fastnade för.

Likväl använder UniTune samma inkapslade semantiska “metaprompt”-tillvägagångssätt som DreamBooth, med tränade förändringar som anropas av unika ord valda av tränaren, som inte kommer att krocka med några termer som för närvarande existerar i en mödosamt tränad offentlig utgåva-modell.

‘För att utföra redigeringsoperationen, provar vi de finjusterade modellerna med prompten “[sällsynta_token] redigeringsprompt” (t.ex. “beikkpic två hundar i en restaurang” eller “beikkpic en minion”).’

Processen

UniTune-metoden skickar i princip den ursprungliga bilden genom en diffusionsmodell med en uppsättning instruktioner om hur den ska modifieras, med hjälp av de enorma datamängder som tränats in i modellen. I själva verket kan du göra detta nu med Stable Diffusions img2img-funktionalitet – men inte utan att förvränga eller på något sätt ändra delar av bilden som du helst vill behålla.

Under UniTune-processen justeras systemet, det vill säga att UniTune tvingar modellen att återuppta träningen, med de flesta av dess lager ofrysta (se nedan). I de flesta fall kommer justering att sänka den övergripande allmänna förlustvärdena för en hårt vunnen högpresterande modell för att istället injicera eller förbättra någon annan aspekt som önskas skapas eller förbättras.

Men med UniTune verkar det som att modellkopien som påverkas, fast den kan väga flera gigabyte eller mer, kommer att behandlas som en engångsbrukbar biprodukt och kasseras i slutet av processen, efter att ha tjänat ett enda syfte. Denna typ av nonchalant datamängd blir en vardaglig lagringskris för DreamBooth-fans, vars egna modeller, även när de är pruned, inte är mindre än 2 GB per ämne.

Liksom Imagic sker den huvudsakliga justeringen i UniTune vid de lägsta två av de tre lagren i Imagen (bas 64px, 64px>256px och 256px>1024px). Till skillnad från Imagic ser forskarna något värde i att optimera justeringen också för detta sista och största superupplösningslagret (fast de har inte försökt det ännu).

För det lägsta 64px-lagret är modellen biasad mot basbilden under träning, med flera dubbletter av bild/text par som matas in i systemet under 128 iterationer med en batchstorlek på 4, och med Adafactor som förlustfunktion, som opererar med en inlärningshastighet på 0,0001. Fast T5-kodaren är fryst under denna justering, är den också fryst under primärträning av Imagen

Ovanstående operation upprepas sedan för 64>256px-lagret, med samma brusförstärkningsförfarande som användes under den ursprungliga träningen av Imagen.

Urval

Det finns många möjliga urvalsmetoder för att framkalla de förändringar som gjorts från den finjusterade modellen, inklusive Classifier Free Guidance (CFG), en huvudstad också för Stable Diffusion. CFG definierar i princip utsträckningen av vilken modellen är fri att “följa sin fantasi” och utforska renderingsmöjligheterna – eller också, vid lägre inställningar, utsträckningen av vilken den bör följa ingångsdata och göra färre svepande eller dramatiska förändringar.

Liksom Textual Inversion (en aning mindre med DreamBooth), är UniTune benägen att applicera distinkta grafiska stilar på ursprungliga bilder, samt mer fotorealistiska redigeringar.

Liksom Textual Inversion (en aning mindre med DreamBooth), är UniTune benägen att applicera distinkta grafiska stilar på ursprungliga bilder, samt mer fotorealistiska redigeringar.

Forskarna experimenterade också med SDEdits “late start”-teknik, där systemet uppmuntras att bevara ursprungliga detaljer genom att bara delvis vara “brus” från början, men snarare behålla sina väsentliga egenskaper. Fast forskarna bara använde detta på det lägsta lagret (64px), tror de att det kunde vara ett användbart urvalsteknik i framtiden.

Forskarna utnyttjade också prompt-till-prompt som en ytterligare textbaserad teknik för att villkora modellen:

‘I “prompt till prompt”-inställningen fann vi att en teknik som vi kallar Prompt Guidance är särskilt hjälpsam för att justera trohet och uttrycksfullhet. ‘

‘Prompt Guidance är liknande Classifier Free Guidance förutom att baslinjen är en annan prompt istället för den oconditionerade modellen. Detta guidar modellen mot differensen mellan de två prompterna.’

Prompt-till-prompt i UniTune, som i princip isolerar områden som ska ändras.

Prompt-till-prompt i UniTune, som i princip isolerar områden som ska ändras.

Men promptguidning, påstår författarna, behövdes bara ibland i fall där CFG misslyckades med att uppnå det önskade resultatet.

En annan ny urvalsmetod som påträffades under utvecklingen av UniTune var interpolation, där områden i bilden är tillräckligt distinkta så att både den ursprungliga och den ändrade bilden är mycket lika i komposition, vilket tillåter en mer “naiv” interpolation att användas.

Interpolation kan göra de högre ansträngningarna i UniTune överflödiga i fall där områden som ska transformeras är distinkta och välavgränsade.

Interpolation kan göra de högre ansträngningarna i UniTune överflödiga i fall där områden som ska transformeras är distinkta och välavgränsade.

Författarna föreslår att interpolation potentiellt kan fungera så bra, för ett stort antal målbilder, att den kunde användas som standardinställning, och observerar också att den har kraften att åstadkomma extraordinära transformationer i fall där komplexa ocklusioner inte behöver förhandlas av mer intensiva metoder.

UniTune kan utföra lokala redigeringar med eller utan redigeringsmasker, men kan också besluta ensidigt var redigeringar ska placeras, med en ovanlig kombination av tolkningsförmåga och robust essentialisering av källdata:

I den översta bilden i den andra kolumnen har UniTune, som fått i uppgift att infoga en 'röd tåg i bakgrunden', placerat den på ett lämpligt och äkta sätt. Observera i de andra exemplen hur semantisk integritet till källbilden upprätthålls, även mitt i extraordinära förändringar i pixelinnehåll och kärnstilar i bilderna.

I den översta bilden i den andra kolumnen har UniTune, som fått i uppgift att infoga en ‘röd tåg i bakgrunden’, placerat den på ett lämpligt och äkta sätt. Observera i de andra exemplen hur semantisk integritet till källbilden upprätthålls, även mitt i extraordinära förändringar i pixelinnehåll och kärnstilar i bilderna.

Fördröjning

Även om den första iterationen av ett nytt system kommer att vara långsamt, och även om det är möjligt att antingen communityengagemang eller företagsåtagande (det är vanligtvis inte båda) så småningom kommer att påskynda och optimera en resurskrävande rutin, utför både UniTune och Imagic ganska stora maskinlärningsmanövrer för att skapa dessa fantastiska redigeringar, och det är tveksamt i vilken utsträckning en sådan resurskrävande process någonsin kan skalas ner till hemmabruk, snarare än API-drivet tillgänglighet (även om den senare kan vara mer önskvärd för Google).

För tillfället är rundresan från ingång till resultat cirka 3 minuter på en T4-GPU, med cirka 30 sekunder extra för inferens (som för vilken inferensrutin som helst). Författarna medger att detta är hög fördröjning, och knappast kvalificerar sig som “interaktiv”, men de noterar också att modellen förblir tillgänglig för ytterligare redigeringar en gång den initialt justerats, tills användaren är färdig med processen, vilket minskar redigerings­tiden per redigering.

 

Publicerad första gången den 21 oktober 2022.

Författare på maskinlärande, domänspecialist inom mänsklig bildsyntes. Före detta chef för forskningsinnehåll på Metaphysic.ai.