大家好,我是程序员晓晓
接触AI绘画的小伙伴,一定听过Lora。
Lora模型全称是:Low-Rank Adaptation of Large Language Models,可以理解为Stable-Diffusion中的一个插件,在生成图片时,Lora模型会与大模型结合使用,从而实现对输出图片结果的调整。
我们举个更容易懂的例子:大模型就像素颜的人,Lora模型就如同进行了化妆、整容或cosplay,但内在还在大模型的底子。当然Lora模型不仅仅限制于人物,场景、动漫、风格都有相对应的Lora。
作为公认最具性价比的模型训练手段,只需要不到20张图片和10分钟的训练,就可以将一个人物、物品甚至是风格融入到AI绘画中,所以说训练Lora是每一个AI绘画学者必备的技能!今天就跟着晓晓来进入学习吧~
一、配置要求和训练环境
1、电脑配置: N卡 gpu 6G以上;
2、训练环境: 除了直接用训练脚本直接进行操作外,可以使用不同的训练图形化操作界面方便操作。可以用秋叶Lora模型训练器、朱尼酱的赛博丹炉等等选一个即可
3、模型训练器下载:秋叶大佬的Lora模型训练器我已经准备好了,需要的小伙伴可以看文末扫描免费获取哦
二、训练数据集准备
1、训练素材处理:
首先确定你的训练主题,比如某个人物、某种物品、某种画风等,确定好后准备用于训练的素材图片,素材图的质量直接决定了模型的质量,好的训练集有以下要求:
-
不少于 15 张的高质量图片,一般可以准备 20-50 张图;
-
图片主体内容清晰可辨、特征明显,图片构图简单,避免其它杂乱元素;
-
如果是人物照,尽可能以脸部特写为主(多角度、多表情),再放几张全身像(不同姿势、不同服装);
-
减少重复或相似度高的图片。
素材图准备完毕后,需要对图片做进一步处理:
-
对于低像素的素材图,可以用 Stable Diffusion 的 Extra 功能进行高清处理;
-
统一素材图分辨率,注意分辨率为 64 的倍数, 显存低的可裁切为 512x512,显存高的可裁切为 768x768,可以通过美图秀秀等工具进行批量裁切,尺寸越大训练模型越吃显存,可能会出现报错学习卡死等问题。
2. 图像预处理
这一步的关键是对训练素材进行打标签,从而辅助 AI 学习。这里介绍两种打标签的方法:
方法一:把训练素材文件夹路径填写到 Stable Diffusion 训练模块中的图像预处理功能,勾选生成 DeepBooru,进行 tags 打标签。
方法二:安装 tagger 标签器插件,进行 tags 打标签。项目地址:https://github.com/toriato/stable-diffusion-webui-wd14-tagger
(该网站需科学上网,需要tagger 标签器插件的小伙伴可以看上方或文末扫描免费获取哦)
选择批量处理, 输入目录填写处理好的图片目录,设置标签文件输出目录,阈值设置为 0.3(生成尽可能多的标签来描述图片内容),开始打标签。
3. 打标优化
预处理生成 tags 打标文件后,就需要对文件中的标签再进行优化,一般有两种优化方法:
保留全部标签:
优势: 效率快省时省力的训练出模型,拟合度提高,且过拟合出现的情况是最低的。
缺陷: 风格会变化过大,tag调用比较困难,训练时需要把epoch提高时间成本会被拉长。
剔除部分特征标签:
优势: 整合成少量的触发词tag后,调用方便,更精准还原角色特征。
缺陷: 容易导致过拟合,泛化性也会降低,如果标签删太多会导致生成的画面非常固化。
三、训练参数调节
至此,准备工作就完成了,可以开始准备正式训练LoRA了,这边使用秋叶大佬的Lora训练器SD-Trainer,选择新手训练模式。
进入新手模式后,需要选择训练LoRA使用的大模型:
底模文件路径,选择你要训练Lora使用的大模型,直接点击右侧的小文件夹选择即可。
训练数据集路径:在选择这一步之前,需要现在sd/lora-scripts-v1.7.3/train这个文件夹下建一个文件夹,在文件夹在里面建一个“数字_英文名”的文件夹,将之前打标好的图和标签一起复制到“数字_英文名”的文件中。
修改分辨率(之前数据集的尺寸是多少,这里就用多少)保存设置:保存模型的名称修改成你想要的名称,点击开始训练,就可以在终端看到它正在疯狂训练中…这个时间会比较久,慢慢等待就好。
这个过程会比较久,等待训练成功后会提示你训练成功。至此整个Lora的训练就完成了,你可以拿你训练好的Lora在WebUI上使用了。
感兴趣的小伙伴,赠送全套AIGC学习资料,包含AI绘画、AI人工智能等前沿科技教程和软件工具,具体看这里。
AIGC技术的未来发展前景广阔,随着人工智能技术的不断发展,AIGC技术也将不断提高。未来,AIGC技术将在游戏和计算领域得到更广泛的应用,使游戏和计算系统具有更高效、更智能、更灵活的特性。同时,AIGC技术也将与人工智能技术紧密结合,在更多的领域得到广泛应用,对程序员来说影响至关重要。未来,AIGC技术将继续得到提高,同时也将与人工智能技术紧密结合,在更多的领域得到广泛应用。
一、AIGC所有方向的学习路线
AIGC所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。
二、AIGC必备工具
工具都帮大家整理好了,安装就可直接上手!
三、最新AIGC学习笔记
当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
四、AIGC视频教程合集
观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
五、实战案例
纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。