霍普金斯用置换密码测 ICL:双射比乱码高 7.6 点

ICL CIPHERS: Quantifying "Learning" in In-Context Learning via Substitution Ciphers

Zhouxiang Fang, Aayush Mishra, Muhan Gao, Anqi Liu, Daniel Khashabi

cs.CL

2025-04-28

约翰霍普金斯把 ICL 输入做词级置换密码:可逆双射比不可逆乱码在 Amazon 20-shot 上高 7.6 点,四数据集六模型上差距小但方向一致。

这篇在解决什么

上下文学习(In-Context Learning, ICL)被拆成两种工作方式:任务检索(task retrieval),靠预训练里见过的模式认出这是什么题;任务学习(task learning),当场从示范里学一个预训练没见过的输入-标签映射。后者才是「少样本就能上新任务」的那部分,但现成基准几乎都进过预训练,很难单独测。

已有做法主要改标签,把 positive/negative 换成数字或随机字母。输入仍是人能读的英文,模型仍可能从句法和提示结构把任务认回来。这篇改输入:用密码学里的置换密码把一部分 token 换成别的词,句子对人几乎不可读,同时用双射保证理论上仍可解。

方法

定义 token 级置换:按打乱比例 r 从词表里抽出一批 token,在示范和测试输入上替换。对比两条编码。

双射(Bijective):同一原词始终换成同一替代词,映射可逆。模型只要从示范里学到这份临时词典,就能还原任务。非双射(Non-Bijective):每次出现都从被打乱集合里均匀随机抽一个替代词,同一词两次出现会换成不同词,逆映射不存在。

量化「学习」的不是绝对准确率,是两条编码的准确率差。未加密的词还可能触发检索,所以两边共用同一批被替换 token,只改映射是否可逆。

实现上还有几处约束。按维基百科词频把词表分成 10 档,只在同频档内打乱(Zipfian shuffling),减少「模型更会处理高频词」的混淆。示范优先采样含测试样本被替换词的例子,让模型有机会见到相关映射。特殊 token 和标点不加密。打乱率太低几乎没效果,太高对模型和人都不可解,主实验落在中等 r。

评测用 SST-2、Amazon 情感分类,HellaSwag 四选一句补全,WinoGrande 代词消解。主模型是 Llama-3.1-8B、Qwen2.5-7B、OLMo-7B、Gemma-2-9B,另加 Instruct 和 70B。指标是准确率,三次运行平均。

结果

20-shot 下,多数设置双射高于非双射。Amazon(r=0.6)上 Llama-3.1-8B 从 64.7% 到 72.3%,差 7.6 点;Qwen2.5 +5.3,OLMo +3.0,Gemma-2 +4.2。SST-2(r=0.5)四模型差 3.7 到 5.0 点。HellaSwag 和 WinoGrande 打乱率更低,差距更小:Gemma-2 在 HellaSwag 上 -0.5,OLMo 在 WinoGrande 上 -0.3。

数据集打乱率Llama-3.1-8B 非双射双射(差值)
SST-20.558.3%63.1%(+4.8)
Amazon0.664.7%72.3%(+7.6)
HellaSwag0.329.7%31.9%(+2.2)
WinoGrande0.153.7%55.5%(+1.8)

示范数增加时,Amazon 上差距从 5-shot 的 4.7 点扩到 50-shot 的 10.1 点(72.5% 对 82.6%)。打乱率在 0.4 到 0.6 之间差值最大。指令微调后绝对准确率更高,70B 两边都更好,双射与非双射的差距没有跟着变大。只打乱名词时,HellaSwag 和 WinoGrande 上的差距与全词打乱接近。

Logit Lens 看中间层:双射条件下,随着同一替换在上下文里出现次数增加,深层更偏向替代词而非原词;非双射没有这种偏好。作者自己说趋势弱,方向对得上「模型在内部处理这份映射」。

为什么重要

对做 ICL 评测的人,这是一条比换标签更狠的污染控制:随机双射几乎不可能出现在预训练里,绝对分不再被当证据,差值才是。从业者不要指望用这份密码去提升线上 ICL,这是测量工具。结论也老实:差距小而稳定,说明现场学习存在,但在这种故意加难的编码上很弱。换标签测的是输出侧,这篇测输入侧,两者互补。

局限与存疑

作者承认三点。加密文本偏离自然语言,任务可能过难,小差距一部分来自难度本身。最大只测到 Llama-3.1-70B,没测 GPT-4 或 Gemini。可解释性试过 PatchScope,只有 Logit Lens 出了信号。另外,主实验用优先采样,专门把含被替换词的示范喂给模型,这比随机抽示范更帮一把。双射也不要求解完整张映射,抓住情感这类属性就够,所以差值更接近「有没有学到与任务相关的替换规律」,不是密码学意义上的完全破译。未加密 token 仍可能泄漏任务类型,差值是相对量,不是纯学习。

术语

原文与代码

社区讨论

相关论文

全部论文解读