AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


Stable Diffusion 3.5 :大型多模态开放模型的发布
发布日期:2024-10-24 09:10:01 浏览次数: 1754 来源:零壹白洞


    10 月 22 号 Stable AI 推出稳定 SD 3.5 版本开放模型。此公开版本包含多个模型变体,包括稳定扩散 3.5 Large 版本和稳定扩散 3.5 Large Turbo。此外,稳定扩散 3.5 medium 版本, Stable AI 又要重回巅峰了么。
     这里主要开放模型和开源模型的区别,开放模型是指能模型的访问和使用没有限制,用户可以自由使用、修改和分发这些模型,注重模型,但是没得核心代码细节。后者强调所有细节可控注重代码。

    这些模型的尺寸可高度定制,可在消费级硬件上运行,并且根据宽松的Stability AI 社区许可,可免费用于商业和非商业用途。现在可以从Hugging Face下载 Stable Diffusion 3.5 Large 和 Stable Diffusion 3.5 Large Turbo ,并在GitHub 上下载推理代码。

本文重点:
  • 介绍 Stable Diffusion 3.5 Large Turbo 设计原理和技术
  • 3.5 开放模型的特点

    Stable Diffusion 3.5 版本在以下方面表现出色,使其成为市场上最可定制、最易于访

问的图像模型之一,同时在及时性和图像质量方面保持顶级性能:

  • 可定制性:轻松微调模型以满足您的特定创作需求,或根据定制的工作流程构建应用程序。

  • 高效性能:经过优化,可在标准消费硬件上运行,无需繁重工作,尤其是 Stable Diffusion 3.5 Medium 和 Stable Diffusion 3.5 Large Turbo 型号。

  • 多样化输出:创建代表世界的图像,而不仅仅是一种类型的人,具有不同的肤色和特征,无需大量提示。

  • 风格多样:能够生成各种风格和美感,如 3D、摄影、绘画、线条艺术以及几乎任何可以想象的视觉风格。

    Stable Diffusion 3.5 Large Turbo 提供了同类模型中最快的推理时间,同时在图像质量和及时性方面保持了高度竞争力,即使与类似尺寸的非蒸馏模型相比也是如此。

Stable Diffusion 3.5 Large Turbo

    是一种多模态扩散变换器 (MMDiT) 文本到图像模型(下图右边),具有对抗性扩散蒸馏 (ADD) 的特点,在图像质量、排版、复杂提示理解和资源效率方面具有改进的性能,重点是减少推理步骤。

MMDiT

    这个在早期论文解读已经做过对应分析了,各位看官看这  Stable Diffsuion 3 —— 来自官方更新的黑魔法。这里再提一下,下图中重复了t次,每次 t 都加入噪声去完成扩散的采集,其中文本和图像都会通过 embedding 形式进行映射,这里原理和 CLIP (openAI 提出的图像文本对应)一致。然后加入 Transform 模型架构,注意力关注特征本身,最终 MLP 多层感知机,进行前馈传播输出到下一层。

ADD (Adversarial Diffusion Distillation)

    对抗扩散蒸馏 (ADD),这是一种新颖的训练方法,只需 1-4 步即可高效采样大规模基础图像扩散模型,同时保持高图像质量。使用分数蒸馏 ( 一文了解 2024 China 谷歌 IO AI 技术点 )来利用大规模现成的图像扩散模型作为教师信号,并结合对抗损失,以确保即使在一个或两个采样步骤的低步长范围内也能实现高图像保真度。

    扩散模型的主要优势之一是其可扩展性和迭代性,这使它们能够处理复杂的任务,例如从自由格式的文本提示进行图像合成。然而,DM 中的迭代推理过程需要大量的采样步骤,这目前阻碍了它们的实时应用。另一方面,生成对抗网络 (GAN) 的特点是其单步公式和固有速度。但尽管尝试扩展到大型数据集,但 GAN 在样本质量方面往往不如 DM。
    ADD 工作的目的是将 DM 的卓越样本质量与 GAN 的固有速度结合起来 。SD 团队的方法在概念上很简单,引入了两个训练目标的组合:(i) 对抗损失和 (ii) 对应于分数蒸馏采样 (SDS) 的蒸馏损失。对抗损失迫使模型在每次前向传递时直接生成位于真实图像流形上的样本,避免其他蒸馏方法中通常观察到的模糊和其他伪影。蒸馏损失使用另一个经过预训练(和固定)的 DM 作为教师,以有效利用预训练 DM 的广泛知识并保留在大型 DM 中观察到的强组合性。
    推理过程中,团队的方法不使用无分类器指导,从而进一步降低了内存要求。保留了模型通过迭代细化改进结果的能力,这比以前的基于 GAN 的单步方法更具优势。
