整一个小活,并尝试一种炼制特定服装概念的新方法:手动正则+差异炼丹。其中,蒙版训练集图片 106 张,目标训练集图片 77 张。
该服装概念的主要训练难点在于去除画风和脸部影响,因此训练过程比较复杂。
该版已是目前炼制的最好的版本,因全部精力都用在服装的固化上,所以我不保证其具有良好的泛化性。当然,所有关于心海的人物特征全都放在了 sangonomiya kokomi 这个标签中,你也可以把它当成心海的角色 lora 用,不过效果应该不会比站内其他的心海模型好。
触发词:official costume, white short shorts, choker, wide sleeves, white thighhighs, vision \(genshin impact\)
示例:1girl, green hair, green eyes, solo, official costume, wide sleeves, white short shorts, white thighhighs, bare shoulder, choker, necklace, vision \(genshin impact\), outdoors, street, hair ornament, navel
目前该方法差不多已经成型,离落地还差一些小问题,主要包括:
该方法需要保证目标角色具备一定的泛化能力,即需要有与目标训练集图片数量相当甚至更多的蒙版训练集。这里就是指,穿着各种各样服装的心海同人图。因此,对于非常冷门的角色,且没有 alternative costume 的角色,该方法不适用。(或许存在一个最小训练集?比如我最初训练 dreambooth 的时候,正则化训练的默认参数为20张图片。我不清楚 lora 是否也只需要 20 张图片就能保证模型的泛化能力)
服装的某些细节部分出图不太稳定,比如短裤有处挂宝石的地方,使用 Anything 出图经常会出不来(原本是宝石的地方会变成一个洞)。我感觉可能是服装有些欠拟合,不过再训练下去,画风就开始过拟合了,可能会在今后继续优化其稳定性。
头饰无法还原。可能是在实验的过程中,往蒙版训练集中添加了部分带头饰的心海导致的(不是很多,可能占20%?)。因此我估计需要对两个 lora 训练集的概念进行严格分离,剔除掉里面含有头饰的图片。
目标概念训练集的标签合并问题 —— 如何做到概念容易调用的同时,拟合程度也高。
蒙版 lora 的拟合程度 —— 过拟合可能会加大目标 lora 的训练难度,欠拟合可能会使目标 lora 更容易受到画风污染。因此我感觉蒙版 lora 的选择全凭感觉,不过还是有迹可循的。
一般而言,应优先选择过拟合程度较重的蒙版 lora ,并根据后续的训练结果,决定是否进行调整。如果你的训练集足够大,个人猜测,在 epoch 数相同的情况下,训练集图片数量越多的蒙版 lora,后续目标概念的训练难度会越低。这也是我为什么建议蒙版训练集图片数应大于目标训练集,因为如果图片数量太少,可能会出现画风和目标概念无法分离的情况(目标 lora 远远还没达到拟合,却已经开始受到画风污染)。
比如我在训练这个服装的时候,选择了一个过拟合程度较重的 lora 用于第二步的差异炼丹(batch size = 4,epoch = 12,average key norm > 0.96)。在 batch size = 4 ,epoch > 10 以后,模型开始出现画风污染的迹象,而在 10 之前,服装还处于欠拟合。考虑到模型 dim 值较低,后续画风变化可能不大,应优先降低目标概念训练难度,因此需选择epoch = 10 或 11 的蒙版 lora 用于第二步的训练中
该模型不会放到国内任何 ai 平台上,因为他们一般有非常严格的图片审核制度。我估计上传了,到时候样图一张都传不上去,会很恼火。
所有人物模型均为自训练模型,如果使用站内其他人物模型出图,导致模型效果不好的话,请务必不要差评,因为这个模型真的很难练。
欢迎在评论区交流炼丹经验。