一人工程 · solus opus

← 全部作品

essay一人工程蒸馏Born-againMIDI

Born-again networks 没用

simedw 的失败实验:Born-again networks(teacher 蒸馏 student 的 KL 散度对齐)没用。最终没采用。「一人工程」里第 8 个没走通的。

Born-again networks 没用

simedw 的失败实验笔记: Born-again networks(teacher 蒸馏 student 的 KL 散度对齐)没用。 最终没采用。 在「没走通的」一栏。

Born-again networks 是什么:

  • 一个大模型 teacher
  • 一个小模型 student
  • student 学 teacher 的 logits(KL 散度)
  • 比「学真实标签」更好

直觉:

teacher 知道「次要 token 的相对概率」 这比硬标签(one-hot)信息更密 student 借此学得更好

为什么 simedw 没走通:

  • MIDI 表征已是「单 token 5 个 head」
  • 每个 head 是独立的 categorical field
  • KL 散度对齐 5 个 head 的 logits
  • 训练目标跟「交叉熵求和」叠加
  • rollout 质量没改进

可能原因:

  • teacher 模型只有 125M
  • 比 GPT-2 还小(125M vs 124M)
  • 「次要 token 信息」的优势体现不出来
  • 真实标签已经能学 95% 的模式
  • KL 对齐带来的 5% 增益在 rollout 里听不出来

一人工程的角度

OpenAI 训练 GPT-3.5/4 时:

  • teacher 模型巨大(100B+)
  • student 模型较小(7B/13B)
  • Born-again / 蒸馏在巨大 teacher 下显著有用

simedw 的 125M teacher:

  • student 是 64M
  • 比例 2:1
  • 不够悬殊
  • 蒸馏优势体现不出

一人工程的边界

不是所有大模型时代的工具都能直接套到小模型上。 蒸馏需要 teacher 足够大。 当 teacher 只比 student 大 2 倍时:

  • 蒸馏优势没体现
  • 反而增加训练复杂度

simedw 的选择:

  • 直接训练 64M
  • 不走蒸馏
  • 不走 Born-again
  • 用 scheduled sampling + DPO

签名:solus opus。