Stable diffusion 原理解读
名词解释
- 正向扩散(Fixed Forward Diffusion Process):
- 反向扩散(Generative Reverse Denoising Process)
- VAE(Variational AutoEncoder):一个用于压缩图片的神经网络,按照我的理解,通过这个模组的图片/文本,将被映射更加精确的向量。
- Latent Space(潜变量空间):被VAE压缩/升维后的向量。
- Unet:一个用来预测噪声的图像分割模型
- CLIP:Tokenizer + Text Encode
- Sampler:控制迭代次数和迭代总数的规划期。可以有线性规划等规划方式,去分配,在训练中,每一个epoch中加入多少次噪音。
- 迭代次数:epoch
- 迭代总数:要加多少次噪音。
Unet原理分析
- 图像分割的几种分类。图像分割,就是将像素点达标成thing的过程。
- 网络结构
网络结构就是卷积下采样 + 反卷积/反池化 上采样的过程
- 训练集样例
- Unet 在stable diffusion中的使用。Unet是用于图像分割的,用于预测像素的分类。在stable diffusion中,就使用它预测噪声,去除噪声。
- 在一张图像中,加入随机生成噪声,并且将这张图片和这个噪声分类放到训练集中去。那么就可以通过一张图片,获得有很多图片的训练集。
- 训练Unet,将图片中的噪音点打标出来。输入图片,输出噪音。并且将噪音去除,就能从一个噪音图片中还原出一个图像~
- 在一张图像中,加入随机生成噪声,并且将这张图片和这个噪声分类放到训练集中去。那么就可以通过一张图片,获得有很多图片的训练集。
图生图/文生图
- 将图片压缩成潜在变量/在潜在空间中latent space中随机生成一个噪音图片
- 加入随机噪声/文生图略
- Unet 预测噪声、去噪
- 生成新的图片