📚 AI学习

「AI绘画从0到1」Day11:LoRA模型训练——让AI学会你的专属画风

· 2026-04-20 · 18 阅读

「AI绘画从0到1」Day11:LoRA模型训练——让AI学会你的专属画风

👤 龙主编 📅 2026-04-20 👁️ 18 阅读 💬 0 评论

你有没有遇到过这种情况?看了别人的AI作品,羡慕那种独特的画风——是某个插画师的线条感,是某种特定的渲染风格,是某种专属的角色形象。你想要一模一样的效果,但自己的图就是差点意思。

问题在于:你用的是别人训练好的通用大模型,它能画很多东西,但每样都不够”对味”。你想让AI画的东西更符合你的审美、你的需求、你的风格,唯一的办法是让它专门为你学习一次。

这就是LoRA模型的价值。

LoRA的全称是”Low-Rank Adaptation”(低秩适配),它本质上是一种微调技术。简单理解:你不需要训练一个全新的AI模型(那需要海量数据和算力),而是让现有的成熟大模型在你提供的数据上”短期进修”,学会特定风格或概念后,生成一个体积很小的单独文件(通常是几十到几百MB)。这个小型文件就是LoRA。

今天这篇文章,我们从零开始讲清楚:LoRA是什么、怎么训练自己的LoRA、以及如何用好别人训练好的LoRA。这是「AI绘画从0到1」系列的第十一篇,学完这篇,你就掌握了从”使用别人的工具”到”拥有自己的AI模型”的关键一步。


一、为什么需要LoRA?

1.1 大模型的局限性

现在流行的Stable Diffusion、FLUX等大模型,都是在海量数据上训练出来的通用模型。它们”什么都会一点,但什么都不精”。比如一个大模型能画人物、风景、动物、科幻,但如果你想要某种特定的”赛璐璐上色风格”或者”某个游戏角色的画风”,直接用大模型是很难稳定复现的。

你可能会说:我用提示词描述清楚不行吗?

还真不完全行。提示词能控制内容(画什么)和基本风格(什么画风),但很难捕捉到一些微妙的东西——某种特有的线条处理方式、某种光影习惯、某种角色设计的固定范式。这些东西不是一两个关键词能描述的,而是需要AI通过”看大量例子”来自己领悟。

LoRA就是来解决这个问题的。你给它看20-100张某种特定风格或概念的图片,它就能学会这种风格/概念的核心特征,之后你用简单的提示词就能稳定调用这个风格,效果就像AI”临摹”过这些图片一样。

1.2 LoRA的优势

相比其他模型定制化方案,LoRA有几个显著优势:

训练成本低。 训练一个完整的Stable Diffusion新模型需要数十张高端显卡运行数周,消耗数万甚至数十万元。而训练一个LoRA通常只需要一张普通显卡(甚至8GB显存的显卡就够),几十分钟到几小时就能完成。

文件体积小。 一个完整的Stable Diffusion模型文件通常是2-7GB,而一个LoRA文件通常只有几十到几百MB。这意味着你可以在同一台电脑上存放多个不同的LoRA,按需切换。

使用门槛低。 在Stable Diffusion WebUI里加载一个LoRA,只需要点一下鼠标。生成图片时在提示词里加上对应的LoRA触发词,就能让大模型按照LoRA学到的风格来生成。

可叠加使用。 多个不同类型的LoRA可以同时作用于一张图片——比如叠加一个画风LoRA加一个人物角色LoRA,就能用特定的画风画特定的角色。这是LoRA生态最强大的地方。

1.3 LoRA的常见类型

按照训练目标和用途,LoRA可以分为以下几类:

人物角色LoRA: 专门用于复现特定角色的外观形象。训练数据是这个角色的多张不同姿势、角度、表情的图片。训练好后,你只需要在提示词里加上触发词,AI就能画出这个角色在任何场景、任何动作、任何风格下的形象。动漫角色、游戏角色、真人明星都可以训练成角色LoRA。

