|
|
||
|---|---|---|
| .. | ||
| Clip.ipynb | ||
| README.md | ||
README.md
Multi-Modala NĂ€tverk
Efter framgÄngen med transformer-modeller för att lösa NLP-uppgifter har samma eller liknande arkitekturer tillÀmpats pÄ datorseende-uppgifter. Det finns ett vÀxande intresse för att bygga modeller som kan kombinera vision och naturligt sprÄk. Ett av dessa försök gjordes av OpenAI och kallas CLIP och DALL.E.
Contrastive Image Pre-Training (CLIP)
Huvudidén med CLIP Àr att kunna jÀmföra textprompter med en bild och avgöra hur vÀl bilden motsvarar prompten.
Bild frÄn detta blogginlÀgg
Modellen trÀnas pÄ bilder hÀmtade frÄn internet och deras bildtexter. För varje batch tar vi N par av (bild, text) och konverterar dem till vissa vektorrepresentationer I, ..., T. Dessa representationer matchas sedan ihop. Förlustfunktionen Àr definierad för att maximera cosinuslikheten mellan vektorer som motsvarar ett par (t.ex. I och T) och minimera cosinuslikheten mellan alla andra par. Det Àr dÀrför denna metod kallas kontrastiv.
CLIP-modellen/biblioteket finns tillgÀngligt pÄ OpenAIs GitHub. Metoden beskrivs i detta blogginlÀgg och mer detaljerat i denna artikel.
NÀr denna modell Àr förtrÀnad kan vi ge den en batch av bilder och en batch av textprompter, och den kommer att returnera en tensor med sannolikheter. CLIP kan anvÀndas för flera uppgifter:
Bildklassificering
Anta att vi behöver klassificera bilder mellan exempelvis katter, hundar och mÀnniskor. I detta fall kan vi ge modellen en bild och en serie textprompter: "en bild av en katt", "en bild av en hund", "en bild av en mÀnniska". I den resulterande vektorn med tre sannolikheter behöver vi bara vÀlja indexet med högst vÀrde.
Bild frÄn detta blogginlÀgg
Textbaserad bildsökning
Vi kan ocksĂ„ göra det motsatta. Om vi har en samling bilder kan vi skicka denna samling till modellen och en textprompt â detta ger oss den bild som Ă€r mest lik en given prompt.
âïž Exempel: AnvĂ€nda CLIP för bildklassificering och bildsökning
Ăppna Clip.ipynb-notebooken för att se CLIP i praktiken.
Bildgenerering med VQGAN+CLIP
CLIP kan ocksÄ anvÀndas för bildgenerering frÄn en textprompt. För att göra detta behöver vi en generatormodell som kan generera bilder baserat pÄ nÄgon vektorinput. En sÄdan modell kallas VQGAN (Vector-Quantized GAN).
Huvudidéerna med VQGAN som skiljer den frÄn vanliga GAN Àr följande:
- AnvÀndning av en autoregressiv transformerarkitektur för att generera en sekvens av kontext-rika visuella delar som utgör bilden. Dessa visuella delar lÀrs i sin tur av CNN.
- AnvÀndning av en subbild-diskriminator som avgör om delar av bilden Àr "Àkta" eller "falska" (till skillnad frÄn "allt-eller-inget"-metoden i traditionella GAN).
LÀr dig mer om VQGAN pÄ Taming Transformers webbplats.
En viktig skillnad mellan VQGAN och traditionella GAN Àr att den senare kan producera en hyfsad bild frÄn vilken inputvektor som helst, medan VQGAN sannolikt kommer att producera en bild som inte Àr sammanhÀngande. DÀrför behöver vi ytterligare vÀgleda bildskapandeprocessen, och det kan göras med hjÀlp av CLIP.
För att generera en bild som motsvarar en textprompt börjar vi med nÄgon slumpmÀssig kodningsvektor som skickas genom VQGAN för att producera en bild. Sedan anvÀnds CLIP för att skapa en förlustfunktion som visar hur vÀl bilden motsvarar textprompten. MÄlet Àr sedan att minimera denna förlust genom att anvÀnda backpropagation för att justera parametrarna för inputvektorn.
Ett utmÀrkt bibliotek som implementerar VQGAN+CLIP Àr Pixray.
Bilder frÄn Artificial Teachers-kollektionen av Dmitry Soshnikov
DALL-E
DALL-E 1
DALL-E Àr en version av GPT-3 som trÀnats för att generera bilder frÄn prompter. Den har trÀnats med 12 miljarder parametrar.
Till skillnad frÄn CLIP tar DALL-E emot bÄde text och bild som en enda ström av tokens för bÄde bilder och text. DÀrför kan du frÄn flera prompter generera bilder baserat pÄ texten.
DALL-E 2
Den huvudsakliga skillnaden mellan DALL.E 1 och 2 Àr att den senare genererar mer realistiska bilder och konst.
Exempel pÄ bildgenerering med DALL-E:
Referenser
- VQGAN-artikel: Taming Transformers for High-Resolution Image Synthesis
- CLIP-artikel: Learning Transferable Visual Models From Natural Language Supervision
Ansvarsfriskrivning:
Detta dokument har översatts med hjĂ€lp av AI-översĂ€ttningstjĂ€nsten Co-op Translator. Ăven om vi strĂ€var efter noggrannhet, bör du vara medveten om att automatiserade översĂ€ttningar kan innehĂ„lla fel eller felaktigheter. Det ursprungliga dokumentet pĂ„ dess ursprungliga sprĂ„k bör betraktas som den auktoritativa kĂ€llan. För kritisk information rekommenderas professionell mĂ€nsklig översĂ€ttning. Vi ansvarar inte för eventuella missförstĂ„nd eller feltolkningar som uppstĂ„r vid anvĂ€ndning av denna översĂ€ttning.








