Com entrenar un model d'imatge per fer imatges de IA personalitzades

Data de publicació: 23/09/2024
Vols sorprendre els teus amics amb una imatge espectacular?
Busques una foto nova i original per al teu Instagram?
O potser vols crear una campanya amb un producte super personalitzat?
Avui et mostrem com pots aconseguir tot això utilitzant la intel·ligència artificial! Gràcies a tècniques com LoRA, és més fàcil que mai entrenar un model d'imatges d'IA per adaptar-lo a les teves necessitats. T'explicarem com pots entrenar només una part d'una xarxa neuronal i aplicar una capa personalitzada que et permetrà crear imatges úniques per qualsevol propòsit, ja sigui per ús personal o professional.
Què és un LoRA?
Un LoRA (Low-Rank Adaptation) és una tècnica senzilla i eficient que ens permet entrenar només una part d'un model d'intel·ligència artificial, en lloc de modificar tot el model sencer. Imagineu-vos que teniu un model de xarxa neuronal gegant, però només necessiteu entrenar una petita part per a una tasca específica. Això és el que fa un LoRA: adapta un "trosset" de la xarxa i hi afegeix una capa extra, com una mena de filtre personalitzat.
Per exemple, en lloc de reentrenar tot un model per crear imatges noves, només entrenem aquesta petita part amb LoRA i podem generar imatges personalitzades per a productes o campanyes de màrqueting. Això és molt útil quan volem adaptar el model per a una tasca concreta, com podria ser crear imatges d'un producte amb un estil o context determinat, sense haver de gastar molts recursos entrenant tot el model des de zero.
Aquesta tècnica ens permet ser molt més eficients i flexibles, adaptant els nostres models per a necessitats específiques, com personalitzar contingut per campanyes de màrqueting, sense perdre temps ni recursos.
Anem a fer-ho pas a pas:
Per entrenar un model d'intel·ligència artificial necessitem grans capacitats de computació. Avui en dia tenim possibilitats cloud que ens permet executar aquests entrenaments a un cost reduït.
Un exemple es Replicate. https://replicate.com/
Replicate és una plataforma que permet als desenvolupadors i investigadors executar models d'intel·ligència artificial de manera senzilla i eficient. Facilita la reproducció de resultats d'estudis i experiments en IA, permetent compartir i desplegar models en diferents entorns.
Pas 1:
Fer fotos del que volem entrenar al model. Necessitem entre 10-15 fotos en diferents angles i situacions per poder entrenar el model. En aquest cas nosaltres hem fet servir el nostre Pollo de goma. Aquest pollo de goma és conegut a l'equip de Solucions Digitals, sobretot quan tenim algun “pollo”
Hem fet alguna foto del pollo en diferents llocs i poses. Això ho pots fer amb fotos teves o fotos d'un producte, el que sigui!
Un cop tenim les fotos, les comprimim en un zip, el necessitarem més endavant.
Pas 2:
Entrar a replicate i afegir una forma de pagament (si, aquestes coses costen pasta)
Pas 3:
Buscar el model ostris/flux-dev-lora-trainer. El model Flux és un model de generació d'imatges open source desenvolupat per Black Forest Labs. Està dissenyat per produir imatges d'alta qualitat a partir de descripcions de text, amb una arquitectura avançada que inclou 12 mil milions de paràmetres.
Pas 4:
Crear un nou model i posar-li un nom. Aquest model serà nostre i el podrem reutilitzar. Posem un nom que el reconeguem fàcilment.
Pas 5:
Pujar el ZIP amb les imatges i inventar una trigger_word. Aquesta paraula no ha d'existir per a que el model la pugui diferenciar d'altres paraules. En aquest cas hem creat la paraula PLLO. Aquesta paraula ajudarà al model a determinar que li estem fent referència al nostre pollo de goma.
La resta de camps no cal que els toqueu.
Ja li podem donar a entrenar!
Pas 6:
Aquest entrenament pot tardar uns 15-20 minuts. Mentrestant anirem a crear alguns prompts. Aquests prompts ens ajudaran a crear imatges increibles. Per fer-ho utilitzarem ChatGPT.
Hem buscat algunes fotos per Google relacionades amb superherois, les pujem a ChatGPT i li demanem el següent:
“Vull fer una producció de fotos d'aquest pollo de goma molt original. Necesito imatges creatives relacionades amb superherois com les imatges que t'adjunto. Dona'm 10 idees d'imatges. Descriu breument cada una de les escenes com si fos un prompt per un model de generació d'imatges amb IA. Han de ser en anglès.”
Pas 7:
Un cop entrenat el model, tenim la opció de descarregar els pesos. Aquest pesos son “la capa” que s'afegeix al model per poder fer fotos personalitzades. Si tenim un PC amb una targeta gràfica prou potent ho podríem executar a casa nostra. En aquest cas executarem el model al mateix replicate.
Pas 8:
Ja podem generar les imatges que volguem. Agafem els prompts que ha generat ChatGPT i afegim l'identificador del nostre entrenament. Per exemple:
A rubber chicken dressed as Superman, flying through the sky above a cityscape, with a dramatic sunset casting an orange glow over the scene. The chicken's cape flutters in the wind as it soars heroically
A rubber PLLO dressed as Superman, flying through the sky above a cityscape, with a dramatic sunset casting an orange glow over the scene. The chicken's cape flutters in the wind as it soars heroically
Copiem el prompt a “prompt” i a generar imatges!
Resultats!