— 如何正确准备图像·标题结构
当第一次开始LoRA微调时,谁都会首先关注模型、rank、学习率(learning_rate)等 训练选项。
但实际上,数据集占80%的决策权。
用好的数据进行学习可以弥补大部分设置错误,而坏的数据则无法通过任何设置恢复质量。
尤其是最近的Flux系列模型是 “非常诚实地反映数据的模型” ,因此受到数据集质量的影响更大。
本文将总结在微调LoRA时, 如何准备图像 , 如何构建标题 ,以及data.toml的设置与数据集结构之间的关系 ,并提供实战标准。

1. 为什么在LoRA微调中数据集是最重要的?
LoRA并不是改变基础模型的全部庞大参数,而是以添加 “记忆补丁” 的方式来增强或增加特定概念。
也就是说,LoRA主要围绕以下两点进行学习:
-
图像之间的共通点
-
标题中明确的核心概念
因此,数据集稍微不一致,就会立即产生以下现象:
-
脸部变得歪歪扭扭
-
LoRA scale=0.5以上才勉强能应用风格
-
与现有模型特征混合,产生“不是这个也不是那个”的结果
-
特定姿势/表情被过度强化
-
色彩严重偏差
这一切问题的根本原因就在于 数据一致性不足。
2. 图像准备的基本规则
遵循这一规则,成功的概率就是一半。 由于微调时需要相当多的时间,因此准备好数据是非常重要的。
✔ 2-1) 图像分辨率最好是标准化
虽然基于Flux模型对分辨率的敏感度较低,但在微调时会出现以下问题:
-
512×768
-
1024×1536
-
800×800
-
1536×768
如果这些大小各不相同,模型会感觉“重要区域”模糊或位置不一致。
推荐规格:
-
768×1152
-
768×1024
-
1024×1024
-
或统一成一种与所需最终图像比例匹配的规格
重要的是 比例和尺寸的一致性。
✔ 2-2) 数据集并不是越多越好,而是越均质越好
错误示例:
-
自拍10张 + 全身照5张 + 暗光照片3张 + 4K高清照片2张 + 漫画风格图像5张
→ 模型会陷入困惑,不知该学习什么。
好的示例:
-
相同的相机距离
-
相同的照明
-
以脸部为中心/上半身中心等 概念清晰
-
风格(实拍/动画/插画等)统一
✔ 2-3) “只放好看的照片”是最重要的原则
这一点通过多次实验Flux LoRA会更加明显。
常见的错误:
“数据不足,就随便加入这个。应该会对学习有帮助。”
不。
那“什么”会毁了LoRA。
由于一张模糊的图像,学习可能会偏离。
可以非常明确地说:
10张好照片 > 40张杂乱无章的照片
✔ 2-4) 根据构建LoRA的目的来决定图像组成
例如:
1) 特定人物的再现LoRA
-
以脸部特写为主
-
相同的照明
-
正面+稍微侧面
-
一般不放全身照会更稳定
2) 特定时尚风格的再现LoRA
-
相同的服装组合
-
强调颜色和纹理的图像
-
可以包含全身照/下半身照
-
不同的姿势反而更有帮助
3) 特定插画风格的LoRA
-
包含背景
-
显示刷子纹理的图像
-
需要自己定义风格的关键元素(线条粗细、饱和度、明暗等)
3. 撰写标题:决定LoRA质量的第二个关键
与图像本身同样重要的是标题。
Flux对标题的“文本信号”遵循得非常好,因此,
只要精心构建标题,LoRA质量就会大幅改变。
✔ 3-1) 标题该如何写?
正确答案是以下两者之一:
A. 基于最低关键字标签的方式
a japanese woman, long hair, smiling, outdoor, daylight
-
简单且稳定
-
对实拍风格很强
-
LoRA容易收敛
B. 句型描述方式
A Japanese woman with long black hair smiles softly in natural daylight, wearing a white knit sweater.
-
在Flux或SDXL系列中更自然地引导学习
-
适合风格LoRA或人物LoRA
首次尝试的新手建议使用 A方式 ,但是擅长写作的人可以尝试 B方式 。根据经验,B方式可能更有效。
注意事项:使用句型时,data.toml要设为keep_tokens = 0, shuffle_caption = false
✔ 3-2) 标题可以完全不写吗?
-
明确的答案:必须写
-
原因:必须让模型知道要学习的概念是什么
-
但是,虽然在某个例子中看到过“只给类标记,而没有句子标题”的微调结构,但根据经验,加入标题效果更好。
✔ 3-3) class_tokens vs txt标题优先级
重要的实战信息:
如果有txt标题→优先使用txt。
class_tokens更接近于辅助角色。
也就是说,当同一张图像同时存在以下两个时:
class_tokens = "leona_empire asian woman"
caption.txt = "a japanese woman in winter knit"
→ 模型更倾向于反映caption.txt。
总结:
-
caption.txt是核心
-
class_tokens可以看作是“整体概念的基本基础”
4. 数据集目录结构示例
基于Flux系列LoRA的整洁示例:
dataset/
└── concept1/
├── 00001.png
├── 00001.txt
├── 00002.png
├── 00002.txt
├── 00003.png
├── 00003.txt
└── ...
.txt文件规则:
-
文件名必须相同
-
推荐使用UTF-8
-
以一行写成(禁止不必要的换行)
5. LoRA毁坏的典型标题错误
1) 过多修饰语
beautiful gorgeous extremely lovely asian woman with super long silky hair
模型会过度关注某一特性。
2) 每张照片的风格描述不同
-
一张是“电影般的照明”
-
另一张是“明亮柔和的照明”
→ 100%混淆
3) 图片与不必要的情感/情绪不符
有时在图片较多时,复制+粘贴时将表情描述写错会导致失败!!
在正确完成数据集后,至少检查2次以上对精神健康有好处。
(实际上在微笑时,如果有sad、melancholy这样的文字,会导致表情变化)
6. 数据量:多少张是最有效的?
根据Flux LoRA的经验:
| 数据数量 | 结果质量 |
|---|---|
| 5–10张 | 不稳定(波动大) |
| 15–25张 | 最有效 |
| 30–50张 | 最高质量(仅在 _一致的数据_时) |
| 60张以上 | 没有太大意义。重复信息增加 |
-
比起增加数据,更能提高质量的是“剔除坏图像”。
-
我个人来说,初次使用时大约用了40张,但此后我倾向于在10~20张之间构建数据集
7. 在进行一次→二次微调时处理数据集
这里最常见的问题:
“需要包含现有图像吗?”
答案:
是的。必须包含一定比例。
原因:
模型是LoRA而不是“记忆补丁”,因此
如果不再次展示现有概念,则会忘记。
推荐比例:
-
现有数据50%
-
新数据50%
这样可以使“记忆保持+新风格反映”更加稳定。
8. 结论:仅准备好数据集,LoRA的70%就完成了
通过多次微调,我唯一感受到的就是。
最终,LoRA的质量由数据集决定。
-
分辨率
-
比例
-
照明
-
图像一致性
-
标题准确性
-
剔除劣质图像
-
data.toml和数据集结构的排布
只要好好把握这7个,
rank、learning_rate等设置就 显得没有那么重要。
目前没有评论。