前言
关于为何写此文,说来同样话长啊,历程如下
- 我司LLM项目团队于23年11月份在给一些B端客户做文生图的应用时,对比了各种同类工具,发现DALLE 3确实强,加之也要在论文100课上讲DALLE三代的三篇论文,故此文的2.3节中重点写了下DALLE 3的训练细节:AI绘画与多模态原理解析:从CLIP、BLIP到DALLE 3、Stable Diffusion、MDJ
- 在精读DALLE 3的论文时,发现其解码器用到了Consistency Models 当然,后来OpenAI首届开发者大会还正式发布了这个模型,让我对它越发好奇
- Consistency Models的第一作者宋飏也证实了该模型是DALLE 3的解码器 而宋飏不算扩散圈的新人,因为早在2019年,斯坦福一在读博士宋飏和其导师通过此文《Generative Modeling by Estimating Gradients of the Data Distribution》提出了一种新方法来构建生成模型:即不需要估计数据的概率分布(高维曲面),相反,它估计的是分布的梯度(可以看成是高维曲面的斜率)
- 至此,已确定必须得研究下这个「AI绘画神器DALLE 3的解码器:一步生成的扩散模型之Consistency Models」了
且为照顾到不同读者对该模型了解的需求程度,本文会分为三个部分,一步一步、循序渐进、由浅入深,大家可以根据自身的需要重点看到哪一层(有的看到第一层即可,有的则可以看到第二层甚至第三层)
第一层 什么是Consistency Models
相比扩散模型,它主要有两大优势:
- 其一,无需对抗训练(adversarial training),就能直接生成高质量的图像样本。
- 其二,相比扩散模型可能需要几百甚至上千次迭代,一致性模型只需要一两步就能搞定多种图像任务——包括上色、去噪、超分等,都可以在几步之内搞定,而不需要对这些任务进行明确训练(当然,如果进行少样本学习的话,生成效果也会更好)
原理上,一致性模型直接把随机的噪声映射到复杂图像上,输出都是同一轨迹上的同一点,所以实现了一步生成
论文提出两种训练方法
- 一种是基于一致性蒸馏,利用预训练的扩散模型生成相邻数据对,通过最小化模型输出之间的差异,来训练一致性模型。
- 另一种方法是独立训练,将一致性模型作为独立生成模型训练
实验结果表明,一致性模型在一步和少步采样方面优于现有的蒸馏技术,如渐进式蒸馏
当作为独立的生成模型进行训练时,一致性模型可以与现有的一步非对抗生成模型在标准基准测试汇总媲美,如CIFAR-10、ImageNet 64×64和LSUN 256×256
第二层 Consistency Models的推导
// 待更
第三层 Consistency Models的源码解读
// 待更
参考文献与推荐阅读
- AI绘画能力的起源:从VAE、扩散模型DDPM、DETR到ViT/MAE/Swin transformer
- AI绘画与多模态原理解析:从CLIP、BLIP到DALLE 3、Stable Diffusion、MDJ
- 几篇新闻稿
4.13,OpenAI新生成模型开源炸场!比Diffusion更快更强,清华校友一作
11.9,OpenAI上线新功能太强了,服务器瞬间被挤爆
11.11,OpenAI救了Stable Diffusion!开源Dall·E3同款解码器,来自Ilya宋飏等 - Consistency Models
Yang Song, Prafulla Dhariwal, Mark Chen, Ilya Sutskever - 一步生成的扩散模型:Consistency Models