以下是关于微调训练框架选择的相关内容:
对于 Stable Diffusion 的微调训练:
1. 配置文件:
在 config 文件夹中有 config_file.toml 和 sample_prompt.toml 两个配置文件,分别存储着训练超参数与训练中的验证 prompt。
config_file.toml 文件包含 model_arguments、optimizer_arguments、dataset_arguments、training_arguments、sample_prompt_arguments 以及 saving_arguments 六个维度的参数信息。
例如,v2 和 v_parameterization 同时设置为 true 时开启 Stable Diffusion V2 版本的训练;pretrained_model_name_or_path 用于读取本地 Stable Diffusion 预训练模型用于微调训练;optimizer_type 可选择多种优化器,如 AdamW(默认)、AdamW8bit(显存不足时可选,会有轻微性能损失)、Lion(最新版本,性能优异但学习率需设置较小)等;学习率方面,单卡推荐设置 2e6,多卡推荐设置 1e7。
2. 训练启动:
将配置好的 config_file.toml 和 sample_prompt.txt 参数传入训练脚本中。
在命令行输入相应命令即可开始训练,训练脚本启动后会打印出 log 方便查看训练过程节奏。
1024 分辨率+FP16 精度+xformers 加速时,SD 模型进行 Batch Size=1 的微调训练约需 17.1G 显存,Batch Size=4 的微调训练约需 26.7G 显存,因此最好配置 24G 以上显卡。
3. 模型使用:
微调训练完成后,模型权重保存在之前设置的 output_dir 路径下。
使用 Stable Diffusion WebUI 框架加载模型进行 AI 绘画,需将训练好的模型放入/models/Stablediffusion 文件夹下,并在 Stable Diffusion WebUI 中选用。
对于 OpenAI 的微调训练:
1. 准备训练数据后,使用 OpenAI CLI 开始微调工作。
2. 指明从哪个基本模型(ada、babbage、curie 或 davinci)开始,可使用后缀参数自定义微调模型名称。
3. 运行命令后会上传文件、创建微调作业并流式传输事件直到作业完成,通常需要几分钟,也可能因作业排队或数据集大小等因素需要数小时。
4. 每个微调工作都从默认为 curie 的基本模型开始,模型选择会影响性能和成本。
5. 开始微调作业后,可能需要排队等待,完成后会显示微调模型的名称。还可以列出现有作业、检索作业状态或取消作业。
2025-01-06