前言
在进行LORA训练前,第一步工作就是准备训练使用的数据集。在这过程中,有许多需要注意的地方。
1 图片选择
训练使用的图片质量很大程度决定了训练出来模型的好坏,所以在图片的选择也需要注意。
(1)面部细节清晰,不模糊。
(2)准备同一人物不同姿势、不同衣服、不同表情的图片,且数量相同,以保证权重一致。正面脸部图片可以适当多些。
(3)整个数据集中,脸部照片:全身照片的比例控制在3:1左右,脸部图片不能有遮挡。
(4)在图片质量较好的情况下,不要使用太多的图片(大概20张左右就好),以免学习次数过多导致模型过拟合。
(5)因为我们需要的是人物,所以图片中的背景越简单越好。可以使用以下网址对人物进行抠图处理。
https://www.pickwant.com/home
(6)Stable Diffusion中的图片预处理工具裁剪图片时可能会把脸裁一半,所以尽量还是自己来裁剪图片。可以使用以下网站
https://www.birme.net/
这个是国内的镜像
https://www.onlinephotosoft.com/zh-CN/birme/
2 图片打标
因为预处理工具有自动打标的功能,所以很多up都是在已经存在某些标签的情况下说明如何删除标签。但我个人认为按照没有任何标签,再慢慢加标签的方式来说明可能更好理解一些。所以我在这里按照我的理解再说明一下图片标签的作用以及删除增加的原则。
以这张八重神子的图片举例。
如果这张图片我们什么标签都不加,那么就相当于告诉AI说这张图片就是八重神子,以后我们加载lora的时候就把这张图片的所有元素都加载进去。
很显然,这并不符合我们的期望,因为这张图片下面和右上有问题,我们需要的只是神子这个人物,并不需要文字,所以我们需要把“logo”这个标签加上,告诉AI这张图片里面有“logo”这个元素。下次加载这个lora时,如果我没有添加“logo”这个tag,那么出图的时候就不要添加这些文字。
更进一步,如果我想给神子换衣服,那么我们就要添加“kimono”和服这个标签,把“和服”这个概念从“神子”这个整体概念中分离出来。
然后我们反向举一个例子,如果打标工具识别出“fox ear”或者“animal ears”这两个标签,那么我们就要手动删除这两个标签。因为神子就是自带狐狸耳朵的,要是没有狐狸耳朵拿还能叫神子吗?
然后有同学可能要说了,那如果我不删除“fox ear”这个标签,出图的时候都把这个标签加上可不可以?
答案是不可以。
先不说这样操作多此一举,毫无意义,就是单从出图的效果上来说,也不可以。
因为在AI的认识里,“fox ear”其实是一个很大的范围,如果你在出图的时候添加“fox ear”标签,那么它会将它认识里的“fox ear”(神子的“fox ear”只是这个概念的一部分)做输出,最后出来的就不是神子的“fox ear”了。