Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Intro to Variational AutoEncoder

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.

Intro to Variational AutoEncoder

Presented at "The second Deep Learning summer school at University of Tehran": http://acm.ut.ac.ir/deeplearning/

Avatar for Yasser Souri

Yasser Souri

August 02, 2018
Tweet

More Decks by Yasser Souri

Other Decks in Technology

Transcript

  1. Generative Models • Two key tasks • Sampling • Likelihood

    estimation • And of course you need to learn it from data !4
  2. Latent Variable Models z x pθ (x, z) = pθ

    (x|z) p(z) Learning with Maximum Likelihood θmax = argmax θ log pθ (x) !10
  3. Latent Variable Models z x pθ (x, z) = pθ

    (x|z) p(z) Learning with Maximum Likelihood θmax = argmax θ log pθ (x) θmax = argmax θ log ∫ pθ (x, z)dz !11
  4. Latent Variable Models z x pθ (x, z) = pθ

    (x|z) p(z) Learning with Maximum Likelihood θmax = argmax θ log ∫ pθ (x, z)dz !12
  5. Latent Variable Models z x pθ (x, z) = pθ

    (x|z) p(z) Posterior probability pθmax (z|x) = pθmax (x, z) ∫ pθmax (x, z)dz !13
  6. Latent Variable Models z x pθ (x, z) = pθ

    (x|z) p(z) Variational distribution pθmax (z|x) = pθmax (x, z) ∫ pθmax (x, z)dz qϕ (z|x) !14
  7. Latent Variable Models z x pθ (x, z) = pθ

    (x|z) p(z) qϕ (z|x) pθ (x|z) Decoder Encoder !15
  8. ELBO log pθ (x) = log ∫ pθ (x, z)dz

    = log ∫ pθ (x|z) p(z)dz !17
  9. ELBO log pθ (x) = log ∫ pθ (x, z)dz

    = log ∫ pθ (x|z) p(z)dz = log ∫ qϕ (z|x) qϕ (z|x) pθ (x|z) p(z)dz !18
  10. ELBO log pθ (x) = log ∫ pθ (x, z)dz

    = log ∫ pθ (x|z) p(z)dz = log ∫ qϕ (z|x) qϕ (z|x) pθ (x|z) p(z)dz ≥ ∫ qϕ (z|x) log pθ (x|z) p(z) qϕ (z|x) dz !19
  11. ELBO log pθ (x) ≥ ∫ qϕ (z|x) log pθ

    (x|z) p(z) qϕ (z|x) dz !20
  12. ELBO log pθ (x) ≥ ∫ qϕ (z|x) log pθ

    (x|z) p(z) qϕ (z|x) dz = z∼qϕ (z|x) [log pθ (x|z)] − KL[qϕ (z|x) ∥ p(z)] !21
  13. Latent Variable Models z x pθ (x, z) = pθ

    (x|z) p(z) qϕ (z|x) pθ (x|z) Decoder Encoder log pθ (x) ≥ z∼qϕ (z|x) [log pθ (x|z)] − KL[qϕ (z|x) ∥ p(z)] !22
  14. VAE p(z) = (0,I) pθ (x|z) = (x| f(z; θ),

    σ2 * I) qϕ (z|x) = (z|μ(x; ϕ), Σ(x; ϕ)) !26
  15. VAE z∼qϕ (z|x) [log pθ (x|z)] − KL[qϕ (z|x) ∥

    p(z)] log pθ (x|z) ∝ − ∥ f(z; θ) − x ∥2 2 KL[qϕ (z|x) ∥ p(z)] = 1 2 (tr(Σ(x; ϕ)) + (μ(x; ϕ)T μ(x; ϕ)) − k − log det(Σ(x; ϕ))) !27
  16. VAE Training x μ(x; ϕ) Σ(x; ϕ) qϕ (z|x) KL[qϕ

    (z|x) ∥ p(z)] z ∼ (μ(x; ϕ), Σ(x; ϕ)) pθ (x|z) f(z; θ) ∥ f(z; θ) − x ∥2 2 !28
  17. Reparameterization Trick x μ(x; ϕ) Σ(x; ϕ) qϕ (z|x) KL[qϕ

    (z|x) ∥ p(z)] ϵ ∼ (0, I) pθ (x|z) f(z; θ) ∥ f(z; θ) − x ∥2 2 * + !29
  18. Applications • Conditional Generation Walker, Jacob, et al. "An uncertain

    future: Forecasting from static images using variational autoencoders." European Conference on Computer Vision. Springer, Cham, 2016.
  19. VAE vs. GAN • VAE: Blurrier and smaller images •

    VAE + GAN is interesting • VAE gives you a framework to extend and design Eslami, SM Ali, et al. "Attend, infer, repeat: Fast scene understanding with generative models." Advances in Neural Information Processing Systems. 2016.
  20. Thank you for your attention Doersch, Carl. "Tutorial on variational

    autoencoders." arXiv preprint arXiv:1606.05908 (2016). Kingma, Diederik P., and Max Welling. "Auto-encoding variational bayes." arXiv preprint arXiv:1312.6114 (2013).