Whenever someone says this I like to point out that they are very often used to train the VAE and VQVAE models that LDM models use. Slowly diffusion is encroaching on its territory with 1-step models, however, and there are now alternative methods to generate rich latent spaces and decoders too, so this is changing, but I'd say up until last year most of the image generators still used an adversarial objective for the encoder-decoder training. This year, not sure..
Exactly, for real time applications VTO, simulators,...), i.e. 60+FPS, diffusion can't be used efficiently. The gap is still there afaik. One lead has been to distill DPM into GANs, not sure this works for GANs that are small enough for real time.
I mean it is really hard to push diffusion models down in size so that just makes the speed part hard. I'm not sure diffusion can ever truly win in the speed race, at least without additional context like breadth of generation. But isn't that the thing? The best model is only the best in a given context?
I think the weirdest thing in ML has always been acting like there's an objectively better model and no context is needed.
Adversarial loss is still use on most image generators, diffusion/autoregressive models work on a latent space (they don't have to, but it would incredibly inefficient) created by an autoencoder, these autoencoders are trained on several losses, usually L1/L2, LPIPS and adversarial.
Whilst it's maybe not worth studying them in detail I'd say being aware of their existence and roughly how they work is still useful. Seeing the many varied ways people have done things with neural networks can be useful inspiration for your own ideas and perhaps the ideas and techniques behind GANs will find a new life or a new purpose.
Yes you can just concentrate on the latest models but if you want a better grounding in the field some understanding of the past is important. In particular reusing ideas from the past in a new way and/or with better software/hardware/datasets is a common source of new developments!
GAN is not a architecture its a training method. As the models themselves change underneath, GAN remain relevant. (Just as you see autoencoder still being used as a term in new published works, which is even older.)
Though if you can rephrase the problem into a diffusion it seems to be prefered these days. (Less prone to mode collapse)
Gan is famously used for generative usecases, but has wide uses for creating useful latent spaces with limited data, and show up in few-shot-learning-papers. (Im actually not that up to speed on the state of art in few-shot so mabie they have something clever that replace it)
They're used as a small regularization term in image/audio decoders. But GANs have a different learning dynamic (Z6 rather than Z1 or Z2) which makes them pretty unstable to train unless you're using something like Bayesian neural networks, so they fell out of favor for the entire image generation process.
Last time I used a GAN was in 2015, still interesting to see a post about GANs now and then.