Wasserstein Generative Adversarial Network (WGAN) är en variant av generative adversarial network (GAN) som föreslogs 2017 som syftar till att "förbättra stabiliteten i inlärningen, bli av med problem som lägeskollaps och tillhandahålla meningsfulla inlärningskurvor användbara för felsökning och hyperparametersökningar ".
Jämfört med den ursprungliga GAN-diskriminatorn ger Wasserstein GAN-diskriminatorn en bättre inlärningssignal till generatorn. Detta gör att träningen blir mer stabil när generatorn lär sig distributioner i mycket högdimensionella utrymmen.
Den ursprungliga GAN-metoden är baserad på GAN-spelet, ett nollsummespel med 2 spelare: generator och diskriminator. Spelet definieras över ett sannolikhetsutrymme Generatorns strategiuppsättning är uppsättningen av alla sannolikhetsmått på och diskriminatorns strategiuppsättning är mängden mätbara funktioner .
Målet med spelet är
Generatorn syftar till att minimera den, och diskriminatorn strävar efter att maximera den.
Upprepa GAN-spelet många gånger, varje gång med generatorn i rörelse först och diskriminatorn i rörelse som andra. Varje gång generatorn ändras måste diskriminatorn anpassa sig genom att närma sig idealet
Eftersom vi verkligen är intresserade av , är diskriminatorfunktionen i sig ganska ointressant. Den håller bara reda på sannolikhetsförhållandet mellan generatordistributionen och referensfördelningen. Vid jämvikt matar diskriminatorn bara ut konstant, efter att ha gett upp försöken att uppfatta någon skillnad.
Konkret, i GAN-spelet, låt oss fixa en generator och förbättra diskriminatorn steg för steg, med är diskriminatorn i steg . Då har vi (helst) det
så vi ser att diskriminatorn faktiskt är lägre .
Wasserstein avstånd
Vi ser alltså att poängen med diskriminatorn främst är som kritiker att ge feedback till generatorn, om "hur långt det är från perfektion", där "långt" definieras som Jensen–Shannon-divergens.
Naturligtvis medför detta möjligheten att använda ett annat kriterier för farness. Det finns många möjliga divergenser att välja mellan, till exempel f-divergensfamiljen , som skulle ge f-GAN.
Wasserstein GAN erhålls genom att använda Wasserstein-måttet , som uppfyller ett "dubbel representationssats" som gör det mycket effektivt att beräkna:
Sats (Kantorovich-Rubenstein-dualitet) — När sannolikhetsutrymmet är ett metriskt utrymme, då för varje fast ,
Diskriminatorns strategiuppsättning är uppsättningen av mätbara funktioner av typ med avgränsad Lipschitz-norm: .
Wasserstein GAN-spelet är ett nollsummespel med objektiv funktion
Generatorn går först och diskriminatorn går tvåa. Generatorn syftar till att minimera målet, och diskriminatorn strävar efter att maximera målet:
Genom Kantorovich-Rubenstein-dualiteten, för varje generatorstrategi , är det optimala svaret från diskriminatorn , så att
Följaktligen, om diskriminatorn är bra, skulle generatorn konstant pressas för att minimera , och den optimala strategin för generatorn är bara som den borde.
Jämförelse med GAN
I Wasserstein GAN-spelet ger diskriminatorn en bättre gradient än i GAN-spelet.
Betrakta till exempel ett spel på den verkliga linjen där både och är gaussiska. Sedan ritas den optimala Wasserstein-kritikern och den optimala GAN-diskriminatorn enligt nedan:
Den optimala Wasserstein-kritikern och den optimala GAN-diskriminatorn för en fast referensfördelning och generatorfördelning . Både Wasserstein-kritikern och GAN-diskriminatorn är nedskalade för att passa handlingen.
För fast diskriminator måste generatorn minimera följande mål:
Samma plot, men med GAN-diskriminatorn ersatt av och nedskalad för att passa plottet).
Som visas är generatorn i GAN motiverad att låta sin "glida nerför toppen" av . Likadant för generatorn i Wasserstein GAN.
För Wasserstein GAN har gradient 1 nästan överallt, medan för GAN har platt gradient i mitten och brant lutning på andra håll. Som ett resultat är variansen för estimatorn i GAN vanligtvis mycket större än den i Wasserstein GAN. Se även figur 3 av.
Problemet med är mycket allvarligare i verkliga maskininlärningssituationer. Överväg att utbilda en GAN för att skapa ImageNet , en samling foton i storleken 256 x 256. Utrymmet för alla sådana foton är och distributionen av ImageNet-bilder, , koncentrerar sig på ett grenrör av mycket lägre dimension i den. Följaktligen skulle varje generatorstrategi nästan säkert vara helt osammanhängande från , vilket gör . Således kan en bra diskriminator nästan perfekt skilja från , såväl som alla nära . Gradienten skapar alltså ingen inlärningssignal för generatorn.
Detaljerade satser finns i.
Utbildning Wasserstein GANs
Att träna generatorn i Wasserstein GAN är bara gradient descent , samma som i GAN (eller de flesta djupinlärningsmetoder), men att träna diskriminatorn är annorlunda, eftersom diskriminatorn nu är begränsad till att ha begränsat Lipschitz-normen. Det finns flera metoder för detta.
Sedan , vi har , och följaktligen den övre gränsen:
Således, om vi kan övergränsa operatornormer för varje matris, kan vi övergränsa Lipschitz-normen för .
Viktklippning
Eftersom för valfri matris , låt vi har
genom att klippa alla poster i till inom ett visst intervall , kan vi binda .
Detta är viktklippningsmetoden, föreslagen av originaltidningen.
Spektral normalisering
Spektralradien kan effektivt beräknas med följande algoritm:
INPUT- matris och initial gissning
Iterera till konvergens . Detta är egenvektorn för med egenvärdet .
RETURN
Genom att omtilldela efter varje uppdatering av diskriminatorn kan vi övre gränsen och därmed övre gränsen .
Algoritmen kan accelereras ytterligare genom memoisering : I steg , lagra . Sedan i steg , använd som initial gissning för algoritmen. Eftersom är mycket nära , så är nära , så detta tillåter snabb konvergens.
Detta är den spektrala normaliseringsmetoden.
Gradientstraff
Istället för att strikt begränsa , kan vi helt enkelt lägga till en "gradient penalty"-term för diskriminatorn, av form
där är en fast fördelning som används för att uppskatta hur mycket diskriminatorn har brutit mot Lipschitz-normens krav. Diskriminatorn, i ett försök att minimera den nya förlustfunktionen, skulle naturligtvis bringa nära överallt, vilket gör .