万相大模型LoRA微调

本文最后更新于 2025年4月12日 下午

LoRA的作用 - 刻板化某种期望

  • 可以“教会”模型特定的风格、主题或概念
  • 物理规律|运动方式|时间速度
  • 提高模型在特定任务上的表现

数据准备

  • 数据越多,泛化性越好
  • 一般30~50张的图片数据
  • 通常10~20个高质量视频数据,按16fps帧率切割81帧
  • 分辨率和实际训练帧数按显存调整
  • 高分辨率数据可以摘低分辨率基础上二次训练
  • 风格、主题、构图需要保持一致
  • 包含不同的场景提高泛化能力

数据清洗和标注

  • 删除低质量、模糊或不相关的样本
  • 保证光照、角度、概念的多样性和充分描述
  • 标注关键特征(如某些风格的必出,或用 special token 强调)
  • 视频素材手动分段
  • Gemini2 打标
  • 建立提示词结构
    • 例如:[风格词, 某人/物在某地做某事,其他元素]

训练要求&脚本

  • diffusion-pipe
  • 推荐使用24G以上显存
  • 推荐使用4090/L20(速度较慢)/L40s等大显存显卡
  • 低显存需要开启大量的 blocks_to_swap,速度损耗大

训练TIPS

  • 输入训练的帧数会影响速度
  • 图片数据和图片/视频混合训练会影响数据
  • 纯图片训练部署过多导致画面运动缓慢或趋于静止

验证训练结果

  • 在完全没见过的提示词上进行生成,查看风格是否泛化
  • 查看是否破坏了万相模型本身的运动,概念能力
  • 查看1帧的时候是否能拟合到训练集的原图
  • 查看出33帧、77帧的时候,用训练集prompt,是否仍有动态

常见问题

  • 输出边缘抖动,有莫名噪点 --- 开启了SLG
    • SLG 会加强视频动态
  • 输出的内容构图偏右下 --- 检查分辨率比例是否合训练一致,降低lora权重
  • 换了训练集外的提示词就很弱 --- 更换14b训练,增加更多强调目标概念的分辨率数据

其他发现

  • 万相视频模型(1.3B, 14B)可以当生图模型用,且很好训练
  • 模型可以从数据中泛化出世界规律和表现形态,构造训练集和设定风格目标的时候可以更多考虑时间,因果概念的设计
  • 1.3B版本可以进行数据集的你和验证,并且速度更快
    • 高分辨率、动态响应等场景可能会有区别,拟合验证与14B基本一致
  • 模型存在最佳参数,训练集应该贴近最佳参数
  • 可以用英文提示词进行训练,使用触发词+中文提示词生成,泛化性效果更好

万相大模型LoRA微调
https://tippye.github.io/2025/04/12/万相大模型LoRA微调/
作者
Tippy
发布于
2025年4月12日
许可协议