General Framework of GAN
fGAN is a framework that evaluates the difference between two distributions by utilizing f-divergence, with f being a convex function. This concept can be understood through examples like KL divergence, Reverse KL divergence, and Chi-Square. Additionally, the Fenchel Conjugate method plays a crucial role in optimizing convex functions in GAN settings. Connection with GAN further explores the relationship between functions and their outputs within the context of generative adversarial networks.
Download Presentation

Please find below an Image/Link to download the presentation.
The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.
You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.
The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.
E N D
Presentation Transcript
fGAN: General Framework of GAN
? and ? are two distributions. ? ? and q ? are the probability of sampling ?. f-divergence ? ? ? ? ??f is convex f(1) = 0 ???||? evaluates the difference of P and Q ???||? = ? ? ? ? = 1 If ? ? = ? ? for all ? ? ? ? ? ???||? = ? ? ? ?? = 0 smallest ? = 0 ? ? ? ? ???||? = ? ? ? ?? If P and Q are the same distributions, ? ? ? ? ? Because f is convex ? ? ? ?? ???||? has the smallest value, which is 0 ? = ? 1 = 0
f-divergence f is convex ? ? ? ? ???||? = ? ? ? ?? f(1) = 0 ? ? ? = ????? KL ? ? ? ? ? ? ? ? ? ? ? ? ???||? = ? ? ??? ?? = ? ? ??? ?? ? ? ? ? = ???? Reverse KL ? ? ? ? ? ? ? ? ???||? = ? ? ??? ?? = ? ? ??? ?? ? ? ? ? = ? 12 Chi Square 2 2 ? ? ? ? ? ? ? ? ? ? ???||? = ? ? 1 ?? = ?? ? ?
? ? ? ? ???||? = ? ? ? ?? Fenchel Conjugate ? f is convex, f(1) = 0 Every convex function f has a conjugate function f* ? ? = max ? ??? ? ?? ? ? ? ?1 = max ? ??? ? ??1 ? ? ? ?2 = ? ?1 max ? ??? ? ??2 ? ? ?1?1 ? ?1 ? ?2 ?3?2 ? ?3 ?2?1 ? ?2 ?2?2 ? ?2 ?3?1 ? ?3 ?1?2 ? ?1 ?2 ?1 ?
? ? ? ? ???||? = ? ? ? ?? Fenchel Conjugate ? f is convex, f(1) = 0 Every convex function f has a conjugate function f* ? ? = max ? ??? ? ?? ? ? ?1? ? ?1 ? ?1 ? ?2 ?2? ? ?2 ?3? ? ?3 ?2 ?1 ?
Fenchel Conjugate Every convex function f has a conjugate function f* ? ? = max ? ??? ? ?? ? ? 10t 10 log 10 ? ? = ????? Something like exponential? 1t 1log1 = 1t 0 ? ? = ??? ? 1 0.1t 0.1log0.1
Fenchel Conjugate Every convex function f has a conjugate function f* (f*)* = f ? ? = max ? ??? ? ?? ? ? ? ? = ??? ? 1 ? ? = ????? ? ? = max ? ??? ? ?? ????? ? ? = ?? ????? Given t, find x maximizing ? ? ? ???? 1 = 0 ? = ??? ? 1 ? ? = ??? ? 1 ? ??? ? 1 ? 1 = ??? ? 1
Connection with GAN ? ? = ? ??? ? ?? ? ? max ? ??? ? ?? ? ? ? ? = max ? ? ? ? ? ? ? ? ? ? ? ? ???||? = ? ? ? ?? ? ? ? ? ? ? ? ? = ? ? max ?? ? ??? ? ? ? ? ? ? ? ?? max ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ???||? ? ? ?? D is a function whose input is x, and output is t ? ? ? ? ? ? ?? = ? ? ? ? ?? ? ?
Connection with GAN ? ? ? ? ? ?? ???||? max ? ? ? ? ?? D ? ? ??~?? ? ? = max ??~?? ? D Samples from Q Samples from P ??~??? ? ? Original GAN has different V(G,D) ???????||?? = max ??~?????? ? D ? = ???min ???????||?? ? ??~??? ? ? = ???min max ? ??~?????? ? ? familiar? = ???min max ? ? ?,? ?
??~???? ? ???????||?? = max ??~?????? ? D Using the f-divergence you like https://arxiv.org/pdf/1606.00709.pdf
Modified from Ian Goodfellow s tutorial Flaw in Optimization? ?? = ????????????? ?? Reverse ?? = ????? ??????? ?? ?? ????? ????? ?? ?? Minimize KL(??||?????) (reverse KL) Maximum likelihood (minimize KL(?????||??))
Mode Collapse Training with too many iterations : real data : generated data
Mode Dropping Generator switches mode during training Generator at iteration t Generator at iteration t+1 Generator at iteration t+2 BEGAN on CelebA
Train a set of generators: ?1,?2,,?? To generate an image Outlook: Ensemble Random pick a generator ?? Use ??to generate the image Generator 2 Generator 1