
李忻玮 苏步升 徐浩然 余海铭
AIGC的应用领域日益广泛,而在图像生成领域,扩散模型则是AIGC技术的一个重要应用。本书以扩散模型理论知识为切入点,由浅入深地介绍了扩散模型的相关知识,并以大量生动有趣的实战案例帮助读者理解扩散模型的相关细节。全书共8章,详细介绍了扩散模型的原理,以及扩散模型退化、采样、DDIM反转等重要概念与方法,此外还介绍了Stable Diffusion、ControlNet与音频扩散模型等内容。最后,附录提供由扩散模型生成的高质量图像集以及Hugging Face社区的相关资源。本书既适合所有对扩散模型感兴趣的AI研究人员、相关科研人员以及在工作中有绘图需求的从业人员阅读,也可以作为计算机等相关专业学生的参考书。
算是截止到目前,对扩散模型的知识脉络做了较为全面梳理的书,可作为科普入门级读物,但想深入了解,还需要进一步找其他资料,目前这个领域的研究比较热,后面应该还会有新的书出来。因为我对这块感兴趣,所以研究的比较多,以下是结合本书、李宏毅老师的视频课、以及一些其他资料做的整理,完整带图版文章在我的公号「陌北有棵树」里面,文章标题是「AIGC系列第一篇 —— Stable Diffusion 原理简述 & 资料整理」 #扩散模型原理简述 要说Stable Diffusion,就一定得提扩散模型。扩散模型是AIGC开放性创造性的重要来源。为什么得出这样的结论呢?首先我们思考这样一个问题,为什么扩散模型与图像生成天然适配? 要回答这个问题,可能要先思考图像生成与自然语言处理有什么差异。我们常说一句话「一图胜千言」,假设是一个文生图的任务,用一段文字去生成一张图,其实图片中包含的信息量是远远多于这段描述性的文字的,你输入的文字也只是千言中的部分,这就需要机器进行大量的脑补才能生成好的图像,「需要大量脑补」这件事,其实也影响了图像生成模型的设计。 ## 「生成模型」的共同点 除了扩散模型,生成模型还包括VAE(Variational Auto-Encoder,变分自编码器)和GAN(Generative Adversarial Net,生成对抗网络)等等。不过虽然实现方式各有不同,但归纳起来也有一些共同的特点,它们都不仅仅是依靠一段文字就去生成图,而还需要一个额外的输入。对于这个额外输入,比较常见的做法是对一个正态分布进行sample,得到一个向量。 常见一些用于生图的模型(图来自李宏毅老师的Stable Diffusion系列课程) 1、【VAE】 VAE中有一个Decoder和一个Encoder,Decoder的输入是正态分布的的向量和文字,输出是图片。Encoder是Decoder的反向,输入是一张图片,输出是向量,Encoder和Decoder是一起训练的,还有一个额外需要加的限制,保证中间传递的向量一定是正态分布。 2、【Flow-based Generation Model】 Flow-based Generation Model的大体思路和VAE差不多,区别在于它没有Decoder,所以这就需要Encoder是可逆的。也就是训练的时候Encoder输入图片,输出向量,画图的时候,将Encoder反过来,输入向量,输出图片。所以在训练时需要限制神经网络的架构,保证这个Encoder是invertible,并且能够得到这个Encoder的inverse。 3、【Diffusion Model】 Diffusion Model的训练过程就是把原图不断加噪音,直到看不出原来的图,然后画图的过程就是不断去噪音。扩散模型在思想上,是受热力学概念的启发,简单来说,它定义了一个不断加噪声的前向过程,将图片逐步变为含高斯噪声的图片,再通过定义一个逆向过程将含高斯噪声的图片逐步去噪变成清晰图片以得到采样。扩散模型本质上是一种参数化的马尔科夫链,使用变分推断进行训练,以便在有限时间内生成与数据匹配的样本。当然,Stable Diffusion还要在Diffusion Model的基础上,再加很多东西,才有了了今天这样的效果。 # Stable Diffusion 发展脉络 从2020年扩散模型首次被提出到现在,虽然只有不到3年的时间,但这期间技术的更迭之快,就算是身处其中的人,也难免会眼花缭乱,这里列出一些关键的论文和模型。 2020年6月 《Denoising Diffusion Probabilistic Models》 DDPM - 经典扩散模型,扩散模型鼻祖 2020年10月 《Denoising Diffusion Implicit Models》 DDIM - 改进版的DDPM 2021年2月 《Improved Denoising Diffusion Probabilistic Models》 Cosine Noise Schedule,Importance sampling,Stride Sampling加速采样等技术 2021年2月 《Argmax Flows and Multinomial Diffusion: Learning Categorical Distributions》 最早的离散扩散模型 2021年5月 《Diffusion Models Beat GANs on Image Synthesis》 提出Classifier Guidance,让扩散模型能够按类生成 2021年7月 《Structured Denoising Diffusion Models in Discrete State-Spaces》 D3PM - 后续离散扩散模型的理论基础 2021年12月 《High-Resolution Image Synthesis with Latent Diffusion Models》 Latent Diffusion - 潜在扩散模型,Stable Diffusion的理论基础 2021年12月 《More Control for Free! Image Synthesis with Semantic Diffusion Guidance》 改进Classifier Guidance,使得扩散模型的引导过程仅需使用扩散模型本身,而不再需要依赖分类器进行实现 2022年4月 DALLE-2 OpenAI基于扩散模型的文生图产品 2022年8-11月 Stable Diffusion - v1.x 模型参数:downsampling-factor、8 autoencoder with an 860M UNet and CLIP ViT-L/14 text encoder 模型风格:v1.4-专注绘制风景类,整体偏欧美风; 2022年11月 Stable Diffusion - v2.0 text encoder升级,由CLIP ViT-L/14模型升级至CLIP ViT-H/14模型,模型扩大了3倍 2022年12月 Stable Diffusion - v2.1 相比v2.0,放开了限制(punsafe=0.98)继续finetune,所以增强了人像的生成效果 2023年4月 Stable Diffusion XL Beta 31亿参数基础模型 2023年6月 Stable Diffusion XL 0.9 35亿参数基础模型和66亿参数模型的集成管线
看了前面免费试读部分,太糟糕了。感觉是AI自动翻译的,有些直翻的说法太奇怪了,实在是一种可怕的摧残。对于这种试图建立或刷新底层认知的书,是很关键的。我的建议就是要严谨再严谨,看了之后形成各种莫名其妙的认知,一知半解加上膈应的阅读体验,很明确:看不如不看。
这本书其实写的还是不错的,当然是推荐入门的,也需要结合huggingface官网的一些资料,同时也需要结合对stable diffusion pyTorch的源码有一定的了解。我觉得对于新手来说还不错。当然如果对ddpm,ddim一点也不了解的话可能就不推荐了,整体不错,推荐
只是翻译版,原教材确实不错。另外微信读书上代码全是乱的。
基本是huggingface课程notebook的翻译,关键翻译得一般,有的代码都没抄明白
材料没问题,因为这就是huggingface的扩散模型diffusion model classes的教程翻译版本,就翻译了一下,拿着开源的东西居然卖这么贵。还是看英文原版吧,不行自己拿gpt4自己翻,完事。
还行,原理讲得不是很多,偏向实战
内容一般,但是作为入门还是推荐的
这书是2023年8月出版的,读的时候一直觉得是2021年前的书,技术日益更新过去的书籍参考性基本不大了,书中讲的几个模型、技术感觉已经过时、或者说现在已经在WebUI里都集合了,且这书是真的不适合没有任何实操经验的人去阅读,或者他本身的阅读受众就是算法程序员,涉及到代码的所有章节基本上就看不懂了,总之不太适合我来阅读,连最初抱着想去了解一些基本原理的心态发现都难以达到预期,晦涩的描述还不如现在B站各种up主讲的好,全文阅读完基本上没有太大的收获
看了两眼,一点干货没有全靠复制粘贴贴代码,这年头有些人想钱想疯了,看到马伯庸也来推荐真是绷不住