架构&原理
    实现过程如上图,训练过程涉及三个网络:从左上 ADD 学生模型描述,它由一个预训练的 UNet-DM(权重为 θ)、一个可训练的判别器(上图右边权重为 ϕ)和一个冻结权重为 ψ 的 DM 教师模型知识蒸馏来的。
    在训练期间,ADD 学生模型从噪声数据 x 生成样本 x (xs, s)。噪声数据点通过前向扩散过程 x = αx + σϵ 从真实图像数据集 x0 生成。然后团队使用与学生 DM 模型相同的系数 αs 和 σs,并从一组 N 个选定,时间步长的 T = {τ1, ..., τn} 中均匀采样 s(如上图左上)。在实践中,选择 N = 4。

    对于对抗性目标,生成的样本 x (xs, s) 和真实图像 x0 被传递给鉴别器,然后判别器区分它们。鉴别器和对抗性损失的设计就是满足判别器最终生成图满足判别器标准。为了从 DM 老师模型那里提取知识,我们将学生样本  x (xs, s) 与老师的前向过程一起扩散,并使用老师的扩散模型去噪预测 xψ (x,t),其中利用教师模型作为蒸馏损失的重建目标。

    所以总体目标的损失公式如下:

对抗性损失

    通过投影文本嵌入ctext在文本到图像设置中使用附加信息来调节鉴别器。与标准GAN训练相比,团队的训练配置还允许对给定图像进行条件处理。对于 τ < 1000,ADD 学生模型从输入图像 x0 接收一些信号。因此,对于给定的生成样本x (x, s),可以根据来自 x0 的信息来调节鉴别器。这鼓励 ADD 学生模型有效地利用输入。

     白话讲解,想象一下,有两个队伍在玩一个游戏,一个是生成队,一个是判别队。生成队的任务是尽可能地制造出真实的图像,而判别队的任务是分辨出哪些图像是真的,哪些是生成队造出来的假货。对抗损失就是这个游戏的规则之一,它确保生成队不能偷懒,必须不断进步,制造出越来越逼真的图像,否则就会被判别队识破。回到上面公式说明,xθ 表示学生模型输出的图像,x0 表示真实的干净图像。这里的 Dk是判别器的第 k 个头,它尝试区分真假图像。Fk 是特征提取网络的第 k 层,它提取图像的特征。公式就是求和当前所有期望值。学生模型的目标是最大化这个对抗损失,这意味着它希望判别器把它生成的图像判断为真实图像。换句话说,学生模型希望判别器在看到它生成的图像时上当。

蒸馏损失

    白话讲解,上图这里的 xθ 表示学生模型输出的图像,xψ 表示老师模型输出的图像,而 x0 表示真实的干净图像。而 d 是一个距离函数,用来衡量学生模型的输出和老师模型的输出之间的差异。通常使用欧几里得距离,也就是两点之间的直线距离。c(t) 是一个权重函数,它根据当前的噪音水平来调整损失。在更高噪音水平下,我们总希望学生模型能够更关注老师模型的输出。而 sg 是一个停止梯度的符号,意味着我们期望已经达到,在这一步不计算梯度,因为关注只是想要老师模型的输出,而不是它的内部状态。

    所以,这个公式的意思是,计算学生模型输出和老师模型输出之间的平均距离,然后乘以权重函数 c(t)。这个结果就是蒸馏损失,我们希望这个损失尽可能小。

总结

    Stable Diffusion 3.5 Large Turbo 引入了对抗性扩散蒸馏,这是一种将预训练扩散模型蒸馏成快速、几步图像生成模型的通用方法。团队结合了对抗性和分数蒸馏目标来蒸馏,通过鉴别器利用真实数据,通过扩散教师模型利用结构理解使在单步或两步的超快速采样机制中表现尤为出色,事实上,使用四个采样步骤,模型优于广泛使用的多步骤生成器,如 SDXL、IF 和 OpenMUSE。


53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询