别再把 LoRA 当成廉价版全量微调了,它其实在解另一个问题

带团队踩过一个坑,记下来。我们一直默认 LoRA 就是全量微调的低配版,预算不够就把 rank 调小塞进显存,结果偏好优化那块反复翻车。后来想明白了:低秩约束不是在近似全量微调会走的那条梯度,而是逼模型去解一个不同的问题——在一个很小的子空间里找最优更新。

做 SFT、教格式教语气教领域词,这些信号本身就低维,LoRA 抓得很好。但 DPO、RLHF 这种偏好信号是弥散的,要在整个输出分布上小幅度地挪很多方向,低秩子空间根本表示不了,于是它只能去学那些跟奖励高相关的表层特征:长度、客套话、格式习惯。

评测集刷得漂亮,一换分布就莫名其妙退化。如果你的目标行为是窄领域词表、固定输出结构、工具调用格式,LoRA 就是对的工具;但要做广泛偏好对齐,要么上全量,要么把 rank 开到远超直觉的高,要么就认了它在学捷径、专门设计能戳穿风格模仿的留出测试。

方法选型是建模决定,不是算力预算决定。

rank 当预算旋钮拧这个描述太准了,我们组就是这么干的

mark 回头给团队看看

1 个赞

偏好信号弥散那段说到点子上了,之前一直归因于数据质量

所以蒸馏完再上 LoRA 是不是双重压缩叠一起了

是的原文也提了这点,两次压缩都偏向高频低维模式,误差同向叠加不抵消

蒸馏底模再叠LoRA我们也糊过,两次压缩误差真同向叠加