Appearance
Mid-Layer Inversion:中间层反演
- 来源:
noai-train/联合训练/Day3/T4 MidLayerInversion 侍正航 - 类型:NLP / LLM interpretability and security
- 原始资料:
PROBLEM.md、baseline.ipynb、metrics.py、Day3 ref/T4... - 题面完整性:完整
- 解法资料完整性:有多份参考 notebook,题解需结合论文和代码理解
题面大意
某公司把 Qwen3-0.6B 的 28 层 decoder 分为前后两段部署,前端输出 layer 14 入口 hidden state h14 给后端。题目扮演中间人攻击者:已截获若干段 h14,且拥有完整加固后模型权重,需要尽可能恢复原始 input_ids。每段长度固定 512,val/test 各 1000 段。提交两个 [1000,512] 的 long tensor,评分是逐 token 准确率。
数据特点
模型经过安全加固训练,使朴素地把每个位置 h14 映射回当前 token 的方法成功率下降;同时隐藏维度做过随机重排,不能假设与原版 Qwen3-0.6B 中间表示一致。测试段有 75% 真实 MiniPile 文本和 25% 本题模型自生成文本,并提供 is_self_gen 标签。辅助数据包括 10 段 (h14,input_ids) 样例和 500 段 MiniPile token。
考点
这是 LLM 安全和机制解释题。核心不是训练一个大型反演模型,而是利用已知后半模型、语言模型自回归约束、copy/induction head 机制和 hidden state 与 logits 的关系。加固削弱了局部 token probe,但完整序列中仍有大量上下文约束可利用。
涉及知识点
- Transformer decoder 手动前向。
- Logit lens / tuned lens 类思想。
- 语言模型 token 恢复与 beam search。
- Induction heads、copy behavior。
- LoRA/linear probe/多层 probe 反演。
- 自生成文本的 greedy 轨迹复现。
解法思路
一个基础路线是训练 probe:用样例和辅助语料通过前半模型生成 h14,构造 (h14, input_ids) 监督数据,训练线性层或小 MLP 预测每个位置 token。由于加固专门针对当前 token,这条路单独效果有限,但可以给候选集。
更强路线利用后半模型。对于候选 token 序列,如果把真实 h14 接入 layer14..27 + lm_head,后续 logits 应与真实文本语言分布一致。可以用局部候选、语言模型先验和后半模型打分做恢复。对 self-generated 段,已知前 16 token 来自 MiniPile prompt,后续由本题模型 greedy 生成;若能恢复 prompt 或从辅助语料匹配,就可复现大部分后续 token。
参考 notebook 名称暗示多种方法:next-token prediction、LoRA direct、LoRA cyclic、多层 probe。综合方案通常先用 probe/近邻给每个位置 top-k 候选,再用语言模型约束、copy 机制和自生成标记做序列级修正。
可选/多种解法
Linear / multilayer probe:快速,作为候选生成器。
LoRA 反演:在冻结模型上训练小参数模块,把 h14 映射到 token 或对齐隐状态。
NTP/语言模型修正:利用前文恢复后文,尤其适合自生成段。
近邻匹配:对真实 MiniPile 段,可在辅助语料或自己生成的 hidden 库中做相似检索。
特殊技巧
is_self_gen 应该分流处理。自生成段后 496 token 由模型 greedy 轨迹决定,只要前缀足够准确,后续可重新生成;真实文本段更依赖 probe 和语言先验。使用 bfloat16 权重即可,转 float32 浪费资源。位置长度固定 512,可以批量处理以控制 10 分钟时限。
调参优化
这题的调参目标是提升隐状态到 token 的可恢复性。若走最近邻/线性投影路线,重点调归一化方式、相似度度量、候选 top-k、温度和语言模型约束权重;若训练反演模型或 LoRA,重点调学习率、adapter rank、隐藏层宽度、dropout、teacher forcing 比例和最大生成长度。生成阶段可调 beam size、temperature、top-p 和重复惩罚,但要用题目指标验证,不应只看文本流畅度。由于中间层信息不完整,加入词表先验和上下文约束往往比盲目加大模型更有效。
注意事项
Qwen3 不需要 BOS,题目数据也不含 BOS。模型不是原版 Qwen3,不能用原版中间层表示直接对齐。提交 tensor shape/dtype 错误直接 0 分。由于安全加固专门削弱当前 token 泄露,单位置分类准确率可能误导,应看最终序列级 token accuracy。
推广意义
这题揭示“中间层表示不是安全边界”。即使隐藏状态经过加固,完整模型权重、上下文和语言先验仍可能泄露输入。它对拆分部署、隐私推理、模型水印和表示安全都有现实意义。