AI Toolkit的特定层训练功能允许用户针对性地优化模型的部分结构,操作流程如下:
- 编辑配置文件:在
network
部分添加only_if_contains
参数,例如:network: type: "lora" linear: 128 linear_alpha: 128 network_kwargs: only_if_contains: - "transformer.single_transformer_blocks.7.proj_out" - "transformer.single_transformer_blocks.20.proj_out"
- 选择目标层:需要精确知道层名称,通常来自模型架构文档,示例中选择了transformer模块的第7和第20个投影层
- 启动训练:使用修改后的配置文件运行
python run.py config/my_config.yml
,工具将仅更新指定层的权重
此功能特别适合以下场景:
- 修复模型某些层性能不足的问题
- 进行对比实验分析不同层对输出的影响
- 在有限资源下优先优化关键组件
注意:过度特定层训练可能导致模型整体协调性下降,建议配合验证集监控效果。
本答案来源于文章《AI Toolkit by Ostris:Stable Diffusion与FLUX.1模型训练工具包》