什么是无分类器引导 (CFG)

AI解读 7小时前 硕雀
6 0

无分类器引导Classifier‑Free Guidance,简称 CFG)概述


1. 什么是 CFG

CFG 是一种在 条件扩散模型(如 Stable Diffusion、GLIDEMidjourney 等)采样阶段使用的技术,旨在 在不额外训练分类器的前提下,提升生成样本对条件(文本、标签、图像等)的匹配度,同时保持较高的图像质量。其核心思想是 将同一网络在有条件和无条件两种情形下的噪声预测进行线性组合,通过一个可调的 “引导尺度”  来控制条件信息的强化程度。


2. 为什么需要 CFG

  • 传统分类器引导Classifier Guidance)需要额外训练一个独立的分类器,并在采样时把分类器的梯度加入噪声预测中,计算成本高且可能出现梯度冲突。
  • CFG 通过条件 dropout(在训练时随机丢弃条件信息)让同一模型同时学习 条件  与 无条件  的预测,从而在推理时无需额外模型即可实现引导。

3. 训练方式

  1. 条件 dropout:在每个训练步骤,以一定概率(常见 10%‑20%)把条件  替换为 “空” 。
  2. 共享网络:同一 U‑Net 同时输出有条件和无条件的噪声预测,参数完全共享。
  3. 损失函数:对两种情形分别计算均方误差并加权求和,整体仍保持原始扩散模型的训练目标。

4. CFG 的优势

方面 说明
无需额外分类器 训练、部署成本大幅降低
可调节性强 通过  灵活平衡 保真度 与 多样性
兼容性好 适用于 DDPMDDIM、Euler、LMS 等多种采样器
提升条件匹配 在文本‑图像、图像‑到‑图像、3D 生成等任务中显著提升提示遵循度

5. 常见的改进与变体

变体 关键思路 参考
自适应 CFG(Adaptive CFG) 根据不同视角或阶段动态调整 ,在保持几何形状的同时提升纹理细节
残差无分类器引导(RCFG) 用“残差噪声”近似负条件,仅在采样初期计算一次,显著降低计算开销
CFG++ / Manifold‑constrained CFG 在采样过程中加入流形约束,缓解高  导致的模式崩溃与伪影
内部 CFG(ICFG) 将无条件预测替换为基模型的噪声输出,提升条件生成质量
预测‑校正视角(Predictor‑Corrector) 将 CFG 解释为一次去噪预测加一次 Langevin 校正,提供理论解释并指导新采样器设计

6. 应用场景

  1. 文本‑到‑图像:Stable Diffusion、DALL·E‑2 等均默认使用 CFG,用户通过调节 guidance_scale 控制图像与提示的契合度。
  2. 图像‑到‑图像编辑:如 InpaintingImg2Img,CFG 能在保持原始结构的同时强化编辑指令。
  3. 3D/多视图生成:在多视角合成中,适当的 CFG 能平衡细节与几何一致性。
  4. 视频扩散:对每帧使用相同的 CFG 参数,可保持时序一致性。
  5. 语言模型采样:近期研究将 CFG 思路迁移到大语言模型的条件生成(如指令微调)。

8. 使用注意事项

  • 引导尺度选择
    • 小 (≈1‑3) → 多样性好,提示遵循度一般。
    • 中等 (≈5‑10) → 常用范围,兼顾质量与多样性。
    • 大 (>15) → 生成更贴合提示,但易出现 伪影、模式崩溃,需配合 CFG++ 或 RCFG 等技巧缓解。
  • 显存消耗:每一步需要两次模型前向,显存使用约翻倍;在显存受限的环境下可适当降低分辨率或关闭 CFG。
  • 噪声尺度:在高分辨率或细节丰富的任务中,建议使用 自适应 或 残差 方案,以降低高  带来的噪声放大问题。

9. 小结

无分类器引导(CFG)是 条件扩散模型 中最核心的采样技巧之一。它通过 共享网络 + 条件 dropout 的训练方式,使模型在同一次前向传播中即可得到有条件与无条件的噪声预测;在推理时通过 线性组合 与 可调引导尺度,在不增加额外模型的前提下显著提升生成内容对条件的匹配度。随着 自适应、残差、CFG++ 等变体的出现,CFG 已经从最初的“提升质量”演进为一个 可调、可扩展、理论可解释 的框架,广泛服务于文本‑图像、图像‑编辑、3D/视频生成等多模态生成任务。

来源:www.aiug.cn
声明:文章均为AI生成,请谨慎辨别信息的真伪和可靠性!