Memorization In Stable Diffusion Is Unexpectedly Driven by CLIP Embeddings
Dit artikel onthult dat memorisatie in Stable Diffusion onverwacht wordt aangedreven door de structurele duplicatie van de end-of-text-embedding in padding-tokens, wat de invloed daarvan versterkt, en stelt eenvoudige inferentie-tijdstrategieën voor om dit probleem te mitigeren zonder de beeldkwaliteit te verslechteren.
Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer
Het Grote Probleem: Het Model zit "Vast" in Herinneringen
Stel je een getalenteerde kunstenaar (Stable Diffusion) voor die is getraind op miljoenen foto's. Soms, wanneer je deze kunstenaar vraagt om iets nieuws te tekenen, kopieert deze per ongeluk een specifieke foto uit de trainingsset exact, pixel voor pixel. Dit heet memorisatie. Het is een risico voor privacy en auteursrecht, omdat het model niets nieuws creëert; het spuugt gewoon oude data uit.
Wetenschappers hebben geprobeerd uit te zoeken waarom dit gebeurt. De meeste theorieën richtten zich op de woorden die je typt (de prompt) of op de interne wiskunde van het model. Dit paper vond echter een verrassende dader die zich verstopt in de "opvulling" van de instructies.
De Opzet: Hoe de Kunstenaar Instructies Leest
Om de ontdekking te begrijpen, moeten we kijken naar hoe de kunstenaar je instructies leest.
- De Prompt: Je typt een zin zoals "Een kat op een mat."
- De Limiet: De kunstenaar kan instructies alleen lezen tot een bepaalde lengte (77 "tokens" of woorddelen).
- De Opvulling: Als je zin kort is (bijvoorbeeld slechts 10 woorden), moet de computer de resterende 67 lege plekken vullen om de limiet van 77 te bereiken.
De Oude Methode (Stable Diffusion v1.4):
De computer vult die lege plekken op met een speciaal "Einde van Tekst"-token (laten we het <eot> noemen).
- De Analogie: Stel je voor dat je een verhaal leest, maar de laatste pagina is leeg. In plaats van deze leeg te laten, stempelt de printer de woorden "EINDE" keer op keer over de pagina totdat deze vol is.
- Voor een korte prompt ziet de kunstenaar dus:
[Jouw Woorden] + [EINDE] + [EINDE] + [EINDE]...(herhaald 60+ keer).
De Ontdekking: Het "Echo-kamer" Effect
De auteurs van het paper ontdekten dat de kunstenaar zwaar afhankelijk is van deze herhaalde "EINDE"-stempels om te beslissen wat er getekend moet worden, vooral bij het memoriseren van afbeeldingen.
Hier is de keten van gebeurtenissen die ze vonden:
- Trainingsmismatch: Het systeem dat woorden omzet in wiskunde (CLIP genoemd), was getraind om het eerste "EINDE"-token als de belangrijkste samenvatting van de hele zin te behandelen. Het leerde de daadwerkelijke woorden en de opvultokens te negeren.
- De Glitch: Omdat de computer de lege ruimte vult met meer "EINDE"-tokens, ziet de kunstenaar plotseling het "EINDE"-token tientallen keren herhaald.
- De Versterking: De kunstenaar denkt: "Wow, er zijn zo veel 'EINDE'-tokens! Dit moet het belangrijkste deel van de instructie zijn!"
- Het Resultaat: Het model focust te veel op dit herhaalde token. Als dat specifieke "EINDE"-patroon tijdens de training was geassocieerd met een specifiek auteursrechtelijk beschermd beeld, raakt het model vast in een lus en reproduceert het exact dat beeld, terwijl het je werkelijke verzoek negeert.
De Metafoor:
Stel je een koor voor waarbij de dirigent (het model) zou moeten luisteren naar de solist (jouw prompt). Maar de koorleden schreeuwen allemaal "STOP!" (het opvultoken) keer op keer. De dirigent wordt zo overweldigd door het geschreeuw dat hij stopt met luisteren naar de solist en gewoon in een kring gaat marcheren op basis van de "STOP!"-commando's. Als het "STOP!"-commando eerder was gekoppeld aan een specifieke dansbeweging, herhaalt het koor gewoon die dans en negeert het de muziek.
De Verrassende Wending: De Woorden Maken Minder Uit
De auteurs testten dit door de daadwerkelijke woorden uit de prompt te verwijderen en deze te vervangen door het "Einde"-token.
- Resultaat: Het model kon nog steeds een herkenbare afbeelding genereren.
- Conclusie: De daadwerkelijke woorden die je typte (de prompt) dragen zeer weinig bij aan het memoriserende deel van het proces. De "opvul"-tokens doen het zware werk voor het kopieergedrag.
De Oplossing: Twee Eenvoudige Fixes
Het paper stelt twee gemakkelijke manieren voor om dit te stoppen zonder het hele model opnieuw te trainen of het te vertragen. Beide zijn "inference-time" fixes, wat betekent dat je ze net voordat de afbeelding wordt gegenereerd kunt toepassen.
Fix 1: Verander het Opvultoken
- De Actie: In plaats van de lege ruimte te vullen met "EINDE" (
<eot>), vervang dit door een neutraal symbool zoals een uitroepteken (!). - Waarom het werkt: Dit breekt de echo-kamer. Het model ziet niet langer 60 kopieën van het "Einde"-token. Het ziet een neutraal symbool dat niet dezelfde zware lading draagt.
- Bonus: Ze verbergen (maskeren) ook het enkele originele "Einde"-token om extra veilig te zijn.
Fix 2: Demp de Opvulling
- De Actie: Houd de tokens zoals ze zijn, maar zet simpelweg het volume lager (maskeren) op de herhaalde "Einde"-tokens zodat het model minder aandacht aan hen besteedt.
- Waarom het werkt: Het vermindert de invloed van de "echo" zonder de tokenizer te veranderen.
Het Bewijs: Waarom Versie 2.1 Beter Is
De auteurs merkten op dat Stable Diffusion v2.1 (een nieuwere versie) dit memorisatieprobleem niet zo erg heeft.
- Waarom? Het blijkt dat de makers van v2.1 dit probleem per ongeluk hebben opgelost. Ze schakelden over naar een ander tekstsysteem (OpenCLIP) dat een neutraal symbool gebruikt voor opvulling in plaats van "EINDE" te herhalen.
- De Les: Het feit dat v2.1 natuurlijk minder veel memoriseert, bewijst dat de "herhaalde Einde-token" inderdaad de hoofdoorzaak was van het probleem in v1.4.
Samenvatting
- Het Probleem: Stable Diffusion kopieert soms trainingsafbeeldingen exact.
- De Oorzaak: Korte prompts worden opgevuld met herhaalde "Einde van Tekst"-tokens. Het model neemt deze herhaalde tokens voor het belangrijkste deel van de instructie, waardoor het "overfittet" en specifieke afbeeldingen memoriseert.
- De Fix: Verander het opvultoken naar iets neutraals (zoals
!) of demp de herhaalde tokens. Dit stopt de memorisatie terwijl de beeldkwaliteit hoog blijft. - Het Voordeel: Je kunt deze fix direct toepassen zonder de AI opnieuw te hoeven trainen of van tevoren te hoeven detecteren welke afbeeldingen riskant zijn.
Verdrinkt u in papers in uw vakgebied?
Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.