About this course
Study the models that generate images, text, and audio, from diffusion models to GANs and autoregressive generators.
Teams implement one generative model family from scratch (VAE or GAN) in PyTorch, train and evaluate it on a chosen image dataset using FID measurement, then fine-tune a pre-trained Stable Diffusion model for a custom domain using LoRA and evaluate the domain adaptation quality with Gradio demos.
Expected outcomes
- Derive the ELBO via Jensen's inequality and implement a VAE encoder-decoder with reparameterization trick, KL divergence, and reconstruction loss from scratch in PyTorch.
- Analyze GAN minimax training and Nash equilibrium, apply Wasserstein distance, gradient penalties, spectral normalization, and progressive growing to stabilize adversarial learning.
- Derive score matching and denoising score estimation, implement the DDPM noise schedule and DDIM accelerated sampling, and connect diffusion to score-based SDEs.
- Apply classifier-free guidance, negative prompts, ControlNet, and IP-Adapter for conditional generation, and fine-tune Stable Diffusion with LoRA for domain-specific image synthesis.
- Implement autoregressive generation with causal masking and teacher forcing, and evaluate generative models rigorously using FID, IS, precision-recall, and LPIPS.
- Address ethical responsibilities for generative systems, including deepfake detection, C2PA content provenance watermarking, synthetic data bias auditing, and disclosure obligations.
Key topics
- Diffusion models
- GANs & VAEs
- Autoregressive generation
- Evaluating generative output
Theoretical foundations
The concepts and results this course rests on.
- Jensen's inequality, the evidence lower bound, and amortized variational posterior inference
- VAE encoder-decoder architecture, the reparameterization trick, KL divergence, and reconstruction loss
- GAN minimax objective, the optimal discriminator, Nash equilibrium, and Wasserstein distance with gradient penalties
- Mode collapse, spectral normalization, progressive growing, and minibatch discrimination for GAN stabilization
- Stein score function, denoising score estimation, noise-conditional networks, and Langevin dynamics
- DDPM forward noising process, reverse denoising objective, DDIM accelerated sampling, and score-based SDE
- Classifier-free guidance scale, negative prompts, ControlNet spatial conditioning, and IP-Adapter image prompting
- Autoregressive left-to-right likelihood factorization, causal masking, teacher forcing, and exposure bias
- FID, Inception Score, precision-recall, and LPIPS as evaluation metrics for generative output quality and diversity
- Deepfake detection, C2PA content provenance watermarking, synthetic data bias, and disclosure obligations
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 and GAN code, vibe-coding the DDPM noise schedule, reparameterization trick, and classifier-free guidance. They prompt AI to write LoRA fine-tuning scripts, Gradio demo wrappers, and evaluation harnesses using torch-fidelity and cleanfid. AI also helps interpret FID curves and sample grids, diagnosing mode collapse, posterior collapse, or guidance artifacts from quantitative and visual evidence.
Student project
Teams implement one generative model family from scratch (VAE or GAN) in PyTorch, train and evaluate it on a chosen image dataset with FID measurement, then fine-tune a pre-trained Stable Diffusion model for a custom domain using LoRA and evaluate the domain adaptation quality with a Gradio demo. The project is presented three times across the semester and culminates in a complete, deployable generative pipeline.
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% |
Target roles
Graduates of this course are prepared for the following professional roles.
Generative Model Engineer
Implements and trains VAEs, GANs, and diffusion models from scratch in PyTorch, evaluates generation quality with FID and IS metrics, applies conditioning and guidance techniques, fine-tunes pre-trained diffusion models for domain-specific generation, and deploys generative inference pipelines with Gradio demos.
AI Content Generation Specialist
Adapts pre-trained generative models for creative and enterprise use cases using ControlNet and LoRA fine-tuning, engineers conditioning prompts and negative prompts for diffusion models, evaluates output quality and diversity, and integrates generative pipelines into product workflows with appropriate guardrails.
Tools & platforms
- Hugging Face Diffusers: diffusion pipeline implementation and inference
- ComfyUI: visual node-based workflow for conditional generation
- Stable Diffusion: pre-trained latent diffusion base model
- torch-fidelity: FID and Inception Score evaluation
- LPIPS: perceptual similarity metric
- Gradio: interactive generative demo deployment
- JAX / Flax: alternative functional framework for GAN experiments
- cleanfid: standardized clean FID computation
- Hugging Face Hub: model sharing and versioning
- DALL-E / Imagen API: API-based generation for baseline comparison
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 for advanced study.
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 |