在训练lora时,可能会遇到一些问题,比如无法使用本地模型或下载的默认1.5模型无法训练等。下面是一些解决这些问题的方法,供大家参考。
问题一:无法使用本地模型或下载的1.5模型无法训练
可能原因是训练脚本需要链接抱脸网huggingface导致。解决方法如下:
- 删除缓存目录:C:\Users\Administrator.cache(注意这里的名称\Administrator是你自己电脑的用户名)。再次训练时会重新下载模型,需要注意的是缓存文件夹中tmp开头的文件是下载失败的文件可以删除,无法断点续传可以删除。
- 添加系统变量:在系统搜索里搜索系统变量,进入环境变量设置,新建系统变量HTTPS_PROXY,值为http://127.0.0.1:7890。Windows环境变量添加后需要重启生效,此方法解决了无法使用本地模型训练的问题。需要注意的是端口7890,查看方法是打开clash魔法,主页右上角查看,如果不一样要改成你那边的端口。
问题二:选择何种底模进行训练
在训练过程中,可以选择默认的1.5模型进行训练。这个模型具有较高的泛用性,但也有一些不足之处。由于一些大模型混合了一些权重,可能导致微调的lora缺乏泛用性。所以,默认的1.5模型只是一个局部中等的解法,不是最优解,但是可以使用。
问题三:loss=nan错误
当训练出现loss=nan错误时,并不是显存爆满的问题,而是与训练参数或数据集有关。可以尝试调整数据集、删除一些图片、调整参数、换优化器、学习率等来解决。
问题四:cmd=cmd错误
cmd=cmd错误是常见错误,具体原因不明,可能有多种原因导致。可以尝试以下解决方法:
- 更换底模,建议使用默认的1.5模型。
- 更换优化器。
- 不使用8bit。
- 此错误可能与显存无关,不要过早地认为是显存爆满的问题。
问题五:是否需要打tag
训练画风时,需要打tag。有一些视频说训练画风可以不打tag,但实际经验表明,不打tag会导致lora效果不佳和其他问题。所以,无论是训练什么,都要打tag。
关于打标的一些说法
打标是用于学习的内容,标签会固定在图片上。删除一些标签,比如blue eyes,是为了防止将基础模型中的blue eyes引导到lora上,导致过拟合。所以,保留一些基本触发词,比如1girl,可以将girl的触发引导到lora上。同样的道理,还可以设置一些非常不常用的触发词,在使用该触发词时调用lora中存在的内容,而基础模型中不存在。
打标可以辅助ai学习,所以去掉需要学习的元素标签有利有弊。例如,如果训练的是能天使头上有光环,那么如果文本中有光环的tag,使用lora时必须在tag中写上光环,才会生成能天使头上有光环的结果。如果去掉文本中的光环tag,lora生成的能天使就默认有光环了。
原创文章,作者:SD中文网,如若转载,请注明出处:https://www.stablediffusion-cn.com/sd/sd-model/974.html