Kunstmatige intelligentie (AI) heeft de afgelopen jaren enorme sprongen gemaakt, onder meer op het gebied van beeldgeneratie. Toch worstelen veel AI-modellen nog steeds met het consistent creëren van afbeeldingen, met name als het gaat om details als vingers of gezichten. Maar daar komt mogelijk verandering in, dankzij een methode ontwikkeld door computerwetenschappers van de Rice University in de Verenigde Staten.
De nieuwe techniek, genaamd ElasticDiffusion, werd gepresenteerd op de IEEE/CVF Conferentie over Computervisie en Patroonherkenning (CVPR) in de Amerikaanse stad Seattle. Moayed Haji Ali, hoofdauteur van de studie waarin de techniek wordt beschreven, legt uit welke problemen het oplost: “Diffusiemodellen zoals Stable Diffusion, Midjourney en DALL-E creëren indrukwekkende resultaten en genereren tamelijk levensechte en fotorealistische beelden. Maar ze hebben een zwakte: Ze kunnen alleen vierkante beelden genereren. Dus in gevallen waar je verschillende beeldverhoudingen hebt, zoals op een monitor of een smartwatch, worden deze modellen problematisch.” In zulke gevallen ontstaan er vaak vreemde vervormingen, zoals mensen met zes vingers of onnatuurlijk uitgerekte auto’s.
Een bijkomend probleem is de manier waarop een model wordt getraind. “Als je het model traint op alleen beelden met een bepaalde resolutie, kunnen ze alleen beelden met die resolutie genereren”, zegt Vicente Ordóñez-Román, een van de auteurs van de studie. In de wereld van AI komt dit probleem zeer vaak voor, zegt hij. “Je zou dat kunnen oplossen door het model te trainen op een grotere variëteit aan beelden, maar dat is duur en vereist enorme hoeveelheden rekenkracht: honderden, misschien zelfs duizenden grafische verwerkingseenheden”, klinkt het.
Andere benadering om beelden te genereren
ElasticDiffusion pakt dit probleem aan door een andere benadering te kiezen bij het genereren van afbeeldingen. Om dit te begrijpen, is het belangrijk om te weten dat diffusiemodellen werken met twee soorten signalen: lokaal en globaal. Het lokale signaal bevat informatie op pixelniveau, zoals de vorm van een oog of de textuur van de vacht van een hond. Het globale signaal daarentegen bevat meer een algemeen overzicht van de afbeelding, zoals de algehele compositie en de hoofdelementen van de scène.
In traditionele diffusiemodellen worden deze lokale en globale signalen samen verwerkt, wat kan leiden tot problemen bij het genereren van niet-vierkante afbeeldingen. ElasticDiffusion kiest voor een andere aanpak. Het proces wordt verdeeld in twee paden: een voorwaardelijk en een onvoorwaardelijk pad. Het voorwaardelijke pad genereert de afbeelding op basis van specifieke instructies of ‘voorwaarden’, zoals een tekstbeschrijving of een bepaalde stijl. Het onvoorwaardelijke pad daarentegen genereert een afbeelding zonder deze specifieke voorwaarden, puur op basis van wat het model heeft geleerd. Door het verschil tussen deze twee paden te berekenen, verkrijgt ElasticDiffusion een score die de globale beeldinformatie bevat. Vervolgens wordt de lokale, gedetailleerde informatie op de afbeelding toegepast. Het globale signaal – dat informatie bevat over de gewenste beeldverhouding en het onderwerp van de afbeelding – blijft gescheiden. Deze aanpak stelt het model in staat om beter om te gaan met verschillende beeldverhoudingen en resoluties.
Geen extra training nodig
Een groot pluspunt van ElasticDiffusion is dat het geen extra training vereist. Dit in tegenstelling tot de conventionele aanpak, waarbij modellen getraind moeten worden op een grote verscheidenheid aan afbeeldingen, wat een kostbaar en rekenintensief proces is. Er is echter nog ruimte voor verbetering. Momenteel duurt het genereren van een afbeelding met ElasticDiffusion zes tot negen keer langer dan bij andere diffusiemodellen. Het onderzoeksteam streeft ernaar deze verwerkingstijd te verkorten tot hetzelfde niveau als modellen zoals Stable Diffusion of DALL-E.