画风/风格LoRA: 专门用于复现某种艺术风格或渲染风格。比如宫崎骏动画风格、赛璐璐上色风格、水彩画风格、像素游戏风格。画风LoRA的精髓在于:无论你画什么内容(人物、风景、物体),只要叠加这个LoRA,整体画面就会呈现出对应的艺术风格。

概念/物体LoRA: 用于让AI学会某种特定的概念或物体。比如某种特定的服装款式、某种建筑风格、某种道具或武器、某种花纹或纹理。概念LoRA和大模型结合后,你就能用提示词稳定生成包含这个特定概念的图片。

服装/姿态LoRA: 专门针对特定服装或姿态进行训练。比如”穿着特定礼服的角色”、”某种格斗姿态”,训练好后AI生成的角色会保持服装细节和姿态特征。


二、LoRA的核心原理

2.1 技术原理(通俗版)

理解LoRA的工作原理,不需要你懂深度学习的数学细节,只需要理解一个核心思想:“在已有知识的基础上增量学习,而不是从零学起。”

Stable Diffusion大模型之所以能生成图片,是因为它的内部有数十亿个参数,这些参数共同决定了”噪点图如何一步步变成成品图”。这些参数是大模型在数百万张图片上训练出来的,代表了AI对”图片应该长什么样”的整体认知。

如果我们要让大模型学会一种新风格/新概念,理论上可以把这个新风格的数据也加入训练集,重新训练整个模型——但这样做的问题是:所有原有的能力可能会被冲淡(这叫做”灾难性遗忘”),而且训练成本极高。

LoRA采用的思路完全不同。它不是去修改大模型的原有参数,而是在大模型的旁边,额外添加一小批”适配器参数”。训练时,大模型的原有参数保持冻结不动(保持它学会的所有能力),只训练新添加的适配器参数。这些适配器参数就像是大模型戴的一副”滤镜眼镜”——透过这副滤镜,大模型原有的强大生成能力就会呈现出特定的新风格。

训练完成后,我们只需要保存这批适配器参数(小文件),使用时把它加载到大模型旁边,大模型就自动拥有了对应的新能力。

2.2 关键概念:触发词

每个LoRA在训练时,通常会设定一个”触发词”(Trigger Word)。触发词是一个自定义的词语,通常是训练者的用户名加一个描述性词语的组合,比如”masterpiece of inu dog style”或者”by artistname”。当你在生成图片的提示词里包含这个触发词时,LoRA的效果就会被激活。

触发词的设计有几个注意点:

触发词应该足够独特。 如果触发词正好是大模型已经能很好理解的概念,那么触发词可能不起作用。比如如果你训练的是一个”猫”的LoRA,用”cat”作为触发词就不合适,因为大模型原本就认识”cat”。

触发词应该简短且无歧义。 建议用生造的组合词或不太常见的英文词组作为触发词,避免和常见词汇混淆。

触发词的数量不要太多。 通常一个LoRA设置1-2个触发词就够了,触发词太多会导致相互干扰,LoRA效果不稳定。

2.3 LoRA与Checkpoint的关系

这里需要厘清一个常见误解:LoRA不是独立使用的模型,而是配合大模型(Checkpoint)一起使用的”插件”。

Checkpoint是大模型的主文件,比如Stable Diffusion 1.5、Stable Diffusion XL、或者某个特定风格的专用模型。不同的Checkpoint有不同的”基础能力”——比如有些Checkpoint对动漫风格效果更好,有些对写实摄影更擅长。

LoRA是在特定Checkpoint基础上训练出来的,它的”适配参数”是为了增强特定Checkpoint的能力。所以你用某个LoRA时,必须搭配它训练时对应的大模型,否则效果可能会不稳定甚至完全不对。


训练数据集示意

三、训练数据准备

3.1 数据量的选择

训练一个能用的LoRA需要多少图片?这个没有绝对标准,但有一个经验区间:

人物角色LoRA: 通常需要15-30张高质量图片。这是最低可行数量。图片多的话(50-100张)效果会更稳定,但超过100张提升就不明显了,反而训练时间会更长。

画风/风格LoRA: 至少需要20-50张同一风格的作品。画风LoRA对图片数量要求比角色LoRA更高一些,因为风格是更抽象的概念,需要更多样本来让AI准确把握。

概念/物体LoRA: 取决于概念的复杂程度。简单物体10-20张可能够用,复杂概念可能需要50张以上。

重要原则:质量比数量重要。 与其用100张模糊不清、角度单一、背景杂乱的图片,不如用20张高清、构图多样、主体清晰的作品。

3.2 图片质量要求

训练LoRA用的图片,需要满足以下几个标准:

分辨率: 越高越好,但最低不要低于512×512像素。如果图片太小,AI学到的细节会很有限。建议用1024×1024或更高分辨率的图片。

主体清晰: 图片中要训练的内容应该占据主体位置,清晰可辨。比如训练人物LoRA,脸部应该占图片的相当比例,五官清晰可辨。

多样化: 同一概念/风格/角色的图片,应该涵盖不同的角度、姿势、光照、背景。不建议用同一个角度、同一个姿势拍了20张来训练,AI会”过拟合”——它会学会”这个特定角度”,而不是”这个角色/风格”。

无水印、无文字: 图片中最好不要包含水印、文字或其他Logo,这些干扰信息会被LoRA学进去,导致生成图片时出现奇怪的文字或水印。

一致性: 同一角色LoRA的图片应该具有一致性——同一个人物的不同照片,角度可以不同,但脸部的关键特征应该是一致的(同一个人的不同照片)。如果混入了其他人的照片,LoRA会学到”两个人”而不是”一个人”。

3.3 图片预处理

在开始训练之前,图片通常需要做一些预处理:

裁剪到合适比例。 最常用的是1:1正方形比例,512×512或1024×1024像素。不同的训练工具对比的要求不同,但正方形是相对通用的选择。

脸部检测和裁剪。 如果是人物LoRA,可以用脸部分析工具(如DeepFaceLab、ReActor扩展)先检测脸部位置,将脸部作为图片的主体进行裁剪。

统一风格。 如果是训练画风LoRA,建议所有图片先统一到同一分辨率,并且如果可能的话,统一到相近的色调和对比度,减少无关变量的干扰。


四、主流训练工具

4.1 Kohya SS(推荐新手)

Kohya_ss(也有人叫Kohya GUI)是目前最流行的LoRA训练工具之一,支持Windows、Linux系统,也可以在Google Colab上运行。它的图形界面比命令行友好很多,而且文档详尽、社区活跃。

Kohya_ss支持训练:LoRA、Textual Inversion(Embedding)、Hypernetworks等多种模型格式,参数设置灵活可调,是目前功能最全面的训练工具之一。

安装方面,如果你是Windows用户,有一键安装包可以下载使用,不需要配置复杂的Python环境。如果是Linux用户,Kohya也提供了详细的安装脚本。

4.2 Stable Diffusion WebUI 训练扩展

如果你已经在使用Stable Diffusion WebUI(AUTOMATIC1111或ComfyUI),可以直接在WebUI的扩展中心安装LoRA训练相关的插件。推荐使用的是”sd-webui-additional-networks”或者”sd-trainer”扩展,它们可以直接在WebUI界面里完成LoRA的训练。

这种方式的优势是你不需要额外安装其他软件,全部在熟悉的WebUI里操作。缺点是功能相比Kohya_ss会少一些,高级参数调整选项有限。

4.3 ComfyUI工作流训练

对于已经进阶到ComfyUI的用户,也可以在ComfyUI中建立LoRA训练的工作流。ComfyUI的优势在于节点的可视化编辑——你可以清楚地看到数据从图片输入到输出的整个处理流程,方便调试和理解LoRA训练的原理。

这种方式更适合已经有一定AI绘画基础、想要深入理解训练过程的用户。

4.4 云端训练平台

如果你没有合适的本地硬件,也可以使用云端训练平台。常见的选项包括:

Google Colab: 社区有大量好心人分享了配置好的Colab笔记本,你只需要上传图片、设置参数,点击运行即可。免费版Colab有使用时间限制,高级功能需要付费版Colab。

国内的揽睿星舟等平台: 提供预装了Kohya等训练工具的云端运行环境,按小时计费,适合没有高性能本地硬件的用户。


五、训练参数设置

5.1 核心参数详解

训练LoRA涉及几个关键参数,理解它们的作用能帮你训出更好的模型:

训练轮数(Epochs): 一个Epoch表示训练数据被完整过一遍。Epochs设置多少取决于数据量和数据集多样性,通常15-30个Epoch是常见范围。Epochs太少会导致欠拟合(LoRA没学会你想要的东西),Epochs太多会导致过拟合(LoRA学过头了,生成图片开始出现原图的影子或者开始出现artifacts)。

学习率(Learning Rate): 控制每次参数更新的幅度。学习率太高会导致训练不稳定,模型质量忽高忽低;学习率太低会让训练很慢,可能训几十个Epoch还没学会。学习率的设置需要根据具体情况调整,常见做法是在训练开始时用较高学习率,然后逐渐降低(学习率衰减)。

批量大小(Batch Size): 每次参数更新时处理的图片数量。显卡显存越大,可以设置的Batch Size越高。更大的Batch Size能让训练更稳定、收敛更快,但可能导致内存溢出(Out Of Memory)。通常在8GB显存下Batch Size设为1-2,在更高端的显卡上可以设到4-8。

分辨率(Resolution): 训练时图片被缩放到的尺寸。分辨率越高,AI能学到的细节越丰富,但训练速度也会显著变慢,且对显存要求更高。常见设置为512×512或768×768。如果显卡允许,768×768通常能训出细节更丰富的LoRA。

网络维度(Network Rank/Dimension): 这个参数决定了LoRA适配器的”容量”——能容纳多少新知识。Rank/Dimension越高,LoRA能表达的细节越丰富,但文件也越大,且更容易过拟合。常用范围是4-128,对大多数用途来说,8-32是一个很好的平衡区间。

网络倍率(Network Alpha): 配合Network Rank使用的缩放参数。Alpha通常设置为和Rank相同的值或Rank的一半。Alpha越低,LoRA的效果越”浓”;Alpha越高,效果越”淡”。如果觉得LoRA效果太强导致失真,可以试着提高Alpha。

5.2 避免过拟合的技巧

过拟合(Overfitting)是LoRA训练中最常见的问题,表现为:LoRA能很好地复现训练图片,但生成的新图片开始出现artifacts(比如奇怪的面部结构、重复的纹理、像素化的细节),或者LoRA对提示词过于敏感,稍有变化就完全失效。

避免过拟合的几个经验技巧:

增加数据集多样性。 确保训练图片涵盖足够的角度、姿势、背景变化。如果只用一个姿势训练了50张图,AI必然会对这个特定姿势过拟合。

及时停止训练。 训练过程中每隔几个Epoch可以测试一下效果,当发现效果开始变差(出现了artifacts),立即停止训练。Kohya等工具支持”早停”(Early Stopping)功能,可以设置监控训练损失,在损失不再下降时自动停止。

提高网络Alpha。 如果LoRA已经训好了但效果过强,可以尝试提高Alpha值后重新导出,牺牲部分强度换取更好的泛化能力。

增加Dropout正则化。 部分训练工具支持在训练时随机”关闭”部分神经元(Dropout),这能有效防止过拟合。

5.3 训练过程中的监控

在Kohya_ss中,你可以在训练过程中实时监控loss值(损失值)的变化。Loss值越低表示模型对训练数据的学习越充分。但要注意:Loss值低不等于质量好——Loss太低可能意味着过拟合。

更好的监控方法是每隔几个Epoch,用相同的测试提示词生成几张图片,对比不同时期的生成效果。如果生成质量在某个Epoch后开始下降,即使loss还在降低,也应该停止训练。


六、实战训练步骤

6.1 用Kohya_ss训练人物LoRA

以下是以Kohya_ss为例,用30张某角色图片训练一个LoRA的具体步骤:

第一步:准备文件夹结构。

在Kohya_ss的训练目录下,创建以下文件夹:

  • `/train/role_name/` —— 存放训练图片
  • `/reg/` —— 存放正则化图片(可选,但推荐准备)
  • `/output/` —— 存放训练输出结果

将30张角色图片放入`/train/role_name/`文件夹,每张图片命名为”数字_token概念.jpg/png”的格式,比如”01_masterpiece_role.jpg”。

正则化图片的作用是”提醒”AI什么不是这个角色。准备20-30张和角色画风相近但不是这个角色的图片,放入`/reg/`文件夹。正则化图片能有效防止LoRA过拟合。

第二步:启动Kohya_ss并创建训练配置文件。

打开Kohya_ss WebUI,在” Dreambooth-LoRA”训练模式页面填写以下关键参数:

  • Source Model:选择你要基于的大模型(建议用对应风格的基础模型,比如动漫风角色用Animagine XL或Counterfeit,写实用真人大模型用Realistic Vision)
  • Instance Prompt:填写触发词,比如”a character in mxl style”
  • Class Prompt:填写大类概念,比如”person”或”character”
  • Input Directory:设置为刚才准备的`/train/role_name/`
  • Regularization Directory:设置为`/reg/`(如果有的话)
  • Resolution:768×768或512×512(根据显卡显存选择)
  • Network Rank:16(根据需求调整,越高细节越丰富但越容易过拟合)
  • Network Alpha:16(通常和Rank相同或一半)
  • Max Train Epochs:20-25(根据效果可调整)
  • Learning Rate:1e-4(常用学习率)
  • LR Scheduler:cosine_with_restarts(余弦退火加重启,学习率周期性变化通常训出的LoRA效果更好)

第三步:开始训练并监控。

点击”Start Training”,Kohya_ss会在控制台输出训练进度。每隔几个Epoch会在output文件夹生成一个中间checkpoint,你可以用这些中间checkpoint测试效果。

显卡的显存使用率、温度、风扇转速等都应该在正常范围内。如果出现显存溢出(OOM),需要降低Resolution或Network Rank。

第四步:测试并导出。

训练完成后(通常需要1-3小时,取决于硬件和数据量),在output文件夹里找到最终的LoRA文件(通常以.safetensors结尾)。用Stable Diffusion WebUI的附加网络功能加载这个LoRA,输入包含触发词的提示词,生成几张测试图片。

如果效果满意,LoRA训练就完成了。如果有问题,可以调整参数后重新训练。

6.2 训练画风LoRA的注意事项

画风LoRA的训练流程和角色LoRA类似,但有几个关键区别:

图片数量要更多。 画风LoRA对数据量的要求更高,建议至少40-50张图片,且图片之间要有足够的变化——同一画风的不同作品、不同主体、不同色调都应该包含。

正则化图片更重要。 画风LoRA特别容易过拟合到特定的图片内容而不是画风本身。使用正则化图片能有效约束AI学习更抽象的”风格特征”而不是具体图像。

分辨率可以更高。 画风LoRA如果想要保留更多笔触、纹理等细节,建议用更高的分辨率训练,比如1024×1024。前提是你的显卡显存足够(建议12GB以上)。

训练轮数要控制。 画风LoRA比角色LoRA更容易过拟合,建议从15个Epoch开始测试,不要一开始就用很高的轮数。


LoRA应用效果对比

七、使用LoRA的实战技巧

7.1 提示词写法

在Stable Diffusion WebUI中使用LoRA非常简单。你只需要在提示词中包含LoRA文件对应的触发词,LoRA效果就会自动激活。

标准的LoRA提示词格式如下:

“`

[主体描述], [LoRA触发词], [其他质量标签], [画质标签]

“`

示例(使用一个”宫崎骏画风LoRA”):

“`

a beautiful landscape with mountains and rivers, (from miyazaki hayao style:1.1), studio ghibli inspired, detailed, 8k, masterpiece

“`

注意LoRA触发词后面有个”(:1.1)”这样的权重标注。如果觉得LoRA效果太强导致图片失真,可以把权重降低到0.7-0.9;如果觉得效果太弱,可以提高到1.2-1.5。

7.2 LoRA叠加使用

LoRA最强大的特性之一是可以多个LoRA同时叠加。但叠加使用时需要注意几点:

控制总数。 同时使用的LoRA数量不宜太多,通常2-3个是极限。LoRA越多,生成的不确定性越高,元素之间可能产生冲突。

关注权重平衡。 多个LoRA叠加时,每个LoRA的权重都需要适当调低。比如两个LoRA叠加时,各自权重设到0.6-0.8比各自设到1.0效果更稳定。

避免同类型叠加。 不要叠加两个同类型的LoRA(比如两个都是画风LoRA,或者两个都是同一个人物的角色LoRA),这会导致它们”打架”,生成图片出现混乱。建议不同类型的LoRA叠加——比如一个画风LoRA + 一个人物角色LoRA。

7.3 LoRA与ControlNet配合

LoRA和ControlNet(Day9的内容)可以很好地配合使用。比如你训练了一个特定角色的LoRA,想要让AI生成这个角色在特定姿势下的图片。

使用流程是:用ControlNet的OpenPose控制姿势,同时在提示词中包含角色LoRA的触发词。这样AI既会按照指定的姿势生成,又会保持角色的面部特征和风格。


八、常见问题与解决方案

问题一:训练时提示显存不足(OOM)

这是最常见的问题。解决方法依次为:降低训练分辨率(从768降到512)、减小Network Rank(从32降到16或8)、减小Batch Size(从2降到1)、启用Quantization(量化)选项来降低显存占用。

问题二:LoRA训练出来效果不明显

可能原因及解决思路:训练轮数不够(增加Epoch)、学习率过低(适当提高)、图片质量不高或多样性不足(更换/补充数据集)、触发词没有正确触发LoRA(检查触发词拼写是否正确)。

问题三:生成图片出现artifacts

Artifacts(伪影、噪点、变形的面部结构等)是典型的过拟合表现。解决方法:使用正则化图片重新训练、降低Network Rank、增加Network Alpha、减少训练Epoch数。

问题四:LoRA效果和预期不符

如果LoRA生成的内容和训练数据差异大,可能是:大模型(Checkpoint)和LoRA不匹配(LoRA必须配合训练时对应的同款大模型使用)、触发词设置不对(LoRA的触发词可能需要根据实际情况调整)、LoRA权重设置不对(试试调整权重值)。


九、总结与下节预告

今天我们系统学习了LoRA模型训练的完整知识体系:从LoRA的核心原理、到训练数据的准备、主流训练工具、参数设置、实战步骤、以及使用技巧。LoRA是AI绘画进阶路上最重要的技能之一,掌握了它,你就不再只是”使用AI工具”,而是真正开始”训练AI为你工作”。

核心要点回顾:

  • LoRA是”低秩适配”技术,让大模型在冻结原有能力的前提下增量学习新技能
  • 相比从头训练大模型,LoRA训练成本低、文件小、使用方便
  • 训练数据质量比数量更重要,15-30张高质量图片通常就能训出可用的角色LoRA
  • 避免过拟合是关键挑战——多样化的数据集、正则化图片、及时停止训练都是有效手段
  • LoRA可以叠加使用,配合ControlNet使用效果更强大

明天是Day12,我们将学习ComfyUI工作流——用可视化节点的方式,把AI绘画的各个环节串联成自动化流水线,大幅提升创作效率。如果你觉得在WebUI里手动点来点去太麻烦,ComfyUI会让你的创作体验提升一个档次。敬请期待。


【本系列目录】

  • Day1:AI绘图底层逻辑 ✅
  • Day2:Stable Diffusion快速上手 ✅
  • Day3:提示词基础语法 ✅
  • Day4:五大万能构图公式 ✅
  • Day5:参数设置入门 ✅
  • Day6:模型选择指南 ✅
  • Day7:AI绘画变现路径 ✅
  • Day8:头像定制实战演示 ✅
  • Day9:ControlNet入门 ✅
  • Day10:图生图与局部重绘 ✅
  • Day11:LoRA模型训练 ← 今天
  • Day12:ComfyUI工作流 ← 明天
  • Day13-Day15:敬请期待
  • 发表评论

    您的邮箱地址不会被公开。 必填项已用 * 标注

    微信公众号二维码

    扫码关注公众号

    QQ
    QQ二维码

    扫码添加QQ