sabato 3 settembre 2022

Sussurrare alle AI per produrre arte.... (Un esempio con MidJourney)



Finora ci eravamo preoccupati delle AI come possibili "robot" che potessero togliere lavoro a categorie di persone che lavoravano in ambiti pratici, come burocrati, programmatori oppure analizzatori di dati. Senza contare le altre infinite categorie come autisti di Auto, medici diagnostici di malattie e chi più ne ha ne metta. Eravamo però poco abituati alle AI creatrici di opere artistiche. Ebbene pare che nell'ultimo anno da tecnologia sperimentale e d'avanguardia siamo arrivato a prodotti completi e finiti che vengono erogati a pagamento le cosiddette AI text2img.

In pratica occorre elaborare i cosiddetti "prompt", vale a dire frasi con i tag che intendiamo che vengano espressi nel risultato finale. Le AI funzionano a grandi linee nel seguente modo:

un database "taggato" composto da una quantità enorme di coppie (immagine, tag) viene dato in pasto ad una opportuna rete neurale che "impara" ad estrarre in maniera autonoma i tag da una immagine generica.

Quando si sottopone un insieme di tag al text2img la AI inizia da una immagine di partenza (che spesso è una immagine neutra composta da punti colorati casualmente) e applica la sua "intelligenza" nel determinare i tag contenuti in questa immagine. Chiaramente all'inizio questi tag non vengono trovati oppure hanno un valore di confidenza molto basso. 

A questo punto la AI prova a far evolvere con tecniche che ci ricordano le teorie dell'evoluzione, producendo delle "mutazioni" casuali dei pixel e ricalcola i tag associabili, attraverso una procedura di Machine Learning che viene chiamata "Gradient Descent" che ricorda da vicino il modo di trovare i minimi o i massimi di una funzione "a tentativi".



Questa tecnica consente di "minimizzare" la distanza fra i tag contenuti nell'immagine che sta evolvendo e la sequenza di tag fornita in ingresso. L'aspetto curioso è che come nella teoria dell'evoluzione, questa tecnica converge abbastanza rapidamente perchè dopo alcuni tentativi la AI ha chiaro quali sono le modifiche che può applicare alla immagine che consentano di migliorare i risultati ed ignora le mutazioni che tendono a peggiorare i risultati.

I risultati sono spesso ottimi, anche se spesso non eccezionali, dato che la AI deve rifarsi al tagging di persone fisiche che fanno questo "lavoro" spesso in modo inconsapevole scrivendo post sui principali network su Internet come Google, Microsoft, Apple etc. Il tagging inoltre spesso è molto preciso su aspetti "forti" dell'immagine ma tende ad essere meno preciso su aspetti marginali o aspetti scontati secondo la nostra psiche. Per esempio per una persona è scontato che gli occhi guardino tutti e due nella stessa direzione (altrimenti avremmo strabismo) e questo non viene sottolineato nel tagging, questo fa sì che alcune AI abbiano profondi problemi a generare volti umani o aspetti anatomici per noi scontati, mentre svolge uno splendido lavoro nel riprodurre paesaggi. Notate ad esempio in questo quadro ricostruito dove il paesaggio è assolutamente percepito come realistico, mentre solo il fatto che vi sia una moltitudine di persone le rende credibili, anche se i primi piani risulterebbero spesso imbarazzanti.




Per ottenere risultati di qualità occorre quindi fornire un insieme di tag iniziali detti prompt che possano produrre attraverso il gradient descent delle immagini esattamente come le abbiamo concepite, in modo originale ed artisticamente interessante. Non è per niente facile.

Le immagini che ho inserito sono state generate con MidJourney, che al momento attuale è una delle offerte più interessanti per produrre immagini di alta qualità, una delle quali ha vinto recentemente una competizione artistica: cfr anche il debunking qui  https://nwn.blogs.com/nwn/2022/09/midjourney-colorado-state-fair-ai-art.html?fbclid=IwAR0xOUz5v8NjYuVg8SCGYYSTzIuh_nPdIIC53G5yJ-Jw1PRj7vCMnW8eHQM



Ora, come abbiamo visto, spesso le immagini prodotte dalle AI devono essere "corrette" con photoshop perchè esprimono caratteristiche imbarazzanti come a volte essere senza mani o più spesso con degli arti extra o delle prospettive impossibili. Però diversi artisti stanno seriamente utilizzando MidJourney come "base" su cui appunto lavorare per offrire delle opere d'arte di sicuro valore artistico.

La premessa in questo caso è di riuscire a fornire la sequenza di tag corretta cosa che non è per nulla banale. Nasce così la nuova professione di "parlatore con le AI", persone che sanno cosa chiedere per ottenere l'effetto giusto. Un esempio di questo genere di "prompt" è ad esempio 

Character Design, Willem Defoe as a green skinned male goblin ranger yellow eyes, long pointy nose, big pointed ears snarling, brown leather cloak, in a forest dungeons and dragons fantasy, Illustration by Jim Lee, dramatic shot, hyperrealism, digital art photorealistic, octane render, unreal engine, hyper detailed, volumetric lighting, hdr, god rays, symmetrical eyes

Per ottenere ad esempio questa immagine:



Se volete esercitarvi con MidJourney è disponibile un periodo di prova durante il quale potete chiedere 10 - 20 prompt entrando nell'apposito canale discord. https://www.followchain.org/midjourney-discord-server/#1 dopo di che con 10 Euro al mese avete diritto a circa 200 prompt oppure con 30 euro al mese avete diritto ad un numero illimitato di prompt.

Se volete alcune soluzioni gratuite potete ad esempio utilizzare alcuni di questi link online:

  • https://huggingface.co/spaces/huggingface/diffuse-the-rest
  • https://www.wombo.art/
  • https://nightcafe.studio/

Oppure se avete una scheda grafica "importante" tipo Nvidia GTX 1070 adatta per la vr, potete anche produrre le immagini in locale usando questo link

https://grisk.itch.io/stable-diffusion-gui