更新日志

1. 参数文件夹

超好用的一个参数复用功能,文本框内可以选择最近使用的参数文件路径,右侧四个按钮从左到右分别是刷新、打开、保存/新建、将当前参数文件写入GUI ![[Pasted image 20240512104103.png]]

image.png


2. 文件路径

分别是输出文件(output directory),正则化训练集(reg directory)和日志路径(logging directory),这里的日志路径,如果有在训练时使用tensorboard查看训练状态的需求,务必填写 ![[Pasted image 20240512105256.png]]

image.png


3. Repeats/Epoch/BatchSize/Total Steps

  1. 训练轮次(epoch),是指模型对数据集完整遍历学习的次数,例如“5 epoch”是指模型完整地学习了5遍数据集。
  2. 遍历学习次数(repeats),是指每个轮次下,每张图片的学习次数。例如,你将轮次设置为“5 epoch”,将遍历学习次数设置为“25 repeats”,那么模型将完整地学习5遍数据集,并在每一轮训练中将每张图像重复学习25次。当你的概念文件夹命名规范时(num_name),“num”会覆盖你设置的遍历学习次数。
  3. 批次大小(batch size),是指模型完成一次遍历学习会同时学习几张图像,这个参数通常高一些拟合度会比较好,但由于过于吃显存,所以通常情况下设置为2就行。
  4. 总学习步数(Total Steps),是所有训练次数的总和,模型对1张图像的1次遍历学习(repeats)就算是“1 step”,例如,你在一个含有20张图像的数据集里,将轮次设置为“5 epoch”,将遍历学习次数设置为“25 repeats”,将batch size设置为2,则总学习步数为1250步(5_25_20/2 = 1250)。

注意

Kohya_ss 会计算每个 Epoch 的训练步数(num batches per epoch),然后根据以下逻辑确定最终的训练轮次:

  1. 如果设置了 Max train steps,则会将其除以每个 Epoch 的训练步数,得到一个最大 Epoch 数,这个epoch数会覆盖你设置的epoch
  2. 解决办法就是保持默认”0“

4. Instance Prompt和Class Prompt