A personal exploration of generative models, covering theory, experiments, and practical implementations. This repository serves as a learning lab where I experiment with different architectures, datasets, and techniques in modern generative AI.
This project focuses on understanding and implementing a variety of generative modeling approaches, including Diffusion Models, Flow matching, ... The goal is to combine theory + hands-on experiments to build intuition and practical skills.
- Python
- PyTorch / TensorFlow
- Jupyter Notebooks
- NumPy, Matplotlib, Pandas
- Understand how generative models work under the hood
- Reproduce key papers and architectures
- Experiment with custom datasets
- Document learnings and insights
🌱 Fundamentals:
- 📝 Introduction to Generative models — Google
- 📝 Generative AI — IBM
- 📖 Understanding Deep Learning — J.D. Prince
- 📖 Generative Deep Learning — David Foster
🎨 GANs (Generative Adversarial Networks):
- 📝 Introduction to GANs — Google
- 📝 What is a GAN? — IBM
- 💻 GANS with pytorch
🌊 Diffusion Models:
- 📝 What is a Diffusion model? — IBM
- 📝DPM
- 🔗 Dreambooth website
- 📺 DDPM vs DDIM
- 📄 Scaling Rectified Flow Transformers for High-Resolution Image Synthesis
- 🔗 Diffusers library — Huggingface
- 📝 Classifier guidance vs Classifier-free guidance
- 📄 MultiDiffusion: Fusing Diffusion Paths for Controlled Image Generation
- 📺 MultiDiffusion explanation paper — Omer Bar-Tal
- 📄 ControlNet
- 📝 ControlNet explained paper — Neeresh Perla
- 🔗 UltraZoom
🔃 Flow Matching:
- 📝 Introductio to Flow Matching
- 📄 Flow Matching for generative modeling
- 💻 Flow Matching from scratch
- 💻 Facebook Research Github Repo
- 📄 Flow Matching Guide and Code
⏳ VAEs (Variational Autoencoders):
- 📝 What is a VAEs? — IBM
🎓 Academic Courses & Comparisons: