LoRA 训练心得 #1
我与许多人交流过 LoRA 训练,他们来自不同的背景。有些人是新手,而另一些人则拥有令人印象深刻的模型作品集。我的目标是将其制作成系列帖子,也可能是一篇文章,讨论我对 LoRA 训练的看法和建议。
就我而言,我认为自己是那种侧重于内容策展和艺术导向的微调师。我最关心的技术规范是从数据集开始的,数据集中的概念如何相互关联以及与文本标题的关系,以及这些如何在微调模型的背景下发挥作用。因此,我关注参数的技术规范是非常实用的——我希望参数能够足够好用,以便我能够利用数据集和视觉信息来获得强大的结果。正如我在本文中对语法的基本运用所证明的那样。
我经常观察到的一个最大问题是人们试图一次性做太多事情。我的意思是,在没有任何先前微调或艺术经验的情况下进入训练环境,并试图同时调整所有参数和设置。
我见过不同的微调参数都取得了同样令人印象深刻的结果。不同之处通常更多地在于数据集和伴随的文本标题的质量,以及你对这两个元素所做的决策如何与你使用的参数相关联。
以下是我的一些经验法则,我在各种训练设置中都使用过它们,通常能取得不错的效果。
我使用 20-30 张图像进行风格训练,10-20 张图像用于角色训练。
我混合使用标题:大约 1/3 是叙述性句子结构,1/3 是相关图像中看到的属性的长列表,1/3 是单个单词。我曾尝试过使用和不使用唯一 token 的方法,但我更喜欢包含一个唯一 token,以防我想要增加额外权重。
对于主要由 AI 生成的数据集,我发现训练时间更短。
独特或简约的插图数据集需要更长的训练时间,无论它们是否由 AI 生成。
手工/人工制作的数据集训练时间更长。
对于 SDXL,一些在过拟合中出现的属性也出现在欠拟合中(保真度损失、线条退化等)。然而,我发现通过缩短训练并重新运行它,更容易确认欠拟合。如果风格被破坏并变得更通用,那就是欠拟合。如果它得到解决,那就是过拟合。
这些是我的总体想法。我不太擅长为自己规划这类内容——讽刺的是,我的大部分工作都涉及为公司创建类似内容——但我会继续尝试用例子来扩展这一点。
你可以在这里找到关于在哪里进行训练的后续内容:https://huggingface.co/blog/alvdansen/thoughts-on-lora-training-pt-2-training-services