Gjentakende nevrale nettverksbaserte generative motstridende nettverk (RNN-Gans) kombinerer de tidsmodelleringsfunksjonene til RNN-er med de motstridende treningsprinsippene for Gans. Tapfunksjonene som brukes i RNN-Gans er vanligvis designet for å optimalisere målene for både generatoren og diskriminatoren innenfor dette rammeverket, og når de er sammenkoblet med Adam Optimizer, påvirkes deres oppførsel og konvergens av dens særegne adaptive læringshastighetsegenskaper.
Typiske tapsfunksjoner i RNN-Gans
RNN-Gans bruker variasjoner av tapsfunksjoner basert på den opprinnelige GaN-formuleringen. De vanligste tapsfunksjonene som er involvert er:
- Binær tverrfaglig tap (BCE-tap): Dette er et vanlig valg for diskriminatoren og generatoren der diskriminatoren prøver å skille reelle fra falske sekvenser og generatoren prøver å lure diskriminatoren ved å produsere realistiske sekvenser. BCE -tapet måler avstanden mellom de forutsagte sannsynlighetene og grunn sannhetsetikettene (ekte = 1, falsk = 0).
- motstridende tap (Minimax -tap): Det opprinnelige GaN -tapet tar sikte på å løse et minimax -spill mellom generatoren $$ g $$ og diskriminator $$ d $$. Diskriminatoren maksimerer sannsynligheten for å klassifisere reelle og falske prøver riktig, mens generatoren minimerer sannsynligheten for at diskriminatoren korrekt klassifiserer forfalskningene:
$$
\ min_g \ max_d v (d, g) = \ mathbb {e} _ {x \ sim p_ {data> [\ log d (x)] + \ mathbb {e} _ {z \ sim p_z} [\ log (1 - d (g (z)))]]]]]]]]]]]]]]]]]]]]]]]]]]]]])])]))))))
$$
Her er $$ x $$ en ekte sekvens og $$ z $$ er støyinngang til generatoren. Dette tapet brukes ved hver tid eller over hele sekvensutgangen avhengig av implementeringen.
- Minst Squares -tap (LSGAN): For å stabilisere trening, erstatter tapet av minst firkanter BCE -tapet. Den straffer prøver basert på deres avstand fra beslutningsgrensen, og oppmuntrer output nærmere reelle data:
For diskriminatoren:
$$
\ frac {1} {2} \ mathbb {e} _ {x \ sim p_ {data> [(d (x) -1)^2] + \ frac {1} {2} \ mathbb {e} _ {z \ sim p_z} [d (z (z)^
$$
For generatoren:
$$
\ frac {1} {2} \ mathbb {e} _ {z \ sim p_z} [(d (g (z))-1)^2]
$$
Dette tapet er ofte foretrukket i sekvensbaserte GAN-er inkludert RNN-gans for å unngå forsvinnende gradienter.
- Wasserstein Loss (WGAN): Noen RNN-Gan-modeller bruker Wasserstein-tap for å forbedre treningsstabiliteten og tolkbarheten. Dette tapet bruker Earth Mover's avstand som kriterium med en kritiker (i stedet for en diskriminator) som scorer sekvenser i stedet for å klassifisere dem:
$$
\ min_g \ max_ {d \ i \ mathcal {d> \ mathbb {e} _ {x \ sim p_ {data> [d (x)] - \ mathbb {e} _ {z \ sim p p p_z} [d (g (z)]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])
$$
Der $$ \ mathcal {d} $$ er settet med 1-lipschitz-funksjoner. Tapet unngår metningsgradienter, som kan være kritisk for sekvensielle data.
-Tap på sekvensnivå: I tillegg til motstridende tap, sekvensspesifikke eller oppgavespesifikke tap, som maksimal sannsynlighetsestimering (MLE) eller lærer som tvinger tap, kan det kombineres med motstridende tap for å veilede generatortrening mer effektivt på sekvenser.
Bruk av Adam Optimizer i RNN-Gans
Adam Optimizer er mye adoptert i GAN-er, inkludert RNN-Gans, på grunn av dets tilpasningsdyktige momentestimering som kommer den komplekse motstanders trening. Adam justerer læringshastighetene individuelt for hver parameter basert på estimater av de første (gjennomsnittlige) og andre (varians) øyeblikk av gradientene under trening.
Adams viktige parametere som vanligvis brukes i RNN-Gan-trening er:
- Læringshastighet ($$ \ alpha $$): Sett generelt lite (f.eks. 0,0001 til 0,001) for stabil GaN -trening.
- Eksponentiell forfallsrate for estimater for første øyeblikk ($$ \ beta_1 $$): Vanligvis satt rundt 0,5 til 0,9; lavere enn standard 0,9 for å redusere svingninger i GaN -trening.
- Eksponentiell forfallsrate for estimater av andre øyeblikk ($$ \ beta_2 $$): typisk holdt på 0,999.
- Epsilon ($$ \ Epsilon $$): En liten konstant som $$ 10^{- 8} $$ for å opprettholde numerisk stabilitet.
Adams balanse mellom momentum og adaptive læringshastigheter hjelper til med å overvinne problemer med ikke-stasjonære motstridende tap, spesielt i sekvensmodellering med RNN-er der gradienter kan være ustabile eller sparsomme.
Common Practice Setup Eksempel
I praktiske RNN-GaN-oppsett vil man vanligvis se noe sånt som:
- Diskriminator og generator optimalisert separat med binær tverrfaglig tap eller dens varianter.
- Bruke Adam Optimizer med $$ \ beta_1 = 0,5 $$, $$ \ beta_2 = 0,999 $$, og lærefrekvens rundt $$ 10^{- 4} $$ for å sikre balanserte oppdateringer.
- Opplæring innebærer vekslende oppdateringer mellom diskriminator og generator basert på deres respektive tap på hvert treningstrinn eller mini-batch.
Ytterligere variasjoner og forskning
Forskning på tapsfunksjoner for GAN -er fortsetter å utvikle seg. Noen studier introduserer parameteriserte eller generaliserte tapsfunksjoner (f.eks. Basert på ré nyi divergens eller Pearson divergences) for å forbedre stabilitet og ytelse. Å bruke disse på RNN-Gans kan innebære å endre diskriminator- og generatormål deretter.
I tillegg blir selvregularisering og sammensatte tap som kombinerer motstridende tap med rekonstruksjon eller klassifiseringstap noen ganger vedtatt avhengig av oppgaven, for eksempel tekstgenerering eller syntese av tidsserien.
Sammendrag
Typiske RNN-Gan-tapsfunksjoner med Adam Optimizer-bruk motstridende tap inspirert av den originale GaN, inkludert binære tverr-entropi, minste kvadrater, eller tap av Wasserstein tilpasset sekvensielle data. Adams parameterinnstillinger er justert spesielt for GaN -stabilitet. Kombinasjoner med sekvensspesifikke tap er også vanlige for bedre å veilede generatortrening på temporale mønstre. Dette ensemblet letter trening av motstridende RNN -modeller som genererer eller modellerer sekvenser effektivt.
Referanser for denne informasjonen stammer fra GaN grunnleggende litteratur, RNN-GaN-applikasjoner og optimaliseringsbruksmønstre ,.