在 LoRA 模型训练实践中,硬件性能的差异往往带来显著影响。若电脑配置的显卡性能欠佳,模型训练周期会大幅延长,可能需要投入更多时间成本。

要获得理想的训练效果,通常需要进行多轮迭代训练。但如果每次都要等待训练完全结束,再导入 WebUI 生成图像来验证效果,不仅流程繁琐,还会消耗大量时间,影响训练效率。

实际上,在 LoRA 模型最终成型前,已有多种有效的中间验证手段。通过这些方法,我们能够实时监测训练进展,及时发现并纠正潜在问题,避免无效训练。

毕竟,谁都不希望辛苦训练一整晚,最终却产出毫无价值的结果。为了提高训练成功率,善用这些监测和验证技巧十分必要。

图片

LoRA的检验手段

第一种方式也是最基础方法是查看命令行:

命令行就是一开始启动Kohya训练器时打开的窗口,和WebUI一样它在后台是不能关闭的,每次训练的时候都会输出大量参数。

比较熟悉的训练家可以从里面判断出很多训练的状况信息,例如训练的速度。

图片

就像上篇文章所说的,训练通常是用步长度量进程的,这次训练所需要的时间就等同于跑完所有步数所需的时间。

在训练进度进入稳定阶段的时候,右侧会有一个估计时间,这个是使用当前的训练速度推测的。

图片

这个速度的单位和WebUI跑图的速度一样用it/s即**每秒的步数或迭代数(iteration/second)**来描述。

在一些比较慢的情况下可能会变成s/it,这意味着可能需要超过1秒的时间来训练一步。

多练几次后就差不多知道自己的电脑训练一次LoRA的时间大约是多少。

如果发现速度明显较慢,那可能是Batch Size、Rank这一类影响显存占用的参数超过了电脑能承受的极限。也有可能是开启了一些影响性能的参数例如内存高效注意力。

图片

不过要知道的是不同的LoRA算法的训练速度确实会有一些差异,例如LoHA是明显会比其他几种要慢许多,而IA3训练会快很多。

当然命令行的最后还有一个函数:训练的平均损失函数值,俗称Loss值。

图片

Loss是机器学习力用于判断神经网络学习情况的一个重要指标:

训练模型只需要从有标签样本中学习(确定)所有权重和偏差的理想值。在监督式学习中,机器学习算法通过检查许多示例并找到将损失降至最低的模型来构建模型:此过程被称为经验风险最小化。

损失是错误预测的惩罚。也就是说,损失是一个表示模型在单个样本上的预测质量的数字。如果模型的预测完全准确,则损失为零,否则损失会更大。训练模型的目的是从所有样本中找到一组平均损失“较小”的权重和偏差

简单来理解就是我们让AI做一个对比的过程,AI画出来的图片和我们提供的训练集有多“像”,这之间的差异就可以被量化为一个“Loss”值。

图片

随着训练的进行,Loss是一直在动态变化的,这个值常常被用来判断训练的拟合程度。Loss值越低说明AI的拟合值越高,一个理想的训练情况下应该是Loss初期比较高后续慢慢降低,最后在一个相对的低位保持“震荡”(下图)。

图片

如果Loss值在高低乱飘那就说明AI训练欠拟合或者根本没拟合,还有一种情况(下图)就是Loss值太过稳定,其变化只在小数点后三四位数小幅度变化,这种情况就较大概率是过拟合了。

图片

原教程UP提供了几种情况可供大家观察,这样会比较直观地分辨出区别。

图片

了解了可能是哪里出问题之后就可以适当地调节参数,当然也不需要过度关注最终收敛的这几个Loss值是多少,重点是这个值的变化趋势。

当然还有额外状况,那就是给模型CPU干烧了,这种显示的会是loss=nan

如果真的出现了这种情况赶紧停下来重炼吧,出现这个问题一般是有一些参数被误调到极端的大或小值(通常是学习率)又或者是Batch Size等参数导致爆显存。

我们其实也不需要一直盯着命令行的参数变化,在Koyha中有一个功能可以帮助我们以更直观的方式监看训练过程中的各种指标变化。

那就是TensorBoard,这个按钮就在开始训练的下方:

图片

点击一下后命令行会执行相关指令,然后TensorBoard会自动弹出在浏览器里。

图片

如果没有的话就在命令行中复制网址,然后在浏览器中粘贴打开:

图片

这个工具是深度学习领域常用来“监视”并可视化模型训练过程里的各项参数变化的工具。

在进行LoRA训练时只需要关注这个页面中的两个,第一个是平均损失值(loss/average)。

图片

一般是第一排第一张图表,在这里Loss有没有拟合、最终收敛到一个什么样的数值上都能很直观地观察到。

在右侧的设置栏中有一个润滑度数值Smoothing可以进行调整,这个也能让表格更好地反映趋势。

图片

如果有多次训练这张图可能会产生多条不同的函数曲线,左边可以进行筛选过滤。

图片

另一个则是学习率,以第二排的图表为准:

图片

这个只要优化器设置妥当,一般不会出现需要操心的问题,一般降低会随着余弦曲线一样降低,我这例图有点错误示范了属于是。

如果在Kohya中设置了一个叫做学习率预热(LR Warm Up)的选项,那么LR的两个曲线开头会凸起来一小块:

图片

这个凸起来的表示在开头一定比例的步数里略微提高学习率,目的也是为了让AI在早期更高效地学习,大部分的参数模板里设置都是10%,一般开着对训练会带来积极作用。

当然无论是命令行的Loss还是表格里的趋势都无法完全说明一个LoRA的好坏,最可靠的方式永远是让AI现场跑一个。

图片

实时跑图

在之前学习Embeddings炼制的时候,WebUI每隔一段时间就会反馈一张能代表实时进度的图给玩家看,这一点Koyha训练器也能做到。

在上方参数栏设置的最后一个标签sample样例里,我们可以设置每隔多少步或者多少轮次训练返回一张图。

图片

一般设置为100-200,这样差不多每分钟会有一个动态的“剪影”可供参考。

图片

最右边的采样器和下方框的提示词部分相信SD老手们都很熟悉了,一般提示词部分推荐用其中某一张训练集倒推出来的提示词做适当改动,这样放进来看的效果会比较直观。

像是出图的尺寸大小等需要通过比较“专业”的命令格式来安排。

图片

提示词的话可以参考原教程给出的:

sfw,masterpiece,best quality, 1girl, JingLiu, Standing, full body,

–w 512, --h512, --I 7.5, --s 28, --n low quality,blurry,lowres,normal quality,monochrome, grayscale,worst quality,

下面的数值其实就是把样例图尺寸设置为512*512,相关性设置为7.5,跑28步。开始训练了之后生成的样例会被放在模型输出文件夹里的Samples文件夹内。

图片

有些情况可以明显看出是过拟合,例如生成样例图好几张都过分接近训练集图片,并且图的画风发生了明显的畸变(一看就不像是底模跑出来的风格)。

欠拟合的情况是画风根本就不像,光靠底模根本不用LoRA也能直出一样。

维度设置错误(一般是过高)的情况下样图可能会非常混乱,但还是能看出一点学习的痕迹。

由于sample只是一个简单的预览,所以跑出来的图片并不一定有在WebUI中用了各类增强手段之后那么好看,但至少可以借助样图来保证训练不会跑偏。

模型检阅

一般要检测模型究竟能到什么程度的话,就需要用所有模型进行一次“检阅”。

在之前有设置过每隔N轮保存一次,如果最终步数是1200步,那么大约200步保存一次就可以,这样最后就能出来6个包括最终成品在内的LoRA模型。

图片

有一点要知道,效果最好的LoRA并不一定是跑完所有轮次出来最后的那个模型,因为很多时候最后一个都已经过拟合了,中间段的LoRA可能会表现得更好一些。

测试的方法也很简单,将这些LoRA模型全部都搬到WebUI的LoRA文件夹中。随后进入到WebUI写一组差不多的提示词并调好基本参数,就按照平时的出图习惯。

随后在最下方的脚本那里勾选并打开X/Y/Z图标。

图片

这个图标是WebUI中用来进行对比出图的一个工具,在平时跑图的时候如果不知道某个提示词或模型权重又或者某一项参数该如何设置的时候,都可以在这里进行对比。

图片

它的原理是选中了其中一个参数后,在后面使用英文逗号分隔几个不同的数值,这个工具就可以分别用这几个数值出图,并最终拼在一起形成一张对比图:

图片

如果想要对比刚练好的模型里哪一个最好,那就可以在X轴类型选项里选择“提示词搜索替换”,因为每个模型后面都会带着一个后缀代表着训练的轮次数例如000001.

之后先选择第一个LoRA,然后在提示词框里将尾缀复制到下面的X轴值框中:

图片

图片

然后在后面用类似的格式将其他模型的尾缀号码加上去,中间用英文逗号分隔,最终点击一下生成。

图片

这样就能看到相同提示词参数的情况下,不同的LoRA产出的效果是什么样了。

除了LoRA本身以外针对权重数值做类似的查找替换,常常用来判断炼制LoRA的最终适用权重水平。

当然可以同时将X轴设置为模型名,Y轴设置为权重,这样就可以在一张表里一次性看所有的中间产物在每个权重水平下的表现。

图片

甚至采样器步数等其他参数都可以通过这样的方法去不断检验,大部分的模型炼制大佬都会在训练完成后进行大量这样的测试。

在每次训练结束之后,都可以在文件夹中看到一个json为尾缀的配置文件。

图片

这个文件记录了档次训练的所有参数信息:

图片

即便是关了电脑重启训练器,都可以直接复制这个东西然后在Kohya最上方的参数文件选单加载中粘贴,这样一来系统会自动同步所有的参数设置,方便进行二次调整。

图片


今天的内容就到这里结束啦!

还剩下最后一部分内容我放到最后一篇文章中来讲,当然都学到这里的话最后一步我也希望同学们能够一起学下去!

这样也不枉费我写笔记写到连碧蓝航线红包都忘了抢,那么大伙下篇笔记见啦!拜了个拜!

图片

mix4,(8k, RAW photo, best quality, masterpiece:1.2), (realistic, photo-realistic:1.37),1girl,cute,cityscape, night, rain, wet, professional lighting, photon mapping, radiosity, physically-based rendering, lora:mix4:1

Negative prompt: paintings, sketches, (worst quality:2), (low quality:2), (normal quality:2), lowres, normal quality, ((monochrome)), ((grayscale)), skin spots, acnes, skin blemishes, age spot, glans

  • Steps: 30
  • Sampler: DPM++ SDE Karras
  • CFG scale: 7
  • Seed: 3862987636
  • Size: 512x512
  • Model hash: e3020b4e49
  • Model: realisian_v50
  • Denoising strength: 0.7
  • Clip skip: 2
  • Hires upscale: 2
  • Hires upscaler: R-ESRGAN 4x+
  • Lora hashes: “mix4: 4768d15b1b67”
  • Version: v1.7.0

关于AI绘画技术储备

学好 AI绘画 不论是就业还是做副业赚钱都不错,但要学会 AI绘画 还是要有一个学习规划。最后大家分享一份全套的 AI绘画 学习资料,给那些想学习 AI绘画 的小伙伴们一点帮助!

对于0基础小白入门:

如果你是零基础小白,想快速入门AI绘画是可以考虑的。

一方面是学习时间相对较短,学习内容更全面更集中。
二方面是可以找到适合自己的学习方案

包括:stable diffusion安装包、stable diffusion0基础入门全套PDF,视频学习教程。带你从零基础系统性的学好AI绘画!

需要的可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

1.stable diffusion安装包 (全套教程文末领取哈)

随着技术的迭代,目前 Stable Diffusion 已经能够生成非常艺术化的图片了,完全有赶超人类的架势,已经有不少工作被这类服务替代,比如制作一个 logo 图片,画一张虚拟老婆照片,画质堪比相机。

最新 Stable Diffusion 除了有win多个版本,就算说底端的显卡也能玩了哦!此外还带来了Mac版本,仅支持macOS 12.3或更高版本

在这里插入图片描述

2.stable diffusion视频合集

我们在学习的时候,往往书籍代码难以理解,阅读困难,这时候视频教程教程是就很适合了,生动形象加上案例实战,一步步带你入门stable diffusion,科学有趣才能更方便的学习下去。

在这里插入图片描述

3.stable diffusion模型下载

stable diffusion往往一开始使用时图片等无法达到理想的生成效果,这时则需要通过使用大量训练数据,调整模型的超参数(如学习率、训练轮数、模型大小等),可以使得模型更好地适应数据集,并生成更加真实、准确、高质量的图像。

在这里插入图片描述

4.stable diffusion提示词

提示词是构建由文本到图像模型解释和理解的单词的过程。可以把它理解为你告诉 AI 模型要画什么而需要说的语言,整个SD学习过程中都离不开这本提示词手册。

在这里插入图片描述

5.AIGC视频教程合集

观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

在这里插入图片描述

实战案例

纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
在这里插入图片描述
这份完整版的学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

Logo

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。

更多推荐