Files
myWiki/concepts/k-pass-training.md

1.7 KiB
Raw Blame History

title, created, updated, type, tags, sources
title created updated type tags sources
K-Pass Training (K 遍训练) 2025-06-02 2025-06-02 concept
training-optimization
multi-turn-reasoning
efficiency
goru-one-pass-to-reason-2025

K-Pass Training

goru-one-pass-to-reason-2025 中提出的训练方案连续统在完全节省内存N-Pass和完全节省时间1-Pass之间提供灵活的速度内存权衡。

动机

one-pass-fine-tuning 和 N-Pass 是两个极端:

  • N-Pass每轮一次前向传播最小内存最慢速度
  • 1-Pass整个对话一次前向传播+33% 内存,最快速度

K-Pass 允许用户在这两个极端之间插值,按需选择内存/速度平衡点。

实现

  1. 分块:将 N 轮对话均分为 K 段,每段 ⌈N/K⌉ 轮
  2. 段内 1-Pass:当前段内应用 token 复制 + 自定义掩码
  3. 段间顺序处理:前段作为后段的固定上下文(不复制 token
  4. Loss 隔离:只计算当前段内 ti 和 ri_out 的 loss

速度–内存权衡

K 语义 加速比 (8B) 额外内存
1 1-Pass最快 1.54× +34%
2 平衡点 1.37× +21%
4 1.09× +17%
6 0.88× +14%
N N-Pass最少内存 1.00× 0%

关键发现K > 4 后收益递减——长序列的 token 复制开销开始超过少量合并带来的节省。

推荐策略

  • 内存充裕K=11-Pass最大化速度
  • 内存适中K=2用 21% 内存换取 37% 加速
  • 内存紧张K=4 或直接用 N-Pass

相关