note

  • 基础阶段:生成512×512分辨率的图像,优化模型以生成高质量的图像。
  • 超分辨率阶段:从512×512的输入生成1024×1024分辨率的图像,进一步优化图像的细节和清晰度。
  • 蒸馏版本:通过减少采样步骤,生成与原始模型相似质量的图像,但推理时间大大减少。

一、Cogview3模型

论文:CogView3: Finer and Faster Text-to-Image Generation via Relay Diffusion

相关背景:

  • 对于更高分辨率的图像进行加噪,其加噪后的结果在低频处有更高的信噪比(Signal-to-Noise Ratio,SNR)
  • 图像中的低频信息:一张图像有不同频段信息的分布,其低频往往包含了主要的纹理信息,而高频主要为图像的边缘信息,即图像的低频信息与图像的“语义”有着紧密的联系。
  • diffusion model的采样是从完全的随机高斯噪声出发;relay diffusion是使用block noise,就是将低分辨率的高斯噪声通过一个s×s的卷积核将分辨率映射为原来的s倍,从而适配高分辨率图像的训练。具体来说,如果我们要训练256×256分辨率下的diffusion models,那么s=4,即将64×64的低分辨率噪声映射成256×256的。

模型架构:

  • 三阶段的unet模型。通过变分KL正则化编码器将像素空间压缩了8倍。使用T5-XLL编码器作为文本编码器,在扩散模型的训练过程中冻结该编码器。
  • 两阶段中继扩散:
    • 扩散模型,以 512×512 的分辨率生成图像
    • 执行 2 倍超分辨率,从 512×512 的输入生成1024×1024 的图像
  • 其他:中继超分辨率、中继扩散的蒸馏

在这里插入图片描述

二、模型细节

CogView3模型的训练过程分为几个阶段,每个阶段都有其特定的目标和方法。以下是其训练过程的详细说明:

1. 文本预处理:

  • 图像重描述:首先,CogView3通过自动生成图像的描述性标题来增强训练数据。这涉及到使用语言模型(如GPT-4V)自动生成图像的详细描述,从而提供更丰富、更相关的文本信息。
  • 提示扩展:为了使模型能够更好地处理用户可能提供的简短提示,CogView3还探索了扩展用户提示的方法,使其在生成图像时能够更全面地理解用户的意图。

2. 模型框架:

  • CogView3的主体是一个具有3个阶段UNet架构的3亿参数的文本到图像扩散模型。模型在潜在图像空间中操作,该空间通过变分KL正则化自编码器从像素空间中压缩了8倍。

在这里插入图片描述

3. 训练pipeline:

  • 使用Laion-2B作为基础训练数据集,并去除包含政治敏感、色情或暴力内容的图像,以确保训练数据的适当性和质量。
  • 基础阶段训练:CogView3的基础阶段模型首先在256×256的图像分辨率上训练600,000步,然后继续在512×512的分辨率上训练200,000步。
  • 超分辨率阶段训练:在预训练的512×512模型的基础上,进一步训练1024×1024分辨率的模型100,000步,然后进行20,000步的微调,以实现最终版本的超分辨率模型。

4. Relaying Super-resolution 中继超分辨率:

  • 潜在中继扩散:CogView3的第二阶段通过中继扩散进行超分辨率增强,从基础阶段生成的结果开始扩散。与原始的像素级中继扩散不同,CogView3在潜在空间中实现中继扩散,并使用简单的线性变换代替原始的块状模糊。
  • 生成过程:在扩散过程的每一步,采样器根据当前的噪声状态和模型参数生成新的样本。
  • 逆向过程:在生成图像的逆向过程中,采样器从纯高斯噪声开始,逐步去除噪声,生成清晰的图像。
  • 采样器公式:为中继超分辨率设计了特定的采样器,通过反向过程生成图像,该过程结合了去噪和去模糊。
    • 它负责在模型的逆向过程中从噪声状态生成清晰的高分辨率图像

(1)正向扩散过程:

q ( x t ∣ x 0 ) = N ( x t ∣ F ( x 0 , t ) , σ t 2 I ) , t ∈ { 0 , … , T } q\left(x t \mid x_0\right)=\mathcal{N}\left(x t \mid F\left(x_0, t\right), \sigma_t^2 I\right), \quad t \in\{0, \ldots, T\} q(xtx0)=N(xtF(x0,t),σt2I),t{0,,T}

其中:

  • x 0 x_0 x0 是初始的高分辨率图像。
  • x t x t xt 是时间步 t t t 的图像。
  • F ( ⋅ ) F(\cdot) F() 是从高分辨率图像 x 0 x_0 x0 到低分辨率图像 x L x_L xL 的预定义转换。
  • σ t \sigma_t σt 是由噪声调度控制的噪声尺度。
  • I I I 是单位矩阵。

(2)反向扩散过程:

反向扩散过程是一个结合去噪和去模糊的过程。它从纯高斯噪声开始, 逐步生成图像。这个过程可以表示为:
q ( x t − 1 ∣ x t , x 0 ) = N ( x t − 1 ∣ a t x t + b t x ^ 0 + c t x 0 t , δ t 2 I ) q\left(x_{t-1} \mid x_t, x_0\right)=\mathcal{N}\left(x_{t-1} \mid a_t x_t+b_t \hat{x}_0+c_t x_0^t, \delta_t^2 I\right) q(xt1xt,x0)=N(xt1atxt+btx^0+ctx0t,δt2I)

其中:
∘ a t = σ t − 1 2 − δ t 2 σ t 2 \circ a_t=\frac{\sigma_{t-1}^2-\delta_t^2}{\sigma_t^2} at=σt2σt12δt2

  • b t = 1 t b_t=\frac{1}{t} bt=t1
  • c t = t − 1 t − a t c_t=\frac{t-1}{t}-a_t ct=tt1at
  • x ^ 0 \hat{x}_0 x^0 是预测的去噪结果。
  • δ t \delta_t δt 表示采样器的随机度。

(3)潜在空间中的中继扩散:

在CogView3中, 中继扩散在潜在空间中进行, 而不是在像素空间中。这个过程可以表示为:
z t 0 = F ( z 0 , t ) = T r − t T r z 0 + t T r z L z_t^0=F\left(z_0, t\right)=\frac{T_r-t}{T_r} z_0+\frac{t}{T_r} z_L zt0=F(z0,t)=TrTrtz0+TrtzL

其中:

  • z 0 z_0 z0 是初始图像的潜在表示。
  • z L z_L zL 是低分辨率图像的潜在表示。
  • T r T_r Tr 是中继扩散的开始时间点。
  • z t 0 z_t^0 zt0 是时间步 t t t 的潜在表示。

(4)训练目标:

训练目标是最小化去噪后的潜在表示与原始潜在表示之间的差异:
E x 0 ∼ p data  E ϵ ∼ N ( 0 , I ) ∥ D ( z t 0 + σ t ϵ , t , c text  ) − z 0 ∥ 2 \mathbb{E}_{x_0 \sim p_{\text {data }}} \mathbb{E}_{\epsilon \sim \mathcal{N}(0, I)}\left\|D\left(z_t^0+\sigma_t \epsilon, t, c_{\text {text }}\right)-z_0\right\|^2 Ex0pdata EϵN(0,I) D(zt0+σtϵ,t,ctext )z0 2

其中:

  • D D D 是UNet去噪器函数。
  • c t e x t c_{\mathrm{text}} ctext 是输入文本条件。
  • z 0 z_0 z0 是原始图像的潜在表示。 z t 0 z_t^0 zt0 是时间步 t t t 的潜在表示

5. 中继扩散的蒸馏:

  • 结合渐进式蒸馏方法和中继扩散框架,实现了CogView3的蒸馏版本。在超分辨率阶段,通过将教师模型的两个步骤与学生模型的一个步骤匹配,逐步减少采样步骤,从而减少推理时间。

6. 整体的训练目标:

  • 基础阶段:生成512×512分辨率的图像,优化模型以生成高质量的图像。
  • 超分辨率阶段:从512×512的输入生成1024×1024分辨率的图像,进一步优化图像的细节和清晰度。
  • 蒸馏版本:通过减少采样步骤,生成与原始模型相似质量的图像,但推理时间大大减少。

三、模型效果

几个机器评估的benchmark如下,cogview3的蒸馏版本效果也是很强,对应的评价指标解释:

  • Aes:美学评分(Aesthetic Score),衡量图像的美学质量。
  • HPS v2:人类偏好评分 v2(Human Preference Score v2),衡量人类对图像的偏好。
  • ImageReward:图像奖励(ImageReward),衡量图像的整体质量,包括文本-图像对齐和美学。
  • FID:Fréchet Inception Distance,衡量生成图像与真实图像分布之间的差异。

[图片]

Reference

[1] CogView3: Finer and Faster Text-to-Image Generation via Relay Diffusion
[2] 从Relay Diffusion到Cogview 3:浅谈Noise Scheduling与扩散模型
[3] (2024,CogView3,级联架构,中继扩散,超分辨率,线性模糊,蒸馏)通过中继扩散进行更精细、更快的文本到图像生成
[4] Stable Diffusion 3技术报告:结合DiT,碾压DALL·E 3等模型

Logo

助力广东及东莞地区开发者,代码托管、在线学习与竞赛、技术交流与分享、资源共享、职业发展,成为松山湖开发者首选的工作与学习平台

更多推荐