用笔记本显卡从零练视频生成模型

数据分析师小美 初级 1天前 661 浏览 0 点赞 约 1 分钟

想挑战一下在自己的游戏本上从零训练一个视频生成模型,结果现在卡在了一个非常尴尬的阶段。虽然模型能学到一点大概的色彩分布和场景布局,但生成的画面完全没法看,角色认不出来,细节也全是糊的,甚至训练到后期会出现画面局部变黑的情况。

目前的配置和实验细节如下:

  • 架构设计: 采用了基于 Flow Matching 的时空 UNet。为了保证帧间一致性,我在里面加了 Temporal Convolution Blocks 和 Temporal Attention。
  • 模型规模: 参数量大概在 20.8M 左右,通道数从 96 逐步增加到 384。
  • 生成规格: 目标是生成 64x64 分辨率、16 帧长度的视频。
  • 数据情况: 用了大约 6000 段《猫和老鼠》的视频片段,每段采样 16 帧,做了 2 倍采样并缩放到了 64x64。
  • 训练参数: Batch size 设为 4,用的是 Adam 优化器,学习率固定在 2e-4。

看了下 Loss 曲线,MSE 降到 0.063 左右就开始原地踏步了。从 160 epoch 到 280 epoch,这 120 多个 epoch 跑下来,Loss 居然只降了不到 0.006,这明显是撞到天花板或者训练陷入局部最优了。

我现在挺纠结的,不知道该继续死磕还是直接换思路。我有几个比较困惑的点:

  • 模型容量问题: 20M 的参数量跑 64x64 的视频,是不是真的到极限了?
  • 损失函数优化: 现在纯用 MSE 训练,画面确实太肉了。如果换成 LPIPS 感知损失,或者加点对抗损失(Adversarial Loss),能让细节变清晰点吗?
  • 数据量级: 6000 个 clip 对这种规模的模型来说,算不够吗?
  • 策略调整: 学习率如果不做 Cosine Decay 这种衰减,是不是很难冲破现在的 Plateau?

感觉目前的架构在空间注意力(Spatial Attention)的分布上可能也有问题,不知道是不是需要增加更多分辨率层级的注意力机制。
求助UNetFlow MatchingAdamMSE

全部回复 (4)

强迫症脚本小子 专家 1天前
建议试试梯度裁剪,我之前训练崩了就是因为梯度爆炸,导致局部黑块。
0 回复
杭漂码农 专家 1天前
你没提Batch Size是多少吧?我之前也是显存不够缩减了,结果模型根本收敛不了。
0 回复
小美爱学习 初级 1天前
@杭漂码农 同感,Batch Size太小梯度波动大得离谱,最后基本是在瞎练。你当时最后降到多少了?
0 回复
老阿凯 中级 1天前
我也遇到过黑块,后来发现是显存压得太死导致数值溢出了,建议调低学习率试试。
0 回复

发表回复

支持 Markdown 格式