生成模型实战 | 条件变分自编码器(conditional Variational Autoencoder, cVAE)
生成模型实战 | 条件变分自编码器
-
- 0. 前言
- 1. cVAE 简介
- 2. cVAE 原理
-
- 2.1 变分下界的条件化
- 2.2 重参数化
- 2.3 cVAE 网络结构
- 3. 实现 cVAE
-
- 3.1 数据加载与预处理
- 3.2 构建模型
- 3.3 模型训练
0. 前言
本节首先概述条件变分自编码器 (conditional Variational Autoencoder
, cVAE
) 的核心思想:在普通 VAE
的基础上,通过将标签信息作为“条件”输入,使得生成模型可以在特定类别上进行数据重构与新样本生成。接着详细讲解 cVAE
的理论推导,包括证据下界 (Evidence Lower Bound
, ELBO
) 的条件化形式以及重参数化技巧。最后,使用 PyTorch
构建 cVAE
,并使用 Fashion-MNIST
数据集进行训练。
1. cVAE 简介
条件变分自编码器 (conditional Variational Autoencoder
, cVAE
) 是基于变分自编码器 (Variational Autoencoder, VAE) 而来的一种生成模型,它在原始 VAE
的基础上引入了条件变量(例如图像的类别标签),使编码器和解码器在“潜变量”之外,还同时接收类别信息,从而能够在生成阶段针对特定类别生成样本。相比于无条件的 VAE
,cVAE