RL 让大模型学会从上下文翻译没见过的语言
用 RL 加 chrF 奖励训练大模型照着上下文翻译,学到的是读上下文而非背语言。五种未见语言上平均 0.3335 chrF,SFT 只有 0.2300,跌破基座。
快速答案
这篇论文用强化学习训练大模型翻译它从没见过的语言,奖励只用一个表层指标 chrF,提示里塞进一包语言学上下文:词典、几句平行句、加语法书节选。关键是一组对比。五种完全没见过的语言上(Kalamang、Dinka、Wolof、Guarani、Kachin),Qwen3-4B-Base 的 RL 模型平均 0.3335 chrF,同一批数据做监督微调(SFT)只有 0.2300,而基座本身是 0.2255。也就是说,SFT 反而比没动过的基座还差。RL 学到读上下文这个元技能,SFT 把训练语言背了下来,丢了泛化。Llama-3.2-3B-Instruct 上格局一样(未见语言 RL 0.3020 对 SFT 0.2125)。
陷阱在另一栏:见过的罗曼什诸方言上排名反过来,SFT 0.6017,RL 0.5160。所以这不是 RL 打败 SFT,而是泛化和记忆的取舍,要哪个取决于目标语言在不在训练集里。
问题:靠背语言扩不动
低资源语言成千上万,大多没有平行语料。两种常规做法都过拟合。在目标语言上继续预训练能学会这门,换下一门就不灵。把语法书塞进上下文(MTOB 那套)对手头有书的那门管用,但模型把它当一次性的事,没学会读任意一本语法书。作者的说法是:模型要的是一个元技能,从上下文里提取并运用语言学知识,而不是背更多语言。
上下文这一包有五部分:语言学介绍;每个源词用最长公共子序列检索的两条词典释义;三到五句平行例句;两段约 2.8k token 的语法书节选;最后一句要求逐步元语言推理的指令。训练共 14 门语言:六种罗曼什方言加八门自带语法书的语言。评测分三档:见过的罗曼什、留出的同语族罗曼什、五门无关的未见语言。
为什么 RL 逼得出读上下文,SFT 不行
机制在于两种目标各自奖励什么。SFT 最大化标准译文似然。当训练集被罗曼什主导,捷径就是背罗曼什到德语的映射,而背好的映射不需要看提示里的词典和语法。于是 SFT 在见过的语言上分很高,却悄悄学会无视上下文。指向 Kachin 就无可依凭,只拿 0.0128 chrF,几乎是零。
chrF 奖励的 RL 不管走哪条路,输出对就给分。那些恰好查了词典和语法的 rollout 分更高,梯度就推着模型去查。奖励做得很薄,r = chrF / 100 缩放到 [0,1],用 GRPO 优化。有意思的是,一个表层 n-gram 指标竟足以让模型学到相当抽象的技能,作者据此认为基于结果的 RL 不止能用在数学和代码上,也能从上下文学语言。这与 Ctx2Skill 的”从上下文学技能”同向,只是钉在翻译任务上,用硬性外部奖励代替自博弈。
关键结果
- 未见语言(Qwen3-4B-Base,完整上下文): RL 平均 0.3335 chrF,SFT 0.2300,基座 0.2255。罗曼什上训的 SFT 到无关语言反而比基座更差。
- 逐语言看 SFT 崩得很明显: Dinka RL 0.2291 对 0.0506;Wolof 0.2253 对 0.0484;Guarani 0.2679 对 0.0639;Kachin 0.2715 对 0.0128;Kalamang 0.3464 对 0.2860。
- 见过的罗曼什(译德语)取舍反转: SFT 0.6017,RL 0.5160,基座 0.3413。
- 留出的同语族罗曼什: SFT 0.5464 对 RL 0.4785,比见过的语言差距窄。
- Llama-3.2-3B-Instruct 同格局: 未见 RL 0.3020 对 SFT 0.2125;见过 SFT 0.5577 对 RL 0.4765。不是 Qwen 独有。
- 撑起未见语言的是上下文: RL 只给任务指令时 0.1815,给完整上下文 0.3335。
哪一块上下文在出力
消融有个意外。词典才是出力的那块:去掉它,见过的语言掉约 8.4 chrF,Kalamang 跌到 0.4483。去掉语法书只掉约 0.75 chrF。那段 2.8k token 的昂贵语法节选,整个”照语法书翻译”叙事的核心,在好词典和几个例句之上几乎没贡献。去掉平行句对见过的语言影响很小,却让 Kalamang 掉 7.3 chrF,可见例句对真正陌生的语言最要紧。
第二个发现是时机。测试时有没有上下文,比训练时有没有更要命。RL 训练时从没见过检索的模型,推理时照样能用完整上下文(英译 Kalamang 约 0.28 chrF);反过来训练给足、测试不给,跌到 0.17。学到的更接近”用好推理时给你的任何上下文”。
局限与存疑
未见语言分数绝对值很低。0.33 chrF 是翻不通的译文,所以这是关于相对学习行为的结论,不是说低资源机器翻译被解决了。语法书消融戳了论文自己的叙事:去掉语法只掉不到 1 chrF,很难说模型在读语法描述,更像在靠词典和例句,作者也点了这点。chrF 是表层指标,把词典里的词按大致顺序拼出来就能拿分,不一定真懂,论文也没有 COMET 或人工评测。证据只覆盖两个小模型(4B 和 3B)和一条固定检索管线,没测更大模型,也没测换一种上下文格式这元技能还在不在。
常见问题
这个 RL 方法在翻译上真的比 SFT 强吗?
只在模型没训过的语言上强。五门未见语言 RL 平均 0.3335 chrF,SFT 0.2300,且 SFT 跌破基座。见过的罗曼什方言上 SFT 明显赢,0.6017 对 0.5160。这是泛化对记忆的结论:RL 学会读上下文、能迁移,SFT 背训练语言、在那儿分更高却丢了未见语言。
这个 RL 方法如何让模型用上语法书,SFT 却无视它?
SFT 最大化标准译文似然,在罗曼什主导的训练集上最省事的是背罗曼什映射,不需要上下文。chrF 奖励的 RL 不管路径,输出对就给分,查词典和例句的 rollout 拿分更多,梯度就强化去查。模型被推向元技能,而不是一张查找表。
这个 RL 翻译方法里,出力的是语法书那块吗?
不是,这才是意外。去掉语法书只让见过的语言掉约 0.75 chrF,去掉词典掉约 8.4,去掉平行句让 Kalamang 掉 7.3。词典和例句撑起结果,昂贵的语法节选加得很少,这让”照语法书翻译”的叙事不那么稳。它与 Ctx2Skill 的从上下文学技能同向,但用硬性 chrF 奖励和 GRPO,不用自博弈。
一句话:一个用便宜 chrF 奖励的 RL 目标,教大模型靠读上下文翻译没见过的语言,而不是背语言,五门未见语言 0.3335 对 SFT 的 0.2300,但出力的是词典而非语法书。阅读 arXiv 原文。