欢迎光临散文网 会员登陆 & 注册

Lora画风训练,从入门到入橘子(

2023-07-12 13:28 作者:娱乐Eisthol  | 我要投稿

Hello,大家好。这里是娱乐Eisthol

很多人一直在催我出画风的教程啊

正巧现在对于画风训练这一块儿没有那么敏感了,那我就稍微讲一下吧。

观前提示,大家悄悄的学,学会了不要去跳脸画师就行(

一,基础篇(quick lora)

其实想要去复刻某种风格的画风,是非常简单的一件事

我们只需要去打全标,然后使用默认参数去训练就行了,实际上大部分画风lora都是这么训练过来的。

举个例子就是lion的学习率一般为3e-5,adam8bit的学习率一般为1e-4

文本学习率一般为图像学习率的十分之一

Dim一般设置为128,alpha一般设置64

现在进入解释环节

首先是为什么要打全标,

一直有一种说法,就是有人在教训练画风的时候不达标直接扔进去

实际上这种做法是相当错误的,

虽然用这样方法训练出来的lora确实在某种程度上能够学会这种画风的笔触

但是图像中的元素全都会失去语义指导,这也就导致了两个问题

第一个问题就是训练出来的模型会不听话,甚至过拟合

第二个问题就是随着prompt的增多,会有越来越多的底模中的素材代替lora学会的图像

从而使效果降低

所以还是建议大家打全标,效果会好的多。

然后这个学习率问题,你问我为什么建议这个学习率,我只能说这是亲身实验(

为了做这个教程,娱乐亲身实验过好多的学习率,

那两天是真的怎么练怎么炸啊,险些搞到道心破碎

所以大家一定要用手中的三连狠狠的安慰一下up

最后确定了还是默认参数的学习率最合适(不然你猜猜为什么这是默认参数)

然后就是dim,这个dim维度主要影响两个东西,一个是lora模型的大小,另一个就是lora能学到的东西,而且当dim大于128之后对学习效果的提升就不明显了

我们训练画风肯定是希望什么都能学会的

所以这里的dim一般设置成128

二,进阶篇

其实用我们上面说的方法去训练画风,或者说复刻某种画风,效果就非常不错了

但如果我们想更精进一步,就需要在打标上面下手了

也就是说,我们需要对tagger打好的标签进行一定的修改,来提升效果

这里有两个方向

第一个,就是人工对打错的标签进行修改或者删除,从而使lora的泛化性能更好

但是目前tagger打的标签足够准确,这么干也比较费时费力,所以只推荐那些对于自己模型质量精益求精的同志们去使用

第二个,就是把某些出现概率很高的tag删除,来引导画面效果

举个例子


我在训练这个lora的时候,删除了所有描述”蓝色”物体的标签,从而使得画面风格变得偏向于冷色调。

又比如这个



就是使用Yuu(Yuumei)老师的某几张图片,删除了所有描述星星的tag,只保留一个

star\(symbol)\作为触发词得到的效果,

(当然因为数据集比较少,效果达不到Yuu老师的一根毛)

又或者我们可以在训练某种画风的时候,删除see-through或者shiny skin之类的tag,来达到某些不可告人的目的((((((((

解释为什么要这么做的话:

Tag被删除后,这个tag所描述的特征就会只学习图像特征,而没有语义指导,我们删除的都是某些描述整个画面或者人物的tag,这也就代表被删除tag所描述的特征会应用到整个图像上,从而引导画面效果。

三,额外参数

除了基础的学习率,dim,repeat,epoch之外

Lora训练还有不少额外的参数

这里娱乐的建议是,除了金字塔噪声(multires_noise)之外,其他参数基本上都是没什么大用,不好控制不说,随便开启反而会使训练效果降低。

至于金字塔噪声,他的原理是创建多分辨率的噪声并堆叠在一起,同时缩减低分辨率的噪声,从而增强训练出lora的对比度以及光影效果

有细微的副作用(比如可能会出现动作略微过拟的情况)

但是相当建议大家开启,对训练效果有很大的提升

甚至有的时候这个参数开启与否训练出来的lora是两个效果

嗯,建议金字塔噪声的两个参数设置为6和0.3


Lora画风训练,从入门到入橘子(的评论 (共 条)

分享到微博请遵守国家法律