kohya_ss训练结果对比:用内置 TensorBoard 监控多组 LoRA 实验的指南

kohya_ss训练结果对比:用内置 TensorBoard 监控多组 LoRA 实验的指南 kohya_ss训练结果对比用内置 TensorBoard 监控多组 LoRA 实验的指南【免费下载链接】kohya_ss项目地址: https://gitcode.com/GitHub_Trending/ko/kohya_ss从训完只能猜到看图说话同时训了好几组 LoRALoRA 是一种轻量微调只在原模型上叠加一小份可训练参数成本远低于全量训练却说不清哪组参数更好用这是 kohya_ss 用户最常见的困境。kohya_ss 是一套面向 Stable Diffusion 的开源训练工具内置 TensorBoard 可视化本文围绕 kohya_ss训练结果对比讲清楚训练监控、曲线解读与多实验对比三件事。内置 TensorBoard 能看什么kohya_ss 的训练界面内嵌了一个 TensorBoard 管理器TensorBoard 是 PyTorch 生态里通用的训练监控工具把日志文件渲染成曲线和图片网页。它的作用很直接训练过程中把每一步的损失值、每个采样批次生成的图片写进日志目录训完后打开监控页就能回看整段训练过程而不必重新跑一遍实验。相关实现在 kohya_gui/class_tensorboard.py本文只做定位参考不涉及代码细节。三步跑起来第一步配置日志目录操作在 GUI 左侧 Folders 选项卡中找到 Logging directory 下拉框选择一个已存在的目录。该值默认指向项目根目录下的logs文件夹即./logs。预期看到选择后列表能正常列出该目录内容说明路径有效、可读写。第二步开启日志并命名实验操作切换到 Advanced 选项卡把 Logging 下拉框选为tensorboard该选项可选 wandb、tensorboard 或 all不选时以 tensorboard 为默认记录器。如果要同时跑多组对比顺手在 Log tracker name 文本框里给本次训练起一个专属名字比如lr1e4-1500steps。预期看到两项都保存进界面状态。这个运行名称之后会出现在 TensorBoard 左侧的实验列表里是区分多组实验的唯一依据。第三步启动训练打开监控页操作点击开始训练等日志开始写入后点击界面里的 Start tensorboard 按钮。管理器会等待约 5 秒并自动打开浏览器访问http://localhost:6006端口可通过环境变量 TENSORBOARD_PORT 调整。如果浏览器没有弹出手动在地址栏输入该地址。预期看到Scalars 标签页出现损失与学习率两条曲线左侧 RUNS 列表能看到你刚才起的运行名称Images 标签页一开始为空随着第一批采样图生成这里才会出现内容。页面四个标签各看什么Scalars标量展示训练损失、学习率等随步数变化的曲线。用来判断训练是否在收敛、收敛速度如何是多实验对比时最常看的标签。Images图片展示训练过程中按固定间隔生成的采样图。用来直观评估风格是否被模型记住以及生成图有没有随训练推进变得模糊、崩坏。Graphs计算图展示模型前向传播的结构。排查训练脚本层面的问题时有用日常调参基本用不到。Distributions分布展示某一层权重、梯度在各维度上的分布随时间的变化。同样偏调试用途普通用户了解即可。日常只需要盯 Scalars 和 Images 两个标签曲线管数值上好不好采样图管效果上好不好两者结论一致才算真的可以收工。实战对比两组学习率的风格 LoRA仓库自带一组风格统一的测试图适合当风格 LoRA 的训练素材![kohya_ss风格LoRA训练样本机械风格头骨](https://raw.gitcode.com/GitHub_Trending/ko/kohya_ss/raw/f44226cfccca008094f958d829c49c74a7e9289d/test/img/10_darius kawasaki person/Dariusz_Zawadzki.jpg?utm_sourcegitcode_repo_files)这套图的共同点是蒸汽朋克质感的机械骷髅主题画面里还有头骨、兜帽等不同主体风格元素却高度一致——这正是风格 LoRA 需要的数据形态。![kohya_ss风格LoRA训练样本兜帽骷髅侧面](https://raw.gitcode.com/GitHub_Trending/ko/kohya_ss/raw/f44226cfccca008094f958d829c49c74a7e9289d/test/img/10_darius kawasaki person/Dariusz_Zawadzki_2.jpg?utm_sourcegitcode_repo_files)以这组图为例设计两组只改学习率的实验实验 A学习率 1e-4训 1500 步运行名称填lr1e4实验 B学习率 1e-5训 3000 步运行名称填lr1e5两组都按上一节的步骤配置好日志目录并训练完成后打开 TensorBoard在 Scalars 标签页左侧同时勾选lr1e4和lr1e5两条损失曲线就会叠加显示。对比的判据有三条哪条曲线下降更快、更早进入平稳区——代表收敛效率高曲线后期是否仍持续走低还是开始上翘——决定该在哪一步停训切到 Images 标签逐 epoch 看两组采样图细节是否稳定、风格是否贴合训练样本。经验上高学习率那组往往前几十步就接近饱和而采样图从清晰变糊的时点也更早低学习率那组曲线更平缓但训练时长要相应拉长。哪组采样图保持清晰且风格一致更久哪组参数就更值得采用。曲线怎么读四种常见形态训练损失持续下降且斜率变缓模型在正常学习。处理动作继续训练同时盯 Images 里的采样质量等曲线走平、采样图不再明显变好时停训。损失走平甚至小幅回升常见两种原因一是学习率太小、参数几乎没动二是训练过头开始过拟合过拟合指模型把训练样本背了下来对新提示词泛化变差。处理动作先用同一提示词测生成图如果细节重复、风格僵硬就是过拟合应提前停止或降低训练步数如果全程几乎没动则适当调高学习率重跑。学习率曲线出现台阶式突变这是调度器在按预设规律降学习率属于正常现象不必处理。如果伴随损失突然跳高多半是降得过于激进可换更平缓的调度方式。损失出现周期性尖刺通常是数据集中的某张异常图周期性进入 batch。处理动作缩小范围排查那批数据换图或修正标注后重训。三个高频排错点 Start tensorboard 没有任何反应现象按钮无响应或弹出日志目录错误。原因kohya_ss 在两个条件下才显示启动按钮——系统里能找到 tensorboard 可执行文件且 CPU 支持 AVX 指令集另外如果日志目录不存在或为空管理器会直接报错返回。解决先在终端执行pip show tensorboard确认已安装再确认 Logging directory 里确实已有训练产生的日志文件。旧 CPU 不支持 AVX 时只能跳过 GUI 按钮手动执行tensorboard --logdir 日志目录启动。监控页一直打不开现象浏览器访问 localhost:6006 显示拒绝连接或打开的是别的应用。原因默认端口 6006 被其他进程占用或 tensorboard 进程启动失败但被其他窗口遮挡了报错。解决换一个空闲端口设置环境变量 TENSORBOARD_PORT 后重启 GUI或用命令行指定--port参数确认新进程活着后再刷新浏览器。损失曲线形态异常现象曲线大幅抖动、突然跳变或长时间横在一动不动。原因抖动多为学习率过高或 batch size 过小跳变可能是数据读取中断横住不动通常是学习率过低或梯度消失。解决依次核对学习率数量级、batch size、日志目录磁盘空间是否写满无法定位时用同一组数据跑一个极短的小实验做对照缩小变量范围。哪些情况值得开着监控新数据集第一次训练、调整学习率或训练时长这类关键超参数、以及需要长期迭代的风格项目都建议默认开启 tensorboard 日志——成本只是一次额外写盘换来的是可回查的完整训练记录。跑完一组实验后先做两件事在 Scalars 里找到曲线走平、采样图开始劣化的那个步数作为下次的停训点再给下一组实验换一个明确的运行名称让 kohya_ss 训练可视化始终按一组实验一个名字的规矩积累。监控页里留下的每条曲线和每张采样图就是下次调参时最可靠的 kohya_ss训练结果对比教程素材。【免费下载链接】kohya_ss项目地址: https://gitcode.com/GitHub_Trending/ko/kohya_ss创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考