About this course
Study the models that generate images, text, and audio, from diffusion models to GANs and autoregressive generators.
Built a conditional generative pipeline in Python with PyTorch and Hugging Face Diffusers, implementing and benchmarking VAE, GAN, autoregressive, and diffusion generators with classifier-free guidance and FID evaluation on a shared data modality.
Expected outcomes
- Formalize generative modeling as learning a data distribution
- Derive the variational lower bound and the VAE objective
- Explain the adversarial minimax game and GAN training dynamics
- Derive the diffusion forward and reverse processes and the denoising objective
- Connect diffusion to score matching and stochastic differential equations
- Build autoregressive generators and analyze their likelihood factorization
- Implement conditional and guided generation including classifier-free guidance
- Evaluate generative models with FID, likelihood, and sample-quality metrics
- Analyze the likelihood, sampling, and mode-coverage trade-offs across model families
- Deploy a conditional generative pipeline end to end
Key topics
- Diffusion models
- GANs & VAEs
- Autoregressive generation
- Evaluating generative output
Theoretical foundations
The concepts and results this course rests on.
- maximum-likelihood estimation of a data distribution
- the evidence lower bound and variational inference
- the reparameterization trick and the variational autoencoder
- the adversarial minimax game and the optimal discriminator
- the autoregressive likelihood factorization and causal masking
- the diffusion forward and reverse denoising processes
- score matching and stochastic differential equations
Prerequisites
Course-specific prerequisites:
- Deep Learning
- Probability and linear algebra
Weekly schedule 13 weeks · lecture + practice
Students use AI assistants to generate and refactor PyTorch VAE, GAN, autoregressive, and Diffusers pipeline code, vibe-coding the DDPM noise schedule and classifier-free guidance. They prompt AI to synthesize toy datasets, write reparameterization and sampling routines, and generate tests for FID and precision-recall scoring. AI also helps read sample grids, latent interpolations, and FID curves, diagnosing mode collapse or posterior collapse from the evidence.
Student project
Teams build one conditional generative system on a chosen data modality, implementing and comparing VAE, GAN, autoregressive, and diffusion approaches against shared metrics. The project culminates in a controllable, conditional generator backed by the probabilistic theory taught each week.
Requirements
- Build a working system, not a set of disconnected exercises.
- Be original: a new system that solves a real problem, not a re-implementation of a tutorial or course demo.
- Show real depth: real data, real users or realistic load, and engineering trade-offs that are measured rather than assumed.
- Carry one running project from specification to a deployed, defensible result across the whole term.
- Work in a team of three or four and defend the design at each of the three presentations (weeks 5, 8, and 13).
Example projects
Assessment & grading
Grading is project-based, with no written exam. Teams of three or four present one running project three times.
| Component | What it covers | Weight |
|---|---|---|
| Project · Specification | Presentation 1 (week 5): problem, objectives, and architecture | 20% |
| Project · Interim | Presentation 2 (week 8): the working system demonstrated live | 30% |
| Project · Final | Presentation 3 (week 13): end-to-end demo with oral defense | 50% |
Tools & platforms
- PyTorch: model implementation and training
- Hugging Face Diffusers: diffusion model pipelines
- Hugging Face Transformers: autoregressive backbones
- torchvision: image datasets and transforms
- clean-fid: standardized FID evaluation
- Weights and Biases: experiment tracking and sample logging
- Accelerate: multi-device training
- einops: tensor reshaping for generative models
- NumPy: numerical computation
- Matplotlib: sample and latent-space visualization
- Gradio: interactive generation demos
- ONNX Runtime: optimized inference
Free online courses
Existing free, video-based courses this course can build on, for self-study or as a teaching basis.
- YouTubeStanford CS236: Deep Generative Models (2023)
- YouTubeBerkeley CS294-158: Deep Unsupervised Learning (Spring 2024)
In Hebrew · בעברית
- Google Cloud (Coursera)Introduction to Generative AI - בעברית
- Dr. Amos Azaria, Ariel University (YouTube)Deep Learning and NLP - קורס למידה עמוקה ועיבוד שפות טבעיות
Primary literature
Seminal works to read for graduate-level depth.
References
Books and resources link to an online or publisher page.
- PaperDenoising Diffusion Probabilistic Models
- PaperGenerative Adversarial Networks
- PaperAuto-Encoding Variational Bayes
- PaperScore-Based Generative Modeling through Stochastic Differential Equations
- PaperHigh-Resolution Image Synthesis with Latent Diffusion Models
- TextbookProbabilistic Machine Learning: An Introduction
- TextbookDeep Learning
- DocumentationHugging Face Diffusers Documentation
Role in each concentration
| Concentration | Role |
|---|---|
| Intelligent Software Systems | Elective |
| Networking & Cyber Security | Elective |
| AI & Robotics | Core · Semester 2 |
| AI and Quantum Computing for Finance | Elective |
| Immersive Systems & Game Development | Core · Semester 2 |
| Defense Technologies & Autonomous Systems | Elective |