人工智能绘画的算法和原理简述

无论是DALL-E 2、Midjourney还是Stable Diffusion,它们的主要算法和原理都基于扩散模型,并且它们之间也存在千丝万缕的联系。

人工智能是一种模拟人脑神经网络的技术。通过训练,它可以学习各种任务,比如绘画。当我们让AI学习绘画时,它会结合文字进行训练。通过大量填鸭式的训练,在某个时刻,它会突然领悟,能够根据文字要求进行绘画,并且它的绘画具有类似人类的逻辑性,它的能力得到了快速提升。

目前,扩散模型是最常用的AI生成图像的方法之一。扩散模型基于非平衡热力学,这是热力学的一个分支,专门研究不处于热力学平衡中的物理系统。一个典型的例子是一滴墨水在水中扩散。在墨水开始扩散之前,它会在水中某个地方形成一个大的斑点。

如果要模拟墨水开始扩散前的初始状态概率分布,将会非常困难,因为这个分布非常复杂,很难进行采样。然而,随着墨水扩散到水中,水逐渐变成淡蓝色,墨水分子会更加简单和均匀地分布。此时,我们可以使用数学公式来描述其中的概率分布。非平衡热力学可以描述墨水扩散过程中每一步的概率分布。由于扩散过程的每一步都是可逆的,因此只要步长足够小,我们就可以从简单的分布中推断出最初的复杂分布。

通过墨水的例子,我们可以得到一个启示:如果我们使用像素图对模型进行存储,那么将需要大量的硬件资源;相反,如果我们使用高斯噪点图进行存储,那么采样分布将更加容易。我们可以轻松地使用数学公式描述高斯分布的概率,并从简单的高斯分布中进行采样。因此,模型库可以采用高斯噪点图进行存储,这样反转过程也相对容易。这种方法在节省存储空间的同时,还能够保留模型的重要特征。

为了便于理解,我们再举一个例子,扩散模型类似于乐高玩具,打散后就是一个个的小方块,相当于变成噪点,小方块组装成各种各样的造型,类似于去噪的过程。

应用于AI绘画的过程中,可以通过逐步添加高斯噪声(模拟墨滴在水中扩散)来处理一幅图像。最终,这幅图像会变成高斯分布(模拟墨滴最终均匀扩散到水中)。高斯分布是一种非常容易建模和采样的概率分布,因此它在AI绘画的训练过程中起到了重要作用。推理过程则是将这个过程逆向进行,从一个均匀分布的高斯分布中进行采样,并逐步去除噪声,最终得到一幅完整的图像,这也就是将墨水扩散的过程进行逆转的过程。

下图展示了扩散模型的加噪与去噪的过程。扩散模型的原理包括两个步骤:首先是正向扩散,逐渐给图像添加高斯噪声,直到获得纯噪声的图像;然后,通过训练一个神经网进行图像去噪,从纯噪声的图像开始,直到获得最终的图像。

那么,AI绘画具体是怎么工作的呢?以Stable Diffusion为例,首先输入提示词,如"戴眼镜的少女",然后Stable Diffusion开始工作,主要分为三个部分,如图1-16所示。
Stable Diffusion基本原理

第一部分:文本编码。通过图像转换特征,把文本转换为数字信息,并提取出关键标记,如眼镜、少女、金属、年轻等。

第二部分:潜在空间生成。使用图像信息生成器,主要使用U-net调度算法生成图像。

第三部分:变分自编码器(VAE)编码。通过VAE图像解码器,把潜在空间64×64像素的图像解码成512×512像素的图像,从而绘制出训练图像。

给AI绘图提供文本的提示词也被称为指令,被用户戏称为"咒语"。通过Stable Diffusion的计算,可以在WebUI界面上生成直观的图像。AI绘画的过程实际上比描述的更加复杂。

即使不是AI算法工程师,如果深入了解其具体编码过程,熟悉其基本原理对使用者以后无论是生成图像、训练模型还是使用ControlNet工具编辑图像都会有很大帮助。这种了解有助于使用者更好地创作和提高操作AI绘画工具的能力。

相关推荐
汉得数字平台几秒前
汉得H-AI飞码V1.2.6正式发布:编码更流畅、对话更高效、知识更精准!
人工智能
CHOTEST中图仪器1 分钟前
基于深度学习的手机中框自动化检测方案:Novator AI影像仪应用案例分析
人工智能·深度学习·影像测量仪·ai自动检测·手机中框检测
杜子不疼.2 分钟前
大模型微调实战:基于 LLaMA2 微调行业模型,本地部署 + 性能优化全流程
人工智能
de之梦-御风2 分钟前
【深度学习】可直接用于工程决策与项目落地的「传统视觉 vs 深度学习」对比方案
人工智能·深度学习
Ydwlcloud2 分钟前
Gemini API 与 Vertex AI:Google Cloud 如何统一AI开发与部署的格局
大数据·服务器·人工智能·云计算·googlecloud
数智前线2 分钟前
深度解析华为小艺,终端智能体走向何方
人工智能
倦王3 分钟前
鸢尾花机器学习复现说明
人工智能·机器学习
高洁014 分钟前
10分钟了解向量数据库(4)
人工智能·深度学习·机器学习·数据挖掘·知识图谱
IT_陈寒4 分钟前
Python 3.12 新特性实战:5个让你的代码效率提升30%的技巧
前端·人工智能·后端
后端小张6 分钟前
【AI 学习】揭开AI卷积神经网络的神秘面纱:从理论到实战
人工智能·深度学习·神经网络·学习·机器学习·计算机视觉·cnn