为什么要训练Stable Diffusion WebUI模型(原理解读)

共计 1150 个字符,预计需要花费 3 分钟才能阅读完成。

为什么要训练 Stable Diffusion WebUI 模型(原理解读)

为什么要训练自己的模型?训练自己的模型可以在现有模型的基础上,让 AI 懂得如何更精确生成或生成特定的风格、概念、角色、姿势、对象。

举例来说,如果喂给 AI 十几张我精挑细选的「Hara 老师绘制的、不同角度、FGO 的斯卡萨哈」做训练,那么就能让 AI 更懂得如何生成斯卡萨哈的脸部,风格也会比较固定。

以下是一个具体例子,通过使用自行训练的 HyperNetwork,便改善单靠 Anything 模型无法生成出 Hara 老师画风的缺点。在不使用 HyperNetwork 的情况下,风格永远是左边那样;一使用 HyperNetwork,右边的风格就能轻松生成出来了。

训练模型是复杂的议题,基于哪个现有模型,以及喂给 AI 学习的图片品质,还有训练时的参数,都会影响模型训练结果。

本文提及的 Embedding、HyperNetwork、LoRA 都是「小模型」,这是相对于网络动辄好几 GB 的 checkpoint「大模型」而言。这些小模型训练时间短,文件约几 MB 而已,训练成本不高。主要是用于生成特定人物 / 对象 / 画风,并且训练的模型可以多个混用。

如果硬件条件许可的话,搜集大量图片训练特定领域的 checkpoint 大模型,再上传到 HuggingFace 造福他人也是不错的选项,只不过此任务过于庞大。要知道 Stable Diffusion 1.5 版的模型可是输入了 23 亿张图片训练出来的!网络上其他人训练的模型至少也准备了几万张图片。因此要生成特定的人物 / 对象 / 画风,训练小模型对一般人来说比较划算。

各个模型的原理差异请参考下图。技术原理以及训练参数设置请参阅「参考数据」一章,碍于篇幅无法一一细讲,本章以操作过程为主。

就训练时间与实用度而言,目前应是 LoRA > HyperNetwork > Embedding

本章节以 AUTOMATIC1111 开发的 Stable Diffusion WebUI 为中心撰写,因其图形化且易操作。后面简称 SD WebUI。

接着选择部署在本机或是云端?

训练模型至少需要 10GB 的 VRAM,也就是 RTX3060 等级以上的 GPU。

如果你有 Nvidia RTX3060 以上等级的 GPU,那就参考安装教学部署在本机,想训练多久就训练多久。训练数据不到 50 张图片的小模型训练时间约只要 1~3 个小时。

结论

通过训练自己的模型,我们可以让 AI 更好地满足我们的需求,生成特定的风格、概念、角色、姿势、对象。使用 Stable Diffusion 提供的 Embedding、HyperNetwork 和 LoRA 等小模型,我们可以在相对较短的时间内训练出满足特定需求的模型。对于一般用户来说,训练小模型是更划算的选择。无论是部署在本机还是云端,只要拥有足够的硬件条件,我们都可以轻松进行模型训练。训练自己的模型,让 AI 更懂你的需求,为你带来更好的生成结果。

正文完