摘要
扩散模型(Diffusion Model)是近年来应用比较广泛的一个新型人工智能技术,在2022年,扩散模型在AI绘画方面展现了压倒性的优势,在图片生成的质量和速度方面超过了其他AI算法,之后又展现了在其他领域的性能,如NLP等。本文详细介绍了扩散模型的发展历史和发展方向,包括扩散模型在过去几年的重要发展节点以及相应的论文。
一 发展历程
1 起始部分
2015年的《Deep Unsupervised Learning using Nonequilibrium Thermodynamics》一文中,作者做出了一些数学推导,并且构建了扩散模型大致的框架。
在此文中,作者提出一种生成图像的方式,即对一张图片逐步进行加噪处理,图片的噪声逐步加重,最后一张图片为纯噪声,这个过程称之为前向过程,也叫扩散过程。
在生成一系列图像后,找出后一张图片与前一张图片的关系,这个过程被称之为前向过程(收敛过程),并训练一个神经网络,使得这个神经网络可以将一张具有一定噪声的图片进行去噪处理。
但是这篇文章并不能给出一个比较好用的模型,所以没有被广泛应用。
2 DDPM的出现
2020年,《Denoising Diffusion Probabilistic Models》(简称为DDPM)的出现使得扩散模型变得更加实用。
1在原始的设计中,神经网络是在后向过程中直接预测图像,而DDPM是在前向过程中预测在下一张图片中应该加的噪声,这个过程可以将噪声从噪声与图像的混合图像中分离出来,使得问题得到简化。
2DDPM还对扩散模型进行了一些数学上的优化改进。并给出了比之前更加完整的数学推导过程。
DDPM的出现彻底改变了扩散模型,此后大量科研工作者开始研究扩散模型。
3优化性能
首先是《Denoising Diffusion Implicit Models》(DDIM)这篇文章对DDPM进行了一定优化,作者对DDPM进行一定的重参数化和混合学习,使得扩散过程和收敛过程的速度大大加快,在一些问题上可以将推理步骤减少十倍。此后的大部分扩散模型相关论文都采用了这一改进技术。
然后是OPANAI的一个工作:《Diffusion Models Beat GANs on Image Synthesis》,这是扩散模型发展的一个高潮。在这个工作中,OpenAI对扩散模型进行了改进,并且在图像生成领域测试了扩散模型和对抗生成网络(GANs)的性能,结果扩散模型的性能超过了GANs。
同时,这项工作使UNet神经网络在扩散模型生成过程中具有更好的性能。作者还引入了显示分类器,并给出了具体推导。
此前,扩散模型在图像生成领域不如GANs,而这篇文章的出现使得大家认识到扩散模型的潜力。
4拓宽领域
首先是《Palette: Image-to-Image Diffusion Models》,作者使用扩散模型实现了图像着色,图像剪裁后的恢复,此前,扩散模型只能实现单一的图像生成任务,这项工作使更多人看到了扩散模型在图像翻译领域的能力。
《GLIDE: Towards Photorealistic Image Generation and Editing with Text-Guided Diffusion Models》,这项工作实现了扩散模型的text-to-image生成,这意味着扩散模型发展到了多模态领域。
《Hierarchical Text-Conditional Image Generation with CLIP Latents》在上一篇文章的基础上继续发展text-to-image。这项研究来自OpenAI,可以根据文本生生原创性的、真实的图像,还可以根据文本对图片进行修改。
5stable diffusion出现
2021年12月,《High-Resolution Image Synthesis with Latent Diffusion Models》在扩散模型中引入了latent域,形成了基于潜在扩散模型(Latent Diffusion Models,LDMs)的text-to-image模型。这个研究使得用扩散模型进行文字生成图片任务可以在普通显卡上执行,并且时间较短。还提出了cross-attention的结构,这使得条件生成图片也可以执行。
相比于此前的研究,该研究生成的图片具有更高的分辨率,该论文还实现了图片的无条件生成,超高分辨率图片生成,图片修复等实验。
一年后的stable diffusion软件就是基于这项研究诞生的。这个软件可以在消费级显卡上面运行,并且取得了极强的效果
6 最新进展
2022年谷歌的《Video Diffusion Models》使得扩散模型进入视频生成领域,该研究将梯度法引入扩散模型,取得了相当有效的成果,并且很快在扩散模型研究领域中流行。
斯坦福大学的《Diffusion-LM Improves Controllable Text Generation》将扩散模型发展到了NLP领域,在可控语言生成任务上,扩散模型取得了不错的表现。
《DiffWave: A Versatile Diffusion Model for Audio Synthesis》和其他几个研究将扩散模型使用到了音频处理领域,这项研究使用扩散模型进行声音转换,取得了比VAE和GANs更好的效果。
二 发展方向
1 性能优化
性能优化主要分为模型加速、数据多样化、似然优化和模型降维四类。
模型加速可以采用训练方式上的改进,比如知识蒸馏、扩散过程的改进、学习噪声规模的改进以及数据分布替换。还可以使用无训练采样改进,即直接用预训练的模型增强采样算法的方法。还可以使用混合模型改进。
模型降维可以使模型的体积缩小,从而能够在消费级显卡流畅运行,目前,在归一化流和VAE(变分自编码器)的帮助下,模型降维取得了一些进展。
2 更多应用
视觉方面,底层视觉、高层视觉和3D视觉,扩散模型都有一定的研究产出,但是还不完善。在视频建模和医学应用的应用还有待研究。
自然语言处理方面,扩散模型可以进行一些语言生成的任务研究。音频方面,文本到语音的扩散模型取得了一些成绩。此外,在与其他学科交叉的领域如分子构象生成和材料设计方面,扩散模型也有一定应用。