Autoencoders, GANs, and Diffusion